The new IBM® Rational® Requirements Composer, Version 3.0.1, is a single environment for requirements definition and management on the IBM® Rational® Jazz™ Team Server. Requirements Composer supports teams of all sizes and levels of complexity, whether they're using iterative, waterfall, or agile-at-scale development methods, because it uses lightweight requirements processes. It now also provides a complete requirements management environment, making it much easier to automate deployment, to trace, and to report across multiple Jazz products that span requirements, development, and test management.
Rational Requirements Composer 3.0.1 (see Figure 1) can help development teams reach these key goals:
- Bring agility, customer focus, and more effective management to their requirements process
- Use visual and textual scenarios to uncover customer needs
- Foster better collaboration among clients, stakeholders, and project teams
- Move beyond Microsoft Office or Open Office documents, work items, or note cards to describe and manage requirements
- Align requirements, development, change management, and quality management activities through Collaborative Lifecycle Management (CLM)
These benefits, plus others, are possible because of the many enhancements in Version 3.0.1 that improve traceability, templates, diagramming, analysis, reporting, review, and approval. The sections that follow describe the new or improved capabilities and what you can do with them.
Figure 1. Capturing requirements using Rational Requirements Composer
One of the biggest technical changes for Requirements Composer 3.0.1 is the transition from a rich Eclipse-based client to a web-only client to better align with other Collaborative Lifecycle Management (CLM) tools. IT managers and team members welcome this move, because it helps them simplify deployment, reduce total cost of ownership, and make it easier for occasional participants in the development process to get involved.
When working with artifacts across a software development lifecycle, the web client provides a more seamless experience for team members in other development disciplines. This also includes the process, use case, and storyboard diagramming features that give development and business analysts a complete web-based package. Because of this Eclipse-to-web adjustment in technology, many existing features will function slightly differently.
Development and test activities can now be aligned with business priorities and requirements. Rational Requirements Composer 3.0.1 is integrated with other Collaborative Lifecycle Management (CLM) software. This means that team members can stay in the same web client and navigate from requirements to tests in IBM® Rational® Quality Manager and development information through IBM® Rational Team Concert™. In this seamless environment, you can select and display a specific requirement artifact (or groups of artifacts) and then create traceable links to test cases and development work items by using lifecycle relationship links (through Open Services Lifecycle Collaboration, or OSLC, capabilities).
Project stakeholders can use these links to uncover information changes, understand the impact of changes, and keep project data current and accurate. Links can then be used for a variety of navigation, analysis, and reporting purposes. When a developer hovers a mouse cursor over a CLM link to another work or test item, a pop-up display instantly shows a link to critical information that is just a mouse click away.
Figure 2. Summary shows end-to-end CLM traceability
Process diagrams can help work on IT projects enhance business process and help team members develop a good understanding of the business needs and goals. Rational Requirements Composer still supports a select subset of business process modeling notations through the new web editor to create, share, and validate current and future state business processes (including roles, rules, tasks, and decision points).
You can link process diagram elements, tasks, and decision points to use cases, UI sketches, and text requirements. Stakeholders can then visualize how various inputs, outputs, and roles work together to execute processes that create value for business development decisions. Additionally, you can embed diagrams (and other visual requirements: sketches, use cases, and such) directly into other artifacts that will be visibly displayed to create a parent/child relationship and establish a traceable requirements flow.
Figure 3. Business process diagram
The user interface (UI) sketch editor is also still available in the Rational Requirements Composer 3.0.1 web environment for wire frame mockups. You can create UI mockups and workflow examples for web-based interactions that link any UI component to rich document descriptions and requirements. And because of the design interface, a developer or business analyst can make rapid changes through reusable "parts" in the UI sketch.
A manager can then visualize system transactions and interactions as the user would, and identify user experience issues before costly web-development. Like the other visual elements, sketches can be embedded directly into a rich requirement document.
Use case diagrams capture system and functional behavior from an end user's perspective. The project team can create use cases and elaborate on them with rich document descriptions. Use cases can then be linked to other use cases, user interfaces sketches, storyboards, process flows, and requirements in text.
Figure 4. Defining a use case
Storyboards are a common, proven technique in film-making, because they offer a fast, inexpensive way of communicating ideas; finding points of consensus, disagreement, and ambiguity; and then making decisions. Requirements definition and software or systems design are highly iterative, so they also benefit from this kind of visual expression of user scenarios. Both nontechnical and technically minded stakeholders can grasp the relevance of the storyboarded scenarios. This can raise the quality of the requirements elicitation and validation conversations beyond what typically happens during reviews of text documents.
Rational Requirements Composer 3.0.1 continues to provide quick UI sketch storyboards in a liner layout. Additionally, it now also supports a flow in a nonlinear layout, using reusable components and templates. Links can then be created for storyboards using relationship types that describe the flow and action for the product.
Although rich documents were supported in previous versions of Requirements Composer, the new version transitions to rich web editors that still support robust rich requirements documents, using fonts, colors, lists, numbers, tables, and graphics. The requirements document consolidates unstructured information that describes and documents the development project. You can create new documents by using best-practice templates and then have them filled in by team members. Each document artifact is given a unique ID that can be used for reference and tracking throughout the development process.
To create a concise and clear vision in the requirement specification document, visual artifacts (diagrams, use cases, sketches) can be embedded and displayed inline with text. There are also many usability changes that will enhance the editing experience so that you can edit many artifacts or their attributes in a single action. In the attribute display grid, you can double-click on attribute fields to quickly access the requirement and attribute text, and then easily edit it during capture and analysis work.
Using the rich editor, requirements stakeholders from any development discipline can organize and document critical project requirements, based on their desired template style and layout.
A dashboard is not new to Rational Requirements Composer, but now there are many new viewlets that enhance the information available about project status. The dashboard raises awareness and visibility of development work so that team members can focus on information that is active. The development team gets crucial information without searching for it.
Project members will see critical project information through the dashboard by using the following types of widgets:
- My Projects
- Recent Changes
- Traceability (to other lifecycle elements)
- Assigned Artifacts (tasks, stories, and so forth)
The dashboards are customizable and can provide dynamic information from multiple tools (Rational Requirements Composer, Team Concert, and Quality Manager). The viewlets align with the CLM experience, so when you are using the other Rational lifecycle tools, the dashboards will be similar.
Rational Requirements Composer now provides a configuration area for attributes types and link types . Types can be centrally created and managed to define the specific attributes that will be used for the named type. Templates can also be assigned to the type to provide a framework to help capture requirement information. As the project member selects a named requirement type in the creation process, the template will be applied and the specified attributes will be configured for the selected type.
Links can also now be configured to support many types of architectural relationships (satisfied by, validated by, parent, child, and so on). Where a project team needs a specific relationship to define a dependency from one artifact to another, the relationship can be applied and then used in the analysis and reporting process to show specific dependencies.
Team members can use predefined or custom link types to apply and manage the traceability relationship between requirement artifacts. Links are the connectors that allow the many development team members to see what information is connected to what. Although basic traceability and link support was possible in past versions, this release takes traceability to a new level.
You can select specific text phrases, complete artifacts, diagrams, or specific elements in diagrams and initiate start and end points for traceable links. This gives teams the flexibility to use a variety of relationship models. Rational Requirements Composer supports standard links and URL links, with the ability to convert a URL link if necessary. You can then use those links for many management, analysis, and reporting tasks. For software development, OSLC links are used to trace requirements to development work items and test cases to enable development, show dependence, and prove compliance.
After traceability links have been created between requirements or other project information, you can use them to guide a whole range of steps in a development process. Version 3.0.1 provides many built-in features for navigating links and finding information.
By hovering your mouse cursor, you can quickly see (in a pop-up window) the traceable data at the other end of the link. Although the link, by itself, is an indicator that there is dependency and changes should be made only when understanding the impact of that dependency, the pop-up view shows the actual requirement and attribute data to help you assess the impact of that dependency.
This version introduces built-in, robust visualization tools (tree and grid views) for multilevel traceability analysis. In effect, this means that project teams can assess the impact of their changes downstream or upstream directly in Rational Requirements Composer without the need for an offline trace report. The grid trace view shows each layer of requirements in a separate column and reveals one-to-one, one-to-many, and many-to-many relationships in a single view.
Figure 5. Traceability tree view
The second traceability view is a project explorer tree-style layout that can be expanded or contracted in the trace analysis phase. The tree view can show all attributes across traceable links so you can see specific values at each level. You can configure the view (for specific relationship types), filter and export them, and save them for frequent use. Where editing is needed, you can simply click a link to access the artifact for editing and further work. These views give the project team the ability see requirements traceability end-to-end for a development project.
To manage requirement information, the team needs specific analysis features to support the dissection and status of project information. There are many enhancements in Rational Requirements Composer 3.0.1 for using filters, sorting, tagging, and savable views.
Using these features, you can dynamically display current requirements content and enforce key management tasks. For example, these features are useful for tasks such as prioritizing requirements, identifying requirements for a specific release, reporting and identifying specific requirement owners, relative development cost for a group of requirements, or all requirements identified for a specific release, just to name a few.
Identifying changes to requirements is a critical part of requirements analysis and assessment of the impact of changes. Requirements Composer now automatically track changes to visual and textual requirements information as part of the artifact's audit trail. As a team member edits artifact data, the changes are automatically recorded.
Previous versions have captured complete version changes, and this is still supported. But you can now go further, to access changes line-by-line, based on who made the change, the date and time, and what change was made. The changes are displayed in a markup format to help you identify differences quickly. If the change was inadvertent, the audit history can be used to revert to a previous version and restore lost data to the current version.
Figure 6. Reviewing the history of changes
Common understanding in a project is also necessary to reduce confusion and mistakes in project data. Rational Requirements Composer continues to support multiple project-wide glossaries to capture enterprise and project-level terms, including support for search, synonyms, and related terms. In v 3.0.1, glossaries are also supported through links to related glossary terms from anywhere, using the built-in content assistance tool.
Rational Requirements Composer still supports collections and snapshots to define scope and to create read-only milestones. After a collection has been created, you can take a snapshot to track your development progress. Later, you can return to specific version of artifacts, including their links and comments, to see what the situation was when that snapshot was created.
When project information can be reused, it helps teams take proven information (from former project areas) and reuse it to reduce rework in new project areas. You can now use Requirements Composer now to embed requirements in other requirement artifacts as a method of requirement reuse. Using any artifact (or multiple artifacts), a requirement owner can select a current version of an artifact and embed it directly inside another artifact (putting one inside the other). Thus, a virtual reference of the original artifact is displayed inside the other artifact. As a change is made to the artifact, it is instantly reflected in other requirements artifacts that referenced and displayed the reused artifact.
Review and approval is a capability and a workflow that helps teams achieve consensus and validate requirements faster by shortening the review and approval cycles. A review process can be created (with supported workflow) in Rational Requirements Composer. A review owner then selects specific artifacts in a group and identifies the rest of the development team members for the review. Then the review owner then initiates the review process, using automated email notifications, and tracks the progress of the review by checking the status bar indicators for each reviewer throughout the workflow.
The customizable dashboard and viewlets also provide collective information about the review, giving single-click access to a review and related discussions. Commenting capabilities include direct comments to multiple users and email notification.
Figure 7. Checking the review status
Project teams can use existing requirements from documents and spreadsheets created offline and away from the project database. You can import documents into native Rational Requirements Composer rich text format from Microsoft Word, Open Office document text (.odt), and common rich text (.rtf) formats, and you can export a requirement artifact from Rational Requirements Composer to a Word document. Additionally, you can import from and export to spreadsheets by using comma-separated text (.csv) files, including associated attribute values.
Quantitative and document reporting is now greatly improved, Teams can provide high-quality reports from their data warehouses or generate documents based on the live data from a requirements project by using the IBM® Rational® Publishing Engine automated report-generation tool. Using either included reports or custom templates, you can generate documents and reports based on requirement changes, traceability, or trends, just as a few examples.
Figure 8. Requirements coverage report
A reporting wizard guides you through creating reports in common file formats, including Microsoft Word, PDF, HTML, and XSL formatting objects (XSL-FO). Through the Rational Common Reporting interface, IBM® Rational® Insight is also supported for more comprehensive reports.
Rational Requirements Composer has had an updated sample project (JKE Business Recovery Matters) that provides a prepopulated example for personal learning, sampling, and testing. This makes it easier to assess or learn about Requirements Composer, whether you use it alone or in combination with Rational Team Concert and Rational Quality Manager. It could also be used as a project template to start your own project.
These are among the updates:
- New artifacts, including sketches, process and use case diagrams, actors, and use case specifications
- Enterprise and project glossaries
- Richer linking to demonstrate functional decomposition of high-level requirements
- New link type ("illustrates / illustrated by") for relating visual artifacts to other artifacts
- New saved filters to demonstrate new views
- Release planning collection for use in CLM scenarios
Because it is now one of the Collaborative Lifecycle Management tools, Rational Requirements Composer delivers an improved role and license experience to give a project team access to other CLM tools, by role. This means that someone who is a designated as team member in a Requirements Composer can access, view, and report on test and development information quickly through direct navigation access and traceability, without requiring an additional license for Rational Team Concert or Rational Quality Manager.
The new release of the Rational Requirements Composer takes a large step forward to provide a single environment for requirements definition and management capabilities on the Jazz Team Server. It supports teams of all sizes that use iterative, waterfall, or agile-at-scale development. It now provides a complete requirements management environment that makes it much easier to automate deployment, to trace, and to report across multiple Jazz technology-based products that span requirements, development, and test management.
- To learn more, start with the developerWorks page for Rational Requirements Composer, and then review the product overview page and the features and benefits. For details and documentation, check the information center.
- For more information about Rational Publishing Engine, check the developerWorks page and the information center.
- For more about other Rational products mentioned in this article, start with these developerWorks pages:
- Rational Insight performance management software
- Rational Quality Manager quality management application
- Rational Team Concert collaborative change and configuration management tool
- Find out more about Collaborative Lifecycle Management (CLM), and watch a demo of the software integrated for CLM.
- Visit the Rational software area on developerWorks for technical resources and best practices for Rational Software Delivery Platform products.
- Stay current with developerWorks technical events and webcasts focused on a variety of IBM products and IT industry topics.
- Attend a free developerWorks Live! briefing to get up-to-speed quickly on IBM products and tools, as well as IT industry trends.
- Watch developerWorks on-demand demos, ranging from product installation and setup demos for beginners to advanced functionality for experienced developers.
- Improve your skills. Check the Rational training and certification catalog, which includes many types of courses on a wide range of topics. You can take some of them anywhere, any time, and many of the "Getting Started" ones are free.
Get products and technologies
- Download the Rational Requirements Composer free trial or try it on the cloud.
- Evaluate IBM software in the way that suits you best: Download it for a trial, try it online, use it in a cloud environment, or spend a few hours in the SOA Sandbox learning how to implement service-oriented architecture efficiently.
- Join the Rational Requirements Composer forum to ask questions and participate in discussions.
- Share your knowledge and help others who use Rational software by writing a developerWorks article. You'll get worldwide exposure, RSS syndication, a byline and a bio, and the benefit of professional editing and production on the developerWorks Rational website. Find out what makes a good developerWorks article and how to proceed. Start by finding out what makes a good developerWorks Rational article.
- Follow Rational software on Facebook, Twitter (@ibmrational), and YouTube, and add your comments and requests.
- Ask and answer questions and increase your expertise when you get involved in the Rational forums, cafés, and wikis.
- Connect with others who share your interests by joining the developerWorks community and responding to the developer-driven blogs.
As a senior product manager for IBM Rational software, Jared Pulham focuses specifically on requirements management tools. He has 15 years experience in software testing and development, with experience in many companies and multiple industries. His primary responsibilities are divided between oversight of Rational RequisitePro and Rational Requirements Composer.