250 likes | 264 Views
Learn how effective requirements management is crucial for software project success, with only 16.2% projects being successful. Discover a rational approach, key skills, and tools such as RequisitePro for analyzing, understanding, defining, refining, and managing changing requirements to ensure project goals are met. Develop a systematic approach to elicit, organize, document, and manage evolving project requirements effectively. Dive into the Rational Unified Process (RUP) for comprehensive guidance on requirements management. References provided for further study on requirements management best practices.
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.