Presented By:
Mrs. R.Nancy Beaulah,
Asst. Professor,
Dept. of Computer Science (SF),
V.V.Vanniaperumal College for Women (Autonomous),
Virudhunagar.
 Requirements to specify goals & Requirements
 Concise Statement of the problem
 Constraints exists for its solution
 Goals are targets for achievement.
 Goals apply both to development process and
Work products.
 Goals can be either qualitative or
quantitative.
 A Qualitative Process goal:
 The development process should enhance the
professional skills of quality assurance personnel.
 A Quantitative Process goal:
 The system should be delivered with in 12 months.
 A Qualitative Product goal:
 The system should make user’s jobs more interesting.
 A Quantitative Product goal:
 The system should reduce the cost of a transaction by
25 percent.
 Goals common to all Project & Product:
 Every project should be useful, reliable,
understandable and cost-effective.
 Every development process should deliver work
products with in time and cost estimates.
 It should provide a opportunity to develop new
skills for the project personnel.
 Some other goals like transportability, early
delivery of subset capabilities and ease of use
depends on the project.
 Requirements specify the capabilities
provided by the software to solve the
problem.
 Requirements include
 Functional Requirements
 Performance Requirements
 Requirements for the hardware, software,
firmware and interfaces.
 Requirements specify the development
standards to both project and product.
 Phase accuracy shall be with in 0.5 degrees.
 Response to external interrupts shall be 0.25
seconds maximum.
 System shall reside in 50k bytes of primary
memory, excluding buffers.
 System shall be fully operational 95% of each
24 hour period.
 Whenever possible requirements must be
quantified and can be used during acceptance
testing.
 Accuracy shall be sufficient to support
mission.
 System shall provide real time response.
 System shall make efficient use of primary
memory.
 System shall be 99% reliable.
 The requirements said above are meaningless
and often results in misunderstandings and
disagreements between developers and
customers.
 It is difficult to specify the quantitative
requirements during planning phase.
 At that stage it is not clear what is needed to
solve the problem or what can be achieved
within solution constraints.
 But efforts should be taken to specify
quantitative requirements and methods to
verify that.
 High level goals and requirements are often
expressed in terms of quality attributes.
 This can be translated in to specific
requirements for any problem.
 Example:
 Reliability can be expressed in terms of source
code accuracy, robustness, completeness and
consistency.
 High level acceptance criteria should be
specified during planning phase.
 Lack of clearly stated quantified acceptance
criteria leads to major misunderstanding
between the developer and customer.
 Acceptance criteria should be specified in
terms of inspections, analysis and tests
performed on the work products.
 Each requirements should be specified along
with the methods used to verify it.
 The goal of delivering product in time can be
expressed in terms of series of Milestones.
 A milestone is a significant event in software
product life cycle.
 Examples of Milestones are completion of
requirement analysis, completion of design
and integration and successful testing of
components.
 Consideration of these issues leads to Life
Cycle Models.
 Software EngineeringConcepts, Richard
Fairley

Defining the Problem - Goals and requirements

  • 1.
    Presented By: Mrs. R.NancyBeaulah, Asst. Professor, Dept. of Computer Science (SF), V.V.Vanniaperumal College for Women (Autonomous), Virudhunagar.
  • 2.
     Requirements tospecify goals & Requirements  Concise Statement of the problem  Constraints exists for its solution  Goals are targets for achievement.  Goals apply both to development process and Work products.  Goals can be either qualitative or quantitative.
  • 4.
     A QualitativeProcess goal:  The development process should enhance the professional skills of quality assurance personnel.  A Quantitative Process goal:  The system should be delivered with in 12 months.  A Qualitative Product goal:  The system should make user’s jobs more interesting.  A Quantitative Product goal:  The system should reduce the cost of a transaction by 25 percent.
  • 5.
     Goals commonto all Project & Product:  Every project should be useful, reliable, understandable and cost-effective.  Every development process should deliver work products with in time and cost estimates.  It should provide a opportunity to develop new skills for the project personnel.  Some other goals like transportability, early delivery of subset capabilities and ease of use depends on the project.
  • 6.
     Requirements specifythe capabilities provided by the software to solve the problem.  Requirements include  Functional Requirements  Performance Requirements  Requirements for the hardware, software, firmware and interfaces.  Requirements specify the development standards to both project and product.
  • 7.
     Phase accuracyshall be with in 0.5 degrees.  Response to external interrupts shall be 0.25 seconds maximum.  System shall reside in 50k bytes of primary memory, excluding buffers.  System shall be fully operational 95% of each 24 hour period.  Whenever possible requirements must be quantified and can be used during acceptance testing.
  • 8.
     Accuracy shallbe sufficient to support mission.  System shall provide real time response.  System shall make efficient use of primary memory.  System shall be 99% reliable.  The requirements said above are meaningless and often results in misunderstandings and disagreements between developers and customers.
  • 9.
     It isdifficult to specify the quantitative requirements during planning phase.  At that stage it is not clear what is needed to solve the problem or what can be achieved within solution constraints.  But efforts should be taken to specify quantitative requirements and methods to verify that.
  • 10.
     High levelgoals and requirements are often expressed in terms of quality attributes.  This can be translated in to specific requirements for any problem.  Example:  Reliability can be expressed in terms of source code accuracy, robustness, completeness and consistency.
  • 11.
     High levelacceptance criteria should be specified during planning phase.  Lack of clearly stated quantified acceptance criteria leads to major misunderstanding between the developer and customer.  Acceptance criteria should be specified in terms of inspections, analysis and tests performed on the work products.  Each requirements should be specified along with the methods used to verify it.
  • 12.
     The goalof delivering product in time can be expressed in terms of series of Milestones.  A milestone is a significant event in software product life cycle.  Examples of Milestones are completion of requirement analysis, completion of design and integration and successful testing of components.  Consideration of these issues leads to Life Cycle Models.
  • 13.