Introduction to Requirements (Chapters 1-3 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman Institute.
Published byModified over 4 years ago
Presentation on theme: "Introduction to Requirements (Chapters 1-3 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman Institute."— Presentation transcript:
Introduction to Requirements (Chapters 1-3 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman Institute of Technology September 2, 2004 Thanks to Mark Ardis for some of the slides included.
Outline Requirements and the Cost of Errors Requirements Management Software Lifecycle Process Models
Biggest Reasons for Project Success and Failure Project Success –User involvement –Executive management support –Clear statement of requirements Project Failure –Lack of user input –Incomplete requirements –Changing requirements
Defects by Development Phase Requirements – 31% of Defects on Final Product Delivery Design – 25% Coding – 12% Documentation – 16% Bad fixes – 16%
6 Cost to Fix Errors Requirements Design Coding Unit Test Acceptance Test Maintenance 1 5 25 50 125 500
7 So… Requirements errors are likely to be the most common class of error Requirements errors are likely to be the most expensive to fix
9 What is a Software Requirement? 1.A software capability needed by the user to solve a problem to achieve an objective 2.A software capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification or other formally imposed documentation [according to Dorfman and Thayer]
10 What is Software Requirements Management? The process of systematically, eliciting, organizing and documenting requirements for the software system, and a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system.
Advantages Much better than chaos! Staged deliverables are possible Can modify model to allow for feedback Clearly defined stages help with –planning, scheduling –management, organization –accountability, control
Disadvantages Not very practical (do not know requirements in the beginning) No feedback, provision for modification Customer sees nothing until last step
16 Spiral Model Incremental –more feedback from customer Risk analysis –more rigorous analysis of risk at each stage
18 Iterative (or Incremental) Approach Consists of four phases –Inception –Elaboration –Construction –Transition An iteration is a sequence of activities with an established plan and evaluation criteria, resulting in an executable of some type Each phase goes under a # of iterations
Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Phases Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration Mgmt Requirements ElaborationTransitionInceptionConstruction Workflows group activities logically In an iteration, you walk through all workflows Process Workflow Support Workflow Rational Unified Process Model
20 Team Project Process Waterfall model for this course You may pick which model to use in CSSE 372 for implementation of the project