Tool Mentor: Managing Dependencies Using Rational RequisitePro
This tool mentor describes how to use Rational RequisitePro® to manage dependencies by using requirement attributes and Traceability.
Tool: Rational RequisitePro
Relationships
Main Description

Overview

RequisitePro enables you to create and maintain a clear organization of Requirements. You can group your requirements according to user-defined attributes, such as function, priority, risk, and cost. In addition, you can establish hierarchical relationships that represent requirements in logical parent-child groups. Finally, you can create a traceability relationship between two requirements that establishes dependency from one requirement to the other.

Tool Steps

The following requirements management concepts and procedures are presented in more detail.

  1. Organize requirements
  2. Create requirement hierarchies
  3. Create requirement traceability
  4. Query requirements

1.  Organize requirements

Functional organization can be expressed in requirement types. A requirement type is simply a class of requirements that enable teams to organize large numbers of requirements into meaningful and more manageable groups. Establishing different types of requirements in a project helps team members classify requirements and communicate more clearly.

One type of requirement usually can be decomposed into other types. For example, business rules and vision statements typically include high-level requirements from which teams derive user needs, features, and product requirement types. Use cases drive design requirements that can be used to define software requirements. Test requirements are derived from the software requirements and are divided into specific test procedures. (If your installation includes Rational TestManager®, we recommend that you use that tool for managing test work products.)

When there are hundreds, thousands, or even tens of thousands of requirements in a given project, classifying requirements into types makes the project more manageable. Using RequisitePro, you can create requirements of a given type in a requirements document or directly in the project database. Each requirement type has specific attributes that are unique to that type.

To create requirement types:

  1. Click File > Open Project, select the project, and select the Exclusive check box. (The project must be opened in exclusive mode to create new requirement types.) Click OK.
  2. In the Explorer, select the project, and click File > Properties. The Project Properties dialog box appears.
  3. Click the Requirement Types tab, and click Add. Type the requirement type information (name, description, tag prefix, color, and style of the requirement format).
  4. Click OK.

To create Requirements in a document:

  1. In the document, select the text to define the requirement.
  2. Do one of the following:
    • Right-click and select New Requirement.
    • Click RequisitePro > Requirement > New.
      The Requirement Properties dialog box appears.
  3. Click the tabs and type the appropriate information to define the requirement. Click OK.

To create requirements in an Attribute Matrix:

  1. In the Explorer, select the package in which you want to place the view. Then click File > New > View. The View Properties dialog box appears.
  2. Type a name for and description of the view. The view type is Attribute Matrix. Select the requirement type for the Attribute Matrix from the list. Click OK. The Attribute Matrix appears.
  3. Either click twice the field marked <Click here to create a requirement>, or click the field and then click Requirement > New. The Name and Text boxes appear.
  4. Type a name for and the text of the new requirement.
  5. Press the Tab key to move across the matrix. Add attribute values as needed.
  6. Click anywhere in the view to save the requirement.

You can also open an existing requirement in an Attribute Matrix by selecting the requirement and clicking  Requirement > Properties. The Requirement Properties dialog box appears. On the General tab, you can modify the text for the requirement. Click the Attributes tab and select the appropriate values for the attributes.

For More Information

helpbook icon Refer to the following topics in the RequisitePro online Help:

  • Creating and modifying requirement types (Index: requirement types > creating)
  • Creating requirements in a document (Index: requirements > creating)
  • Creating requirements in an Attribute Matrix (Index: requirements > creating)

2.  Create requirement hierarchies

You can manage dependencies in hierarchical relationships. Hierarchical requirement relationships are parent-child relationships that reflect a logical grouping between requirements. These associations provide helpful tools for organizing requirements.

Use hierarchical relationships to subdivide a general requirement into more explicit requirements. Parent requirements are upper level, more general requirements; child requirements are lower level, more specific requirements. Each child requirement can have only one parent, but a requirement can be both a parent and a child.

Note: Hierarchical requirement relationships should not be confused with traceability relationships. A traceability relationship is generally established between different types of requirements, like software and test requirements, whereas hierarchical relationships group requirements of the same type, at the same level of the requirement traceability tree.

To create child requirements in a document:

  1. In the requirements document, select the information that defines the requirement.
  2. Do one of the following:
    • Right-click and select New Requirement.
    • Click RequisitePro > Requirement > New.
      The Requirement Properties dialog box appears.
  3. Click the tabs and enter the appropriate information to define the requirement.
  4. On the Hierarchy tab, select a parent from the Parent list. If the parent is not displayed in the list, select <choose parent...>, and select a parent from the list displayed in the Parent Requirement Browser dialog box.
  5. Click OK to close each dialog box.

