Using IBM Rational Requirements Composer and IBM Rational RequisitePro together

An introduction

Get guidance for introducing IBM Rational Requirements Composer into your requirements management process. If you are using IBM Rational RequisitePro, you can use Rational Requirements Composer to import requirements and to elaborate and visualize them. If you are not currently using a formal requirements management tool, you can start with Requirements Composer to define and visualize requirements, and then introduce RequisitePro, where you can manage your Requirements Composer requirements using a formal management tool. This allows you to take advantage of RequisitePro features as traceability.

Share:

Mario Maldari (mamaldar@us.ibm.com), System Verification Test Lead, IBM Corporation

Mario MaldariMario has worked with requirements tools and led testing efforts for more than eight years. He has also worked in sales force automation as a business analyst and sales support engineer.



30 July 2009

Also available in Chinese Spanish

Prerequisite

To perform the tasks described in this article, you must be an administrator or business analyst who oversees requirements gathering and wants to transfer requirements between IBM® Rational® Requirements Composer and IBM® Rational® RequisitePro® environment.

Note:
Throughout this article, "RequisitePro" refers to the software, and "RequisiteWeb" means IBM® Rational® RequisitePro® client for the Web, or the Web client that supports the use cases that this integration provides.


Use case 1. Introducing requirements into a managed requirement domain

In this scenario, you have established requirements management with RequisitePro and have one or more projects that you want to further define and visualize by taking advantage of the features of Requirements Composer. You might also want to continue elaborating your requirements by linking to artifacts, such as: rich text documents, use-case diagrams, business models, and storyboards. For example, in a use-case diagram, you can link imported requirements to use cases as a way of providing additional context.

Import requirements and requirement types

  1. In the Rational Requirements Composer client, configure the integration to a RequisiteWeb server that stores your projects.
  2. To import your requirements:
    1. Select a RequisitePro project. that you want in the definition of the requirements domain.
    2. On the administrator tab, click the "Import" button to import requirements and their requirement types.

You can use this method for all projects. If you use the integration wizard shown in Figure 1, you can switch between projects and import one project at a time.

Figure 1. Integration wizard
Project Login screen

Tips:

  • You can do a bulk requirement import by selecting a RequisitePro package in the integration wizard that contains one or more requirements to import.
  • If you have multiple RequisitePro projects that you want to import into the composer tool, you can set up the integration by using multiple clients and then import from each client. This workaround can save time and effort, because one person can perform this task from one machine.

Note:
You cannot import document-based requirements at this time.

Import requirement types

Each requirement that you import to Rational Requirements Composer creates a corresponding requirement type, which ensures that you can create future requirements of this type, and eventually "push" these requirements back to RequisiteWeb for formal management. This effectively creates a new requirement in RequisitePro from the composer-based requirement.

Formal management implies tracing requirements and marking requirement trace links as suspect when warranted. RequisitePro handles these functions.

Tips:

  • If you have multiple projects that you want to define, repeat the previous step until all desired requirements and requirement types are imported to Rational Requirements Composer.
  • Create a folder and choose a meaningful name to store all of your imported requirements. The default is named "requirements."

Create new composer requirements from imported requirement types

After you have identified all of the requirement types from your various RequisitePro projects, you can create requirements based on these requirement types. You can also apply capabilities such as linking, commenting, and attribute values.

These requirements can also go through formal reviews in which stakeholders can use the Rational Requirements Composer Web client or the Eclipse client to review, comment, and approve the requirements and their associated artifacts.

You can use the Synchronize Attribute Groups feature (see Figure 2) to import requirement types and attribute groups from RequisitePro into Rational Requirements Composer.

Figure 2. Synchronize with RequisitePro
Synchronize Attribute Groups window

Tip:
If you have one or many RequisitePro projects that you will be providing definition artifacts for, you can import all requirement types from each of these projects, so that you can create requirements of this type in the composer tool. Then you can use consistent language for requirement types between Rational Requirements Composer and RequisitePro.

Note:
Only single-select list and text attributes are imported from RequisitePro

Elaborate and visualize your managed requirements

  1. Open your requirements are imported to Rational Requirements Composer.
  2. Consider the types of artifacts that would help visualize or further define your requirement (for example, a storyboard, use-case diagrams, rich text documents, and so forth). Write a description in your requirement, and then use links to create a new artifact (or link to an existing one) that can be used to help visualize and define your requirement.
  3. Create as many artifacts as you need to help visualize, elaborate, and define your requirement.
  4. After your requirement is well-defined, you can participate in a review process by using commenting and the various attributes that are provided by the requirement type.
  5. You can then push this requirement to RequisitePro, where it will be available for higher-level management, such as traceability and hierarchal relationships.

Use case 2. Using Rational Requirements Composer with RequisitePro

Note:
This use case assumes that you are starting with Requirements Composer, and will eventually want to use RequisitePro to formally manage your requirements.

Prepare to manage requirements in the Composer

After creating multiple definition artifacts in Rational Requirements Composer, you might want to create a high-level requirement that represents these definition artifacts and contains links back to each of them. Then you can use the requirement both to participate in a review process and to track plans for formal implementation. Use comments to discuss the requirement and the linked artifacts with other members of your team.

After your comments and discussions are resolved, you can then track various states of the requirement by using the attribute values. For example, your requirement that is a Feature type might need a review process with project stakeholders. In the attribute values, you can change the value from, "Non-functional" to "Functional," and the priority to "Must." Your team can use the Status attribute to track the review and approvals. When the requirement is ready to manage in RequisitePro (assuming a review and approval process has taken place), you can change the status attribute to "Approved."

You can move the requirement to a "Requirements" folder in Rational Requirements Composer as a staging area before they are managed in, or "pushed" to, RequisitePro.

Tip:
Because Rational Requirements Composer can manage or "push" data to RequisitePro in bulk, it might be easier if all of the requirements that are ready to be managed are in one folder.

Alternatively, you can search for all requirements by using the provided search capability where the value for Status is "Approved," and push them one by one to be managed in RequisitePro.

Using the synchronization option

You can use the synchronization option to ensure that requirements in Rational Requirements Composer stay synchronized with their associated RequisitePro requirements. There are two options that you can set in the Edit RequisitePro Connection page, as shown in Figure 3.

Figure 3. Synchronization options
Push changes to or pull changes from Requisite Pro

Tip:
Consider your workflow:

  • If your primary changes are in Rational Requirements Composer and then pushed to RequisitePro where they are not going to change, then you might want to use only the "Push requirement changes to RequisitePro" option.
  • If you want changes that you make in RequisitePro to overwrite changes to the associated requirement in the composer tool, then you can use the "Pull requirement changes from RequisitePro" option, instead.
  • When you are actively elaborating the requirement in both the composer and RequisitePro, you might want to select both options so that changes are synchronized back and forth between the two tools.

Displaying requirements in RequisiteWeb

Rational Requirements Composer introduces the concept of rich text-based requirements in RequisiteWeb. After requirements from Rational Requirements Composer are pushed to RequisiteWeb, the rich text will be displayed in RequisiteWeb as read-only.

Figure 4 represents rich text from a requirement in the composer tool. There are various rich text components, such as bold, headline, italic, inserted images, and embedded links to other artifacts. After requirements are pushed to RequisitePro, they are displayed and handled differently. The native client will display rich text as "flattened text."

Figure 4. Rich text from a requirement in Rational Requirements Composer
Text field in the Requirement Properties view
Figure 5. Two requirements from the composer tool now in RequisiteWeb view
RequisiteWeb view

Figure 6 is an example of the RequisiteWeb interface. The Rational Requirements Composer integration with RequisitePro is performed through the use of the Web client, which we call "RequisiteWeb." You will need RequisiteWeb to use this integration. It supports all of the use cases that are described in this article. In RequisiteWeb, you will be able to identify a "managed" composer requirement by the hyperlink to the composer tool (Figure 6) at the bottom of the General tab.

Figure 6. Requirement linked to Rational Requirements Composer
Link for Check Order Status requirement

Summary of the integration use cases

Here’s a recap of the steps for each scenario:

Rational Requirements Composer:

  1. Create requirements
  2. Create attribute groups
  3. Push requirements to RequisitePro
  4. Import requirements
  5. Import (sync) requirement types from RequisitePro
  6. Create requirements from imported requirement types
  7. Synchronize requirement attribute changes from RequisitePro
  8. Navigate to managed requirements in RequisiteWeb

Rational RequisiteWeb:

  1. Create requirements by using the manage option in Rational Requirements Composer
  2. Synchronize requirement attribute changes
  3. Navigate to associated requirements (when managed) in Rational Requirements Composer

Resources

Learn

  • Learn about other applications in the IBM Rational Software Delivery Platform, including collaboration tools for parallel development and geographically dispersed teams, plus specialized software for architecture management, asset management, change and release management, integrated requirements management, process and portfolio management, and quality management.
  • Visit the Rational software area on developerWorks for technical resources and best practices for Rational Software Delivery Platform products.
  • Explore Rational computer-based, Web-based, and instructor-led online courses. Hone your skills and learn more about Rational tools with these courses, which range from introductory to advanced. The courses on this catalog are available for purchase through computer-based training or Web-based training. Additionally, some "Getting Started" courses are available free of charge.
  • Subscribe to the Rational Edge newsletter for articles on the concepts behind effective software development.
  • Subscribe to the IBM developerWorks newsletter, a weekly update on the best of developerWorks tutorials, articles, downloads, community activities, webcasts and events.
  • Browse the technology bookstore for books on these and other technical topics.

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Rational software on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational, DevOps
ArticleID=415595
ArticleTitle=Using IBM Rational Requirements Composer and IBM Rational RequisitePro together
publish-date=07302009