Chapter 6 Requirements Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Introduction • Requirement Management is a systematic approach to: – Eliciting, organizing, and documenting the requirements of the system – Establishing and maintaining agreement between the customer and the project team on the system’s changing requirements • Requirement Artifacts – Use Case Model – Supplementary Specification – Glossary Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Requirements and Iterative Development Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Requirements Overview • Two workflow details: 1. Define the System – The scope of the system is established and documented in the use-Case Model – Concentrates on the requirements “big Picture” 2. Refine the System Definition – Concentrates on the details of the Use Cases being addressed in the current iteration, and on refining the overall system definition, where neccessary Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Requirement Discipline Overview Diagram Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Workflow detail: Define the system • Objectives: – To initially define what is to be included in the system, and what is not – Activity: • • • • Capture a Common Vocabulary Find Actors and Use Cases Prioritize Use Case Review the requirements Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Define the System Workflow Detail Overview Diagram Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Capture a Common Vocabulary • Overview: – To define a common vocabulary that is used during the development of the system • Input Artifacts: – Use-case Model – Vision • Resulting Artifacts: – Glossary • Steps: – Identify Common Terms Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Find Actors and Use Cases • Overview: – To define the scope of the system by describing • what will be handled by the system • what will be handled outside the system • Who and what will interact with the system • Input Artifacts: – Glossary – Use-case Modeling Guidelines – Vision • Resulting Artifacts: – Supplementary Specifications – Use Case Model Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Find Actors and Use Cases (2) • Steps: – – – – – Find actors Find use cases Collect supplementary requirements Describe how actors and use Cases Interact Package Use Cases and Actors Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Online Auction Application Actors Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 “Actors” Package in the Use Case Model Structure Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 “Use Cases” Package in the Use Case Model Structure Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Interaction between Initial Actors and Use Cases in the Online Auction Application Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Prioritize use Cases • Overview: – To define the relative priority of the Use Cases, which then drives the content and planning of the iterations • Input Artifacts: – – – – Risk List Software Architecture Document Use-case Model Vision • Resulting Artifacts: – Use Case Priority List – Software Architecture Document • Steps: – Prioritize the Use Cases – Update the Software Architecture Document Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Review the Requirements • Overview: – To review the common terms, system scope, and relative priorities before detailing the system requirements • Input Artifacts: – – – – – – – Glossary Risk List Supplementary specification Use-case Model Use-case Modeling Guidelines Use Case priority List Vision • Resulting Artifacts: – Change Request – Review Record • Steps: Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 – Conduct the Review Workflow detail: Refine the System Definition • Objectives: – Refining the initial system definition to gain a deeper understanding of the requirements – Primary Output: • A detailed set of Use Cases • A refined Supplementary Specification • (possibly) A restructured Use-Case Model Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Refine the System Definition Workflow Detail Overview Diagram Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Detail a Use Cases • Overview: – To add a detailed content to the use-case description • Input Artifacts: – – – – – Glossary Supplementary Specification Use-case Model Use-case Modeling Guidelines Vision • Resulting Artifacts: – Supplementary Specifications – Use Case Model Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Detail a Use Cases (2) • Steps: – Detail the flows of events of the use cases – Describe the special requirements of the use case – Describe preconditions of the use case – Describe postconditions of the use case Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Use Cases Specification in the Use Case Model Structure Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 “Close Auction” Use Case Local Use Case Diagram Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Structure the Use Case Model • Overview: – To extract common, optional, and exceptional behavior from existing Use Cases and create new Use Cases – Additional actors may also be identified – This activity is optional • Input Artifacts: – – – – Glossary Supplementary Specification Use-case Model Use-case Modeling Guidelines Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Structure the Use Case Model (2) • Resulting Artifacts: – Use Case Model • Steps: – Structure the Use Cases – Structure the Actors Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 An Include Relationship Between Use Cases Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 An Extend Relationship Between Use Cases Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Generalized Actor in the Online Auction Application Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098 Activity: Review the Requirements • Overview: – To review the detailed requirements before moving on to the analysis of these requirements • Input Artifacts: – – – – – Glossary Supplementary specification Use-case Model Use-case Modeling Guidelines Vision • Resulting Artifacts: – Change Request – Review Record • Steps: – Conduct the Review Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared by Agus Widodo D2098