Detailing Requirements with Requisite Pro Month Day, Year Agenda Training Plan Overview Review UCs & ADs Detailing Requirements with Requisite Pro Concepts Setting Up XDE Integration Associating other requirements Creating views Review Homework Next Steps Training Plan Overview Introduction Using Rational Administrator Using ClearCase Using ClearQuest Using Rational Rose XDE Identifying & Creating Use-Cases – Part 1 Identifying & Creating Use-Cases – Part 2 Detailing Requirements with RequisitePro Actors and Use-Case Diagrams Sequence and Statechart Diagrams Collaboration and Class Diagrams Integration and Development with the .NET Framework Review – UCs and ADs Models Business Business Analysis Use-Case Analysis Design Implementation Deployment Packages – used to organize the models Logical breakdown of model elements Supports model management Review – UCs and ADs Use Cases Describes activities 5 basic types of diagrams • Use-Case • Activity • State • Sequence • Collaboration Text Requirements Other Media Review – UCs and ADs Identifying Use Cases - Analysis Steps Identification Create a new package, use case, and related diagrams for the identified sub-use case Organization • Hierarchy – Levels of Abstraction Activity Diagram Definition: Defines the workflow associated with the use case • Context • Detail Review – UCs and ADs Activity Diagram Model Elements Start State End State Activity Decision State Transition • Regular • Transition To Self Horizontal and Vertical Synchronization Note Note Anchor Text Review – UCs and ADs Activity Diagrams Types • • • • Regular With States With Swimlanes With Object Flows Model Elements Events Actions Stereotypes Conditional Threads Guard Conditions History States Nested Activities Transitions to Self Decision Guards States Decision Merges Review – UCs and ADs Review – UCs and ADs Review – UCs and ADs States Defines a condition of an object in which it performs some activity or waits for an event Review – UCs and ADs Swimlanes Allow assignment of activities to the organizational units or roles Review – UCs and ADs Object Flows Used to show how business entities are created and used in a workflow Review – The Models Business Use-Case Model Describes processes of a business as a number of different business use cases, each of which represents a specific workflow in the business • Business use-case describes the performance of a sequence of actions that produces a valuable result to a particular business actor Business Analysis Model Describes how business use-cases are realized within the business object model, in terms of collaborating objects Use-Case Model Describes processes of a system as a number of different use cases, each of which represents a specific workflow in the system • Use-case describes the performance of a sequence of actions with a system that produces a valuable result to a particular actor Analysis Model Describes how use-cases are realized within the system object model, in terms of collaborating objects RequisitePro - Benefits Manage project requirements comprehensively Promotes communication and collaboration among team members Reduces project risk RequisitePro - Features Tool combing power of a database and Microsoft Word. Requirements documents that are dynamically linked to a database Powerful sort and query capabilities Requirements Organize Prioritize Trace relationships Manage requirement change • Track changes – Captures the change history for each requirement – Paper audit • Visually indicate how changes affect the project Perform real-time impact analysis Informed decisions • Scope management • Resource allocation RequisitePro - Basic Concepts Requirements Management Plan Guidelines for establishing the requirements • Documents • Requirement Types • Attributes • Traceability RequisitePro - Basic Concepts Requirements A condition or capability to which a system must conform FURPS+ model • • • • • Functionality Usability Reliability Performance Supportability • • • • Design constraints Implementation requirements Interface requirements Physical requirements. RequisitePro - Basic Concepts Requirement Types Features Use-cases Supplementary Specifications Requirement Attributes Priority Status Stability Document Types Glossary Vision Statement Use-cases Views Attribute Matrix Traceability Matrix Traceability Tree RequisitePro - Basic Concepts Requirement Types Use-Case • • • • Stakeholder Request Feature Supplementary Glossary Item RequisitePro - Basic Concepts Attribute Types Feature • • • • • • • • • • • • • Priority Type Status Difficulty Stability Risk Planned Iteration Actual Iteration Origin Contact Name Enhancement Request Defect Obsolete Stakeholder Request • Priority • Origin Glossary • None RequisitePro - Basic Concepts Attribute Types Supplementary • • • • • • • • • • Priority Status Difficulty Stability Risk Origin Contact Name Enhancement Request Defect Obsolete Use-Case • • • • • • • • • • • • • Property Priority Status Difficulty Stability Risk Affects Architecture Contact Name Planned Iteration Actual Iteration Enhancement Request Defect Obsolete RequisitePro - Basic Concepts Document Types Vision • Overall view of the system – – – – Main characteristics Major features Key stakeholder needs Key services provided Glossary • Consistent terms to express requirements Use-Case Specification • Functional requirements in sequence – Sequence of actions performed by a system that yields an observable result of value to a particular actor – Functional software requirements Supplementary Requirement Specification • Requirements that cannot be tied directly to any specific use case • Nonfunctional requirements • Design constraints Test Plan RequisitePro - Basic Concepts Views Attribute Matrix • Requirement vs. Attribute – Illustrates the relationships between requirements and their attributes RequisitePro - Basic Concepts Views Traceability Matrix • Requirement vs. Requirement – Illustrates the relationships between requirements of the same or different types RequisitePro - Basic Concepts Views Traceability Tree • Requirement vs. Requirement – Displays all internal and external requirements traced to or from a requirement RequisitePro - Advance Features Archiving Baselining Identifies activities and one version of every element visible in one or more components Created at project milestones Cross-Project Traceability Establish traceability between requirements that reside in different projects Manage requirements common to multiple projects Discussion Groups RequisitePro – Create Database Start RequisitePro Select New tab Select Use Case Template and click OK. RequisitePro – Create Database The Rational RequisitePro Project Properties dialog appears. Enter “ClassProject1” in the Name box. Enter “C:\Program Files\Rational\Requisite Pro\Projects\ClassProje ct1” in the Directory edit box. Select “MS Access” as the Database type from the drop down list. Enter “Class project” in the Description edit box. Click OK Click Yes Close RequisitePro RequisitePro – Associate Model Start XDE Open model Right click in Model Explorer, select AppliedProfiles, click the eclipses (…), and checkmark the RequisitePro profile Select Tools, Rational RequisitePro, Associate Model RequisitePro – Associate Model Associate Model To RequisitePro Project dialog opens • Click Browse next to the Project File field RequisitePro – Associate Model Browse to RequisitePro project file with .rqs file extension Select the file Click Open RequisitePro – Associate Model Select Use Case Specification from Default Document Type drop down list Select Use Case from Default Requirement Type drop down list Click OK RequisitePro – Create Association Right click a use-case Select RequisitePro, New Association Select RequisitePro, Association Requirement A Requirement Properties dialog appears with the Attribute tab selected • Select values from the attribute drop down lists RequisitePro – Create Association Select the General tab • Use-Case Name displayed in Text edit box – Enter additional text, graphics, and objects that are included as part of the requirement, up to 16,000 characters • Enter the Name – Use the use-case name Click OK RequisitePro – Edit Association Right click a use-case Select Requirement Properties, Open The Requirement Properties dialog appears with the Attribute tab selected Select tabs and edit as necessary Click OK RequisitePro – View Association Right click a use-case Select View RequisitePro Association The RequisitePro Association dialog appears Click OK RequisitePro – Other Requirements Stakeholder Requests Any type of requests a stakeholder might have on the system to be developed or any type of external parameter to which the system must comply • Results of stakeholder interviews • Results from requirements elicitation sessions and workshops • Change Request • Statement of work • Request for proposal • Mission statement • Problem statement • Business rules • Laws and regulations • Legacy systems • Business models RequisitePro – Other Requirements Features Abilities based on the benefits listed in your problem statements Examples • FEATURE1: Ability to save and restore sort and filter criteria • FEATURE2: Ability to save a RequisitePro document as a Microsoft® Word® document. • FEATURE3: Ability to see deleted requirements in a view window. RequisitePro – Other Requirements Supplementary Specifications System requirements that are not readily captured in behavioral requirements artifacts such as use-case specifications • Legal and regulatory requirements, and application standards • Quality attributes of the system to be built, including usability, reliability, performance, and supportability requirements • Other requirements such as those for operating systems and environments, compatibility with other software, and design constraints RequisitePro – Other Requirements Glossary Provide a consistent set of definitions • Analysts – Project-specific terms – Clearly define business rules – Ensure that requirement specifications make correct and consistent use of those terms • Developers – Terms defining defining the design and implementation classes, database tables, user-interfaces… • Course developers and technical writers – Training material and documentation using recognized terminology RequisitePro – New Requirements Business Goal Describe the desired value of a particular measure at some future point in time and can therefore be used to plan and manage the activities of the business Attributes • Property Name • Brief Description • UML Representation Business Rule Define a specific constraint or invariant that must be satisfied by the business • May apply always (invariants) or only under a specific condition – If the condition occurs, the rule becomes valid, and must therefore be complied with. • Do not conflict • Present an accurate picture of the principles that govern the way business is done Attributes • Structural Constraints • Behavioral Constraints RequisitePro – New Requirements Interface Requirements • Graphical – Accessibility – Branding • Non-Graphical – Programmable RequisitePro – Requirement Linking Concepts Traceability • Traceability is the ability to trace a project element to other related project elements, especially those related to requirements – To – Lists requirements to which the selected requirement is traced. – From – Lists requirements from which the selected requirement is traced RequisitePro – Requirement Linking Two Requirements Different • Can be same Select Use-Case Right click and select Properties Select the Traceability tab Click the Add button in the From section RequisitePro – Requirement Linking Select the Requirement Type from the drop down list Select the Location from the drop down list • Database Only Select the Requirement Click OK RequisitePro – Requirement Linking RequisitePro – Views View Types Attribute Matrix • Requirement vs. Attribute – Illustrates the relationships between requirements and their attributes Traceability Matrix • Requirement vs. Requirement – Illustrates the relationships between requirements of the same or different types Traceability Tree • Requirement vs. Requirement – Displays all internal and external requirements traced to or from a requirement RequisitePro – Views Default Views Use-Case Template RequisitePro – Attribute Matrix Add View Right click a package Select New, View View Properties dialog appears • Enter Name • Enter Description RequisitePro – Attribute Matrix • Select View Type from drop down list • Select Row Requirement Type from drop down list • Optionally select Private • Click OK RequisitePro – Attribute Matrix RequisitePro – Attribute Matrix Change View Right click view and select Displayed Attributes Displayed Attributes dialog appears Click All or None and CTRL click individual attributes to select Select an attribute and click Move Up or Move Down to change display order Click OK RequisitePro – Traceability Matrix Add View Right click a package Select New, View View Properties dialog appears • Enter Name • Enter Description RequisitePro – Traceability Matrix • Select View Type from drop down list • Select Row Requirement Type from drop down list • Select Column Requirement Type from drop down list • Optionally select Private • Click OK RequisitePro – Traceability Matrix RequisitePro – Traceability Matrix Filters Right click upper left view corner and select either Query Row Requirements or Query Column Requirements The Select Attribute dialog appears • Select a filter attribute • Click OK RequisitePro – Traceability Matrix The Query Requirements dialog appears • Select the filter attribute values • Select the Sort Order • Select the When Traced • Click OK RequisitePro – Traceability Matrix Click Add to repeat with additional attribute filters Select a Query Criteria and click Modify to change Select a Query Criteria and click Remove to delete Click Move Up or Move Down to set order Optionally select Retain Hierarchical Display Click OK RequisitePro – Traceability Tree Add View Right click a package Select New, View View Properties dialog appears • Enter Name • Enter Description RequisitePro – Traceability Tree • Select View Type from drop down list • Select Row Requirement Type from drop down list • Optionally select Private • Click OK RequisitePro – Traceability Tree Next Steps Homework Homework Model • Continue to explode assigned packages • Create a ReqPro Database – Associate with XDE Model – Add Use-Case Requirements Classes Ahead Actors and Use-Case Diagrams Sequence and Statechart Diagrams Collaboration and Class Diagrams Integration and Development with the .NET Framework