To create child requirements in a view:

  1. Open an Attribute Matrix based on the requirement type of the requirement you want to create. Select the requirement that you want to be the parent of the new requirement.
  2. Click Requirement > New Child. You can create a child requirement in a view only if the selected requirement (which will become the child's parent) is also located in a view (that is, it is not located in a document).
  3. Type a description for the child requirement.
  4. Press the Tab key to move across the matrix. Add attribute values as needed.
  5. Click anywhere in the view to save the requirement.

For More Information

helpbook icon Refer to the following topics in the RequisitePro online Help:

  • Hierarchical relationships overview (Index: hierarchical requirements>overview)
  • Creating child requirements in a document (Index:hierarchical requirements>creating child requirements)
  • Creating child requirements in a view (Index: hierarchical requirements>creating child requirements)
  • Assigning parent requirements in a view (Index: parent requirements>assigning new parent requirements)

3.  Create requirement traceability

You can use traceability to manage dependencies. As implied in the description of requirement types, no single expression of a requirement stands alone. The process of decomposing user needs into derived requirements implies relationships between high-level expectations and subsequent work products needed for implementation and validation. In effect, one traces to many or vice versa.

For example, stakeholder requests are related to the product features proposed to meet them. Product features are traced to individual requirements for specific functional behavior. Test cases are traced from the requirements they verify and validate.

To determine the impact of changes and feel confident that the system conforms to expectations, team members must understand, document, and maintain these traceability relationships. Traceability is an essential tool for accommodating change and ensuring complete coverage. Establishing clear requirement types can help make traceability easier to implement and maintain.

To create requirement traceability:

  1. In the Explorer, select the package in which you want to place the view you create, and then click File > New > View. The View Properties dialog box appears.
  2. Select the Traceability Matrix view type. Select one requirement type for the rows and one for the columns of the matrix. Click OK.
  3. In the Traceability Matrix, select a cell that intersects the two requirements for which you want to create a traceability relationship. (Use a multiple select action to select multiple cells.)
  4. Do one of the following:
    • Click Traceability > Trace To or Traceability > Trace From.
    • Right-click the cell and select Trace To or Trace From.

For More Information

helpbook icon Refer to the following topics in the RequisitePro online Help:

  • Trace to/trace from overview (Index: trace to/trace from relationship>overview)
  • Creating traceability relationships in a view (Index: traceability >creating )

Suspect Relationships. A relationship between requirements becomes questionable or suspect if RequisitePro detects that one of the requirements in the relationship has been modified. If a requirement's text is modified, all direct relationships to and from that requirement become suspect. Moreover, you can define attributes that, when modified, cause traceability relationships to become suspect.

4.  Query requirements

Query to retrieve and organize requirements by attribute values or traceability. The RequisitePro query features provide a method for filtering and sorting requirements in views by limiting the values of one or more attributes or by limiting traceability and specifying the order in which the filtered requirements are displayed. Filtering restricts the information being displayed; sorting determines the order in which information is displayed. For example, in an Attribute Matrix, you may want to use filter criteria to view only those requirements assigned to you; you can also use sorting criteria to arrange the requirements from highest to lowest priority.

You filter and sort requirements by applying query criteria to the requirements and their attributes. These criteria limit the values of the attributes or conditions of the traceability relationships. You can create a query based on a single attribute value, or you can select multiple attribute values to create more complex query criteria.

RequisitePro allows you to save and rerun queries with user-defined views. You can dynamically rerun queries to update a requirements collection or refresh the returned data with updated values at any time.

To create a query:

  1. Open an Attribute Matrix, Traceability Matrix, or Traceability Tree view.
  2. Click View > Query Row Requirements. If you have not yet added any query criteria, the Select Attribute dialog box appears.
  3. Select the attribute and attribute value that you want to use in your query, and click OK.
  4. For list-type attributes, select one or more values. The logical operator OR is assumed for list-type attributes. For entry-type attributes, select an operator and specify the values.
  5. To create compound queries (with multiple attributes), click Add and select additional query criteria.
  6. Click OK.

To save a view:

  1. Click File > Save View As. The View Properties dialog box appears.
  2. Type a name for the view.
  3. Select the Private check box to save the view so that it can be opened only by the user who created it.
  4. Click OK.

For More Information

helpbook icon Refer to the following topics in the RequisitePro online Help:

  • Creating a view (Index: Views > creating views)
  • Creating and modifying queries (Index: queries > creating)