Requirements Engineering Indri Sudanawati Rozas Juni 2012
Dec 16, 2014
RequirementsEngineering
Indri Sudanawati Rozas
Juni 2012
Activities?
Feasibilitystudy
Requirementselicitation and
analysisRequirementsspecification
Requirementsvalidation
Feasibilityreport
Systemmodels
User and systemrequirements
Requirementsdocument
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.