You are previewing Requirements Management Using IBM Rational RequisitePro.
O'Reilly logo
Requirements Management Using IBM Rational RequisitePro

Book Description

Optimize Your Entire Requirements Process–and Use Requirements to Build More Successful Software

Using IBM® Rational® RequisitePro®, you can systematically improve the way you create and maintain requirements–and use those requirements to build more effective, higher-quality software. Now, for the first time, there’s a comprehensive, hands-on guide to optimally using RequisitePro in real-world development environments.

Utilizing a start-to-finish sample project, requirements expert Peter Zielczynski introduces an organized, best-practice approach to managing requirements and shows how to implement every step with RequisitePro. You’ll walk through planning, eliciting, and clarifying stakeholder requirements; building use cases and other key project documents; managing changing requirements; transforming requirements into designs; and much more. Every stage of the process is illuminated with examples, realistic artifacts, and practical solutions.

This book is an invaluable resource for everyone who creates requirements, and everyone who relies on them: business analysts, systems analysts, project managers, architects, designers, developers, and testers alike.

Coverage includes

  • Overcoming the three leading causes of project failure: lack of user input, incomplete requirements and specifications, and poorly managed change

  • Understanding each type of software requirement–how they interrelate, and what makes a good requirement

  • Establishing a Requirements Management Plan that describes how requirements are created and handled throughout the project lifecycle

  • Developing a Vision document that can drive your project from beginning to end

  • Creating high-quality use cases

  • Using requirements as the basis for system design

  • Leveraging RequisitePro features for improved project management

  • Integrating requirements management with the IBM Rational Unified Process®

  • Foreword xvii

    Preface xix

    Acknowledgments xxiii

    About the Author xxv

    Part I: Overview 1

    Chapter 1: Requirements Management 3

    Chapter 2: Overview of RequisitePro 23

    Part II:Requirements Management Activities 33

    Chapter 3: Establishing a Requirements Management Plan 35

    Chapter 4: Setting up the Project 45                            

    Chapter 5: Requirements Elicitation 63

    Chapter 6: Developing a Vision Document 99

    Chapter 7: Creating Use Cases 129             

    Chapter 8: Supplementary Specification 157  

    Chapter 9: Creating Test Cases from Use Cases 191       

    Chapter 10: Creating Test Cases from Supplementary Requirements 221       

    Chapter 11: Object-Oriented Design 243

    Chapter 12: Documentation 273

    Part III: Other Topics 285

    Chapter 13: Managing Projects 287

    Chapter 14: Requirements Management in the Rational Unified Process 295

    Part IV: Review 311

    Chapter 15: Summary 313

    Appendix: Sample Requirements Management Plan 319

    Index 327

    Table of Contents

    1. Copyright
      1. Dedication
    2. IBM Press
      1. Rational and Software Development
      2. Computing
      3. Information Management
      4. Websphere
      5. Lotus
      6. Open Source
      7. Business Strategy & Management
    3. Foreword
    4. Preface
      1. What This Book Is About
      2. How This Book Is Organized
      3. The Audience for This Book
    5. Acknowledgments
    6. About the Author
    7. I. Overview
      1. 1. Requirements Management
        1. 1.1. Definition of a Requirement and a Stakeholder
        2. 1.2. Requirements Pyramid
        3. 1.3. Traceability between Requirements
        4. 1.4. Characteristics of a Good Requirement
          1. Unambiguous
          2. Testable (Verifiable)
          3. Clear (Concise, Terse, Simple, Precise)
          4. Correct
          5. Understandable
          6. Feasible (Realistic, Possible)
          7. Independent
          8. Atomic
          9. Necessary
          10. Implementation-free (Abstract)
          11. Consistent
          12. Nonredundant
          13. Complete
        5. 1.5. An Overview of the Requirements Management Process
          1. Establishing a Requirements Management Plan
          2. Requirements Elicitation
          3. Developing the Vision Document
          4. Creating Use Cases
          5. Supplementary Specification
          6. Creating Test Cases from Use Cases
          7. Creating Test Cases from the Supplementary Specification
          8. System Design
        6. 1.6. Summary
        7. References
      2. 2. Overview of RequisitePro
        1. 2.1. Interface
          1. Explorer
          2. Views
          3. Toolbar
        2. 2.2. Word Workplace
        3. 2.3. Documents
        4. 2.4. Requirements
        5. 2.5. Summary
    8. II. Requirements Management Activities
      1. 3. Establishing a Requirements Management Plan
        1. 3.1. When the RMP Is Created
        2. 3.2. Decisions That May Be Documented in an RMP
          1. Will an RM Tool Be Used?
          2. What Requirement Types Will Be Tracked in the Project?
          3. What Are the Attributes of These Requirements?
          4. Where Will the Requirements Be Created—in the Database Only or in the Documents?
          5. Between Which Requirements Do We Need to Implement Traceability?
          6. What Documents Are Required?
          7. Which Requirements and Documents Will Be Used as a Contract with Customers?
          8. If Part of the Project Is Outsourced, What Requirements and Documents Will Be Used as a Contract with a Vendor?
          9. Will We Follow the Rational Unified Process or Some Other Methodology?
          10. Does the Customer Need Any Specific Documents to Comply with His Development Process?
          11. How Will Change Management Be Implemented?
          12. Will the Whole System Be Stored in One RequisitePro Project or Spread Among Many Projects?
          13. What Process Will Guarantee That All Requirements Were Implemented and Tested?
          14. Which Requirements or Views Do We Need to Generate Reports?
        3. 3.3. Sample Requirements Management Plan
        4. 3.4. Summary
        5. Reference
      2. 4. Setting up the Project
        1. 4.1. Setting up a RequisitePro Project
          1. Adding Requirement Attributes
          2. Changing Values of Requirement Attributes
          3. Importing a Document
        2. 4.2. Setting up a Rational Project
        3. 4.3. Summary
      3. 5. Requirements Elicitation
        1. 5.1. Identifying Stakeholders
        2. 5.2. Techniques of Requirements Elicitation
          1. Interviews
          2. Questionnaires
          3. Workshops
          4. Storyboarding
          5. Role Playing
            1. Dialog 1
            2. Dialog 2
          6. Brainstorming Sessions
            1. Example
          7. Using Affinity Diagrams
          8. Prototyping
          9. Analyzing Existing Documents
          10. Use Cases
          11. Observation and Task Demonstration
          12. Analyzing Existing Systems
        3. 5.3. Creating the Stakeholder Requests Document
          1. Opening a Project
          2. Adding a Document Type to the Project
          3. Creating a Stakeholder Requests Document
        4. 5.4. Creating Requirements in RequisitePro
          1. Adding Requirements in Documents
          2. Changing Attributes of Requirement Types
          3. Adding a Requirement from the Explorer
          4. Modifying a Requirement in the Explorer
          5. Deleting a Requirement from the Explorer
        5. 5.5. Using Views to Analyze Requirements
          1. Creating the Attribute Matrix View
          2. Opening a View
          3. Exporting a View
          4. Querying Requirements
        6. 5.6. Summary
        7. References
      4. 6. Developing a Vision Document
        1. 6.1. The Structure of the Vision Document
        2. 6.2. Deriving Features from Stakeholder Needs
        3. 6.3. Attributes of Features
        4. 6.4. Creating the Vision Document in RequisitePro
        5. 6.5. Creating Features Requirements
        6. 6.6. Traceability
        7. 6.7. Views
          1. Accessing a Previously Created View
          2. Setting a Traceability Link
          3. Deleting a Traceability Link
          4. Modifying Requirements in the View
          5. Queries
          6. Suspect Traceability
          7. Other Operations on Views
          8. Traceability Tree
        8. 6.8. Summary
        9. Reference
      5. 7. Creating Use Cases
        1. 7.1. Identifying Actors
        2. 7.2. Identifying Use Cases
        3. 7.3. Use Case Diagrams
        4. 7.4. Structuring the Use Case Model
          1. Include Relationship
          2. Extend Relationship
          3. Generalization Relationship Between Use Cases
          4. Generalization Relationship Between Actors
        5. 7.5. The Use Case Specification Document
          1. Brief Description
          2. Basic Flow
          3. Alternative Flows
          4. Special Requirements
          5. Preconditions
          6. Postconditions
          7. Extension Points
          8. Context Diagram
          9. Activity Diagram
          10. State Machine Diagrams
          11. Scenarios
        6. 7.6. Scenarios
        7. 7.7. Use Cases in RequisitePro
          1. Creating the Use Case Specification
          2. Creating Requirements
        8. 7.8. Creating a New Requirement Type in RequisitePro
        9. 7.9. Summary
        10. References
      6. 8. Supplementary Specification
        1. 8.1. Eliciting Supplementary Requirements
        2. 8.2. Classification of Supplementary Requirements
          1. Functionality
          2. Usability
          3. Reliability
          4. Performance
          5. Supportability
          6. Design Constraints
          7. Implementation Requirements
          8. Interface Requirements
          9. Physical Requirements
          10. Documentation Requirements
          11. Licensing and Legal Requirements
        3. 8.3. Deriving Supplementary Requirements from Features
        4. 8.4. Attributes of Supplementary Requirements
          1. Importance
          2. Satisfaction Shape
            1. Sharp Satisfaction Shape
            2. Medium Satisfaction Shape
            3. Linear Satisfaction Shape
        5. 8.5. Entering Supplementary Requirements in RequisitePro
        6. 8.6. Traceability to Supplementary Requirements
          1. Setting the Type Attribute for Features
          2. Setting Traceability
          3. Querying Requirements
        7. 8.7. Summary
        8. References
      7. 9. Creating Test Cases from Use Cases
        1. 9.1. Creating Test Cases
          1. Step 1: Identify Variables for Each Use Case Step
          2. Step 2: Identify Significantly Different Options for Each Variable
          3. Step 3: Combine Options to Be Tested into Test Cases
          4. Step 4: Assign Values to Variables
        2. 9.2. Business Rules
        3. 9.3. Creating a New Document Type
        4. 9.4. Adding Scenarios and Test Cases
          1. Creating a New Package
          2. Creating a Document
          3. Adding Requirements from the Explorer
        5. 9.5. Setting Traceability
        6. 9.6. Summary
        7. References
      8. 10. Creating Test Cases from Supplementary Requirements
        1. 10.1. Executing Selected Test Cases in Different Environments
        2. 10.2. Adding an Additional Check to All Use Cases
        3. 10.3. Checking and Modifying Specific Use Cases
        4. 10.4. Performing the Exercise
        5. 10.5. Checklist
        6. 10.6. Analysis
        7. 10.7. White-Box Testing
        8. 10.8. Automated Testing
        9. 10.9. Using Robot and Test Manager for Automated Testing
          1. Recording a VU Script
          2. How to Run a Suite in Rational Test Manager
          3. Analyzing the Results
        10. 10.10. Summary
        11. References
      9. 11. Object-Oriented Design
        1. 11.1. System Design from Use Cases
        2. 11.2. Using IBM Rational Rose for Design
          1. Creating a New Model
          2. Creating Class Diagrams
          3. Modeling Associations
          4. Creating Sequence Diagrams
        3. 11.3. Using IBM Rational Software Architect for Design
          1. Creating a Project
          2. Creating a Use Case Diagram
          3. Creating a Class Diagram
          4. Creating a Sequence Diagram
          5. Publishing the Design
        4. 11.4. Summary
        5. References
      10. 12. Documentation
        1. 12.1. Documentation Types
          1. Internal Documentation
          2. Technical Documentation
          3. User Documentation
          4. Marketing Materials
        2. 12.2. Documents Available in RequisitePro
          1. Creating a Document from an Available Document Type
          2. Adding a New Document Type
          3. Creating a New Document Type
          4. Importing a Document
        3. 12.3. Using IBM Rational SoDA
          1. Generating a Report from RequisitePro
          2. Generating a Report from SoDA
        4. 12.4. Summary
        5. References
    9. III. Other Topics
      1. 13. Managing Projects
        1. 13.1. Printing the Project Summary
        2. 13.2. RequisitePro File Types
        3. 13.3. Archiving Projects
        4. 13.4. Moving and Copying Projects
        5. 13.5. Cross-Project Traceability
        6. 13.6. Summary
        7. Reference
      2. 14. Requirements Management in the Rational Unified Process
        1. 14.1. The Rational Unified Process
        2. 14.2. The Requirements Pyramid and RUP
          1. Inception
          2. Elaboration
          3. Construction
          4. Transition
        3. 14.3. The Requirements Pyramid and the Waterfall
        4. 14.4. Moving from Waterfall to RUP Using the Requirements Pyramid
        5. 14.5. Summary
        6. References
    10. IV. Review
      1. 15. Summary
        1. 15.1. Summary of the Pyramid Approach to the Requirements Management Process
        2. 15.2. Advantages
        3. 15.3. RequisitePro
    11. Sample Requirements Management Plan
      1. 1. Introduction
        1. 1.1. Purpose
        2. 1.2. Scope
        3. 1.3. Overview
      2. 2. Tools, Environment, and Infrastructure
      3. 3. Documents and Requirement Types
        1. 3.1. Documents
        2. 3.2. Requirement Types
        3. 3.3. Traceability
        4. 3.4. Requirements Attributes
          1. 3.4.1. Attributes for FEAT
            1. Status
            2. Priority
            3. Benefit
            4. Effort
            5. Risk
            6. Stability
            7. Target Release
            8. Assigned To
            9. Reason
          2. 3.4.2. Attributes for STRQ
          3. 3.4.3. Attributes for UC
            1. Actor
          4. 3.4.4. Attributes for SUPL
        5. 3.5. Reports and Measures