Jouhayna Al-Ayoubi Jouhayna Al-Ayoubi SWEN 5230 – Software SWEN 5230 – Software Project Management Project Management
Jouhayna Al-AyoubiJouhayna Al-Ayoubi
SWEN 5230 – Software Project SWEN 5230 – Software Project ManagementManagement
Requirements ManagementRequirements Management
Success Starts with Requirements Success Starts with Requirements ManagementManagement
Software CrisisSoftware Crisis
CHAOS report indicates only a distinct CHAOS report indicates only a distinct minority of software projects is completed minority of software projects is completed on time and under budgeton time and under budget– Successful projects are only 16.2%Successful projects are only 16.2%– Challenged projects accounted for 52.7%Challenged projects accounted for 52.7%– Impaired projects accounted for 31.1%Impaired projects accounted for 31.1%
Causes of Software CrisisCauses of Software Crisis
Failures attributed to poor requirements Failures attributed to poor requirements managementmanagement– Incorrect definition of requirementsIncorrect definition of requirements– Poor management throughout development Poor management throughout development
lifecyclelifecycle
Solution to Software CrisisSolution to Software Crisis
Effective requirements management! Effective requirements management! – The factor most related to successful projectsThe factor most related to successful projects– Ensures right problem is solvedEnsures right problem is solved– Ensures right system is builtEnsures right system is built
Requirements ManagementRequirements Management
A systematic approach toA systematic approach to– ElicitingEliciting– OrganizingOrganizing– DocumentingDocumenting– And managing And managing the changing requirements of a software projectthe changing requirements of a software project
Not a new concept!Not a new concept!
Rational Approach to Rational Approach to Requirements ManagementRequirements Management
Rational provides complete solution to Rational provides complete solution to requirements managementrequirements management– Rational Unified Process(RUP)Rational Unified Process(RUP)
» Recommends specific requirements management Recommends specific requirements management skillsskills
» Provides specific guidelines to effectively Provides specific guidelines to effectively implement skillsimplement skills
– Tools to automate these skills Tools to automate these skills » RequisitePro,RequisitePro, Rose, ClearCase Rose, ClearCase
Requirements Management SkillsRequirements Management Skills
Six essential management skills:Six essential management skills:– Analyze the problem.Analyze the problem.– Understand the user needs.Understand the user needs.– Define the system.Define the system.– Manage the scope of the system.Manage the scope of the system.– Refine the system definitionRefine the system definition– Manage the changing requirementsManage the changing requirements
Requirements Management in Requirements Management in RUPRUP
Requirements Requirements management skills management skills implemented in the implemented in the requirements core-requirements core-workflowworkflow
Considered workflowsConsidered workflows
Analyze the ProblemAnalyze the Problem
Purpose is to:Purpose is to:– Gain an agreement on system features and Gain an agreement on system features and
goalsgoals– Develop Vision document for the projectDevelop Vision document for the project
The key artifacts produced in the workflow:The key artifacts produced in the workflow:– Vision documentVision document– Requirement management plan for the projectRequirement management plan for the project– GlossaryGlossary
Understand the User NeedsUnderstand the User Needs
Purpose is to:Purpose is to:– Collect information from the various Collect information from the various
stakeholders of the projectstakeholders of the project– Use different elicitation techniques to elicit Use different elicitation techniques to elicit
requestsrequests
Understand the User NeedsUnderstand the User Needs
The key artifacts produced in the workflow:The key artifacts produced in the workflow:– Refined vision documentRefined vision document– Initial Use case modelInitial Use case model– Supplementary specificationsSupplementary specifications– Refined glossaryRefined glossary
Define the System Define the System
Purpose is to:Purpose is to:– Ensure that all project team members Ensure that all project team members
understand the systemunderstand the system– Perform high-level analysis on the results Perform high-level analysis on the results
collected in previous workflowscollected in previous workflows– Formally document resultsFormally document results
Define the System Define the System
The key artifacts produced in the workflow:The key artifacts produced in the workflow:– Refined vision documentRefined vision document– Refined use case modelRefined use case model– Refined Supplementary specificationsRefined Supplementary specifications– Refined glossaryRefined glossary
Manage the Scope of the SystemManage the Scope of the System
Purpose is to:Purpose is to:– Define the set of requirements to be included in Define the set of requirements to be included in
this version of the systemthis version of the system– Define a set of architecturally-significant Define a set of architecturally-significant
features and uses casesfeatures and uses cases– Define attributes and traceability to help Define attributes and traceability to help
prioritize requirementsprioritize requirements
Manage the Scope of the SystemManage the Scope of the System
The key artifacts produced in the workflow:The key artifacts produced in the workflow:– Iteration planIteration plan– Refined vision documentRefined vision document– Refined glossaryRefined glossary
Refine the SystemRefine the System
Purpose is to:Purpose is to:– Provide a more in-depth understanding of the Provide a more in-depth understanding of the
system’s features system’s features – Provide detailed descriptions of use casesProvide detailed descriptions of use cases– Model and prototype user interfacesModel and prototype user interfaces
Refine the SystemRefine the System
The key artifacts produced in the workflow:The key artifacts produced in the workflow:– User-interface prototypeUser-interface prototype– Detailed use case modelDetailed use case model– Revised iteration planRevised iteration plan– Refined visionRefined vision– Refined glossaryRefined glossary
Manage Changing RequirementsManage Changing Requirements
Purpose is to:Purpose is to:– Control and manage changeControl and manage change– Set up appropriate requirements attributes and Set up appropriate requirements attributes and
traceabilitiestraceabilities
Tool Support - RequisiteProTool Support - RequisitePro
Easy to use requirements management toolEasy to use requirements management tool Leverages the power of database with the Leverages the power of database with the
freedom of Wordfreedom of Word Multi-user supportMulti-user support Provides distributed access to projects via Provides distributed access to projects via
its Web interfaceits Web interface Provides document templates and capability Provides document templates and capability
to import existing documentsto import existing documents
RequisitePro Manages RequisitePro Manages RequirementsRequirements
Define System – templates, import Define System – templates, import capability, requirement and document typescapability, requirement and document types
Manage scope – Traceability matrix and Manage scope – Traceability matrix and tree, attribute typestree, attribute types
Manage change – Suspect links, group Manage change – Suspect links, group discussions, revision historydiscussions, revision history
Why Manage Requirements?Why Manage Requirements?
Meeting the project’s requirements defines Meeting the project’s requirements defines success!success!
Why Rational Approach?Why Rational Approach?
Rational provides a more disciplined Rational provides a more disciplined approach to requirements management.approach to requirements management.– Does not only tell organizations what to do, Does not only tell organizations what to do,
provides assistance on how to do itprovides assistance on how to do it Rational dedicated the last few years to Rational dedicated the last few years to
requirements managementrequirements management
ReferencesReferences
1. Davis, Alan, Leffingwell, Dean. Using Requirements Management 1. Davis, Alan, Leffingwell, Dean. Using Requirements Management to Speed Delivery of Higher Quality Applications. Rational Web Site. to Speed Delivery of Higher Quality Applications. Rational Web Site. On-line at On-line at http://www.rational.com/products/http://www.rational.com/products/whitepaperswhitepapers..
2. Kruchten, Philippe. The Rational Unified Process: An 2. Kruchten, Philippe. The Rational Unified Process: An Introduction, Second Edition. Reading MA: Addison Wesley Introduction, Second Edition. Reading MA: Addison Wesley Longman, October 2000, pp.155-169.Longman, October 2000, pp.155-169.
3. Leffingwell, Dean. A Field Guide to Effective Requirements 3. Leffingwell, Dean. A Field Guide to Effective Requirements Management under SEI’s Capability Maturity Model. Rational Web Management under SEI’s Capability Maturity Model. Rational Web Site. On-line at Site. On-line at http://www.rational.com/products/http://www.rational.com/products/whitepaperswhitepapers..
ReferencesReferences
44. . Leffingwell, Dean. Managing Software Requirements: A Unified Leffingwell, Dean. Managing Software Requirements: A Unified Approach. Reading MA: Addison Wesley Longman, November 2000.Approach. Reading MA: Addison Wesley Longman, November 2000.
5. Oberg, Roger. Applying Requirements with Use Cases. Rational 5. Oberg, Roger. Applying Requirements with Use Cases. Rational Web Site. On-line at Web Site. On-line at http://www.rational.com/products/http://www.rational.com/products/whitepaperswhitepapers..
6. Parackel, Thomas. Managing Requirements in a Development 6. Parackel, Thomas. Managing Requirements in a Development Cycle. IWD Web Site. On-line at Cycle. IWD Web Site. On-line at http://www.http://www.indiawebdevelopersindiawebdevelopers.com/articles.com/articles..
7. Rational RequisitePro. Rational Web Site. On-line at 7. Rational RequisitePro. Rational Web Site. On-line at http://www.rational.com/products/http://www.rational.com/products/reqproreqpro..
8. Royce, Walker. Software Project Management: A Unified 8. Royce, Walker. Software Project Management: A Unified Framework. Reading MA: Addison Wesley Longman, December Framework. Reading MA: Addison Wesley Longman, December 1999, pp.118-124.1999, pp.118-124.