250 likes | 427 Views
Jouhayna Al-Ayoubi. SWEN 5230 – Software Project Management. Requirements Management. Success Starts with Requirements Management. Software Crisis. CHAOS report indicates only a distinct minority of software projects is completed on time and under budget Successful projects are only 16.2%
E N D
Jouhayna Al-Ayoubi SWEN 5230 – Software Project Management
Requirements Management Success Starts with Requirements Management
Software Crisis • CHAOS report indicates only a distinct minority of software projects is completed on time and under budget • Successful projects are only 16.2% • Challenged projects accounted for 52.7% • Impaired projects accounted for 31.1%
Causes of Software Crisis • Failures attributed to poor requirements management • Incorrect definition of requirements • Poor management throughout development lifecycle
Solution to Software Crisis • Effective requirements management! • The factor most related to successful projects • Ensures right problem is solved • Ensures right system is built
Requirements Management • A systematic approach to • Eliciting • Organizing • Documenting • And managing the changing requirements of a software project • Not a new concept!
Rational Approach to Requirements Management • Rational provides complete solution to requirements management • Rational Unified Process(RUP) • Recommends specific requirements management skills • Provides specific guidelines to effectively implement skills • Tools to automate these skills • RequisitePro, Rose, ClearCase
Requirements Management Skills • Six essential management skills: • Analyze the problem. • Understand the user needs. • Define the system. • Manage the scope of the system. • Refine the system definition • Manage the changing requirements
Requirements Management in RUP • Requirements management skills implemented in the requirements core-workflow • Considered workflows
Analyze the Problem • Purpose is to: • Gain an agreement on system features and goals • Develop Vision document for the project • The key artifacts produced in the workflow: • Vision document • Requirement management plan for the project • Glossary
Understand the User Needs • Purpose is to: • Collect information from the various stakeholders of the project • Use different elicitation techniques to elicit requests
Understand the User Needs • The key artifacts produced in the workflow: • Refined vision document • Initial Use case model • Supplementary specifications • Refined glossary
Define the System • Purpose is to: • Ensure that all project team members understand the system • Perform high-level analysis on the results collected in previous workflows • Formally document results
Define the System • The key artifacts produced in the workflow: • Refined vision document • Refined use case model • Refined Supplementary specifications • Refined glossary
Manage the Scope of the System • Purpose is to: • Define the set of requirements to be included in this version of the system • Define a set of architecturally-significant features and uses cases • Define attributes and traceability to help prioritize requirements
Manage the Scope of the System • The key artifacts produced in the workflow: • Iteration plan • Refined vision document • Refined glossary
Refine the System • Purpose is to: • Provide a more in-depth understanding of the system’s features • Provide detailed descriptions of use cases • Model and prototype user interfaces
Refine the System • The key artifacts produced in the workflow: • User-interface prototype • Detailed use case model • Revised iteration plan • Refined vision • Refined glossary
Manage Changing Requirements • Purpose is to: • Control and manage change • Set up appropriate requirements attributes and traceabilities
Tool Support - RequisitePro • Easy to use requirements management tool • Leverages the power of database with the freedom of Word • Multi-user support • Provides distributed access to projects via its Web interface • Provides document templates and capability to import existing documents
RequisitePro Manages Requirements • Define System – templates, import capability, requirement and document types • Manage scope – Traceability matrix and tree, attribute types • Manage change – Suspect links, group discussions, revision history
Why Manage Requirements? • Meeting the project’s requirements defines success!
Why Rational Approach? • Rational provides a more disciplined approach to requirements management. • Does not only tell organizations what to do, provides assistance on how to do it • Rational dedicated the last few years to requirements management
References • 1. Davis, Alan, Leffingwell, Dean. Using Requirements Management to Speed Delivery of Higher Quality Applications. Rational Web Site. On-line at http://www.rational.com/products/whitepapers. • 2. Kruchten, Philippe. The Rational Unified Process: An Introduction, Second Edition. Reading MA: Addison Wesley Longman, October 2000, pp.155-169. • 3. Leffingwell, Dean. A Field Guide to Effective Requirements Management under SEI’s Capability Maturity Model. Rational Web Site. On-line at http://www.rational.com/products/whitepapers.
References • 4. Leffingwell, Dean. Managing Software Requirements: A Unified Approach. Reading MA: Addison Wesley Longman, November 2000. • 5. Oberg, Roger. Applying Requirements with Use Cases. Rational Web Site. On-line at http://www.rational.com/products/whitepapers. • 6. Parackel, Thomas. Managing Requirements in a Development Cycle. IWD Web Site. On-line at http://www.indiawebdevelopers.com/articles. • 7. Rational RequisitePro. Rational Web Site. On-line at http://www.rational.com/products/reqpro. • 8. Royce, Walker. Software Project Management: A Unified Framework. Reading MA: Addison Wesley Longman, December 1999, pp.118-124.