Use Rational Quality Manager to manage lab assets in shared lab

Extend IBM Rational Test Lab Manager for test asset management

By extending the Test Lab Manager component of the IBM Rational Quality Manager, you can safely manage shared test assets in a test lab among different teams and projects. This article describes how the IBM Tivoli Lab in Rome is piloting an integration of IBM Rational Quality Manager with IBM Tivoli Provisioning Manager, to help test teams achieve enhanced productivity and cycle times, and improve their cost effectiveness.

Share:

Pietro Marella (pietro.marella@it.ibm.com), Advisory Engineer, IBM

author photoPietro Marella joined IBM in 1991 and Tivoli in 1998 as a software engineer in the Rome Software Group Lab. He has been working for several years as a developer and designer of different products in the System Monitoring portfolio, both for centralized and distributed architecture. He is currently Test Architect in the Rome QA area, focusing on planning, test, and automation strategy.



Remo Freddi (remo_freddi@it.ibm.com), Staff Software Engineer, IBM

Remo Freddi joined IBM Tivoli in 2006 as a software engineer in the Rome Software Group Lab. He has been working as a developer and designer of some user interfaces for prototypes and projects such as "Usability Tool", "SmarTest Search" and "Data Input Interface" for Cognos. He is currently Staff Software Engineer in the Rome Test area, focusing on test and automation test.



19 November 2013

Also available in Chinese

The context

IBM® Rational® Quality Manager is web-based test management software that provides quality assurance teams with the means to manage and track the whole quality life cycle.

It is a collaborative and customizable solution for teams to:

  • Create and maintain a test plan
  • Test, design, and run manual or automated tests
  • Manage goals
  • Schedule, track, and report metrics about the health of the test phase, overall

As shown in Figure 1, Rational Quality Manager simplifies all aspects of test management. In addition, it includes support for managing requirements and defects.

Figure 1. Rational Quality Manager test cycle management
Key actions for test management

Rational Test Lab Manager, an embedded component of Rational Quality Manager, enables test teams to integrate the management of test lab resources (virtual or physical) into their organization's quality management lifecycle.

Rational Test Lab Manager is designed to manage lab resources within each single project defined in Rational Quality Manager as silos. Lab resources can be reserved and assigned within the context of the same project, which is the main building block in Rational Quality Manager. In most cases, software development labs are shared among different groups and projects. Ideally, a lab management tool optimizes the use of lab resources across teams and projects to maximize resource use. This article describes a pilot project to extend Rational Test Lab Manager capabilities across multiple projects defined in Rational Quality Manager to enable a shared lab to be managed in a software development lab. The pilot takes advantage of the capability to integrate Rational Quality Manager with Tivoli Provisioning Manager. This integration is described in a separate article (see Resources for a link) and is referred to throughout this article.


The architecture of the pilot project

The IBM Tivoli lab in Rome has been gradually but widely adopting an approach to Rational solution for Collaborative Lifecycle Management (CLM) based on Jazz technology. Adoption of IBM® Rational Team Concert™, IBM® Rational® Requirements Composer, and Rational Quality Manager varies in maturity. As of August 2013, the implementation was at Version 4.0.3. Figure 2 shows the tasks covered by each product.

Figure 2. CLM architecture as implemented in the IBM Tivoli lab in Rome
Key components of the Jazz-based implementation

Click to see larger image

Figure 2. CLM architecture as implemented in the IBM Tivoli lab in Rome

Key components of the Jazz-based implementation

In addition to these Rational products, IBM Tivoli Provisioning Manager is used to discover and manage the inventory of physical lab resources available in the IBM Tivoli lab in Rome.

With the integration of Rational Quality Manager and IBM Tivoli Provisioning Manager, the Tivoli lab wanted to increase the efficiency of the test teams by giving them easy access to test lab resources. The goal was to fully integrate the management of the test definition phase and the actual testing cycle. The SmarTest Asset Management (STAM adapter) enabled test teams to easily share resources among different groups for better resource use and gave them a full view of the resources in the lab, resource availability, and resource reservations.

Figure 3. Extended Rational CLM architecture as implemented in the IBM Tivoli lab in Rome
key components with SmarTest in IBM Rome Tivoli lab

Click to see larger image

Figure 3. Extended Rational CLM architecture as implemented in the IBM Tivoli lab in Rome

key components with SmarTest in IBM Rome Tivoli lab

A first look at test lab management in Rational Quality Manager

Rational Quality Manager makes it easier to manage test lab resources for end-to-end test management. Being able to define your test environments and link them to the test cases gives you full traceability of your test execution, helps you understand coverage issues, and enables your organization to use resources more efficiently, because you can track and administer your lab resources by using reservations, by organizing the resources by group, and so on.

The first step is to make sure that Rational Quality Manager knows about your lab resources. The basic method is to create lab resource definitions manually or to import resources definitions from an external file.

A more advanced method takes advantage of the ability in Rational Quality Manager to integrate with discovery and provisioning tools such as IBM Tivoli Service Request Manager, IBM Tivoli Application Dependency Discovery Manager, and IBM Tivoli Provisioning Manager (see Resources for a link to more details) to provide request fulfillment, inventory awareness, and automation.

Such an integration is performed by means of adapters that can be invoked by using the Rational Quality Manager web user interface to trigger operations on these products.


An overview of adapters

Adapters are implementations of specific interfaces provided by Rational Quality Manager for extensions. Three types of adapters can be implemented to extend lab management capabilities:

Inventory: Integrates
Rational Quality Manager with external applications that have inventory capability. With this integration, the lab manager can update lab resource data to display the latest lab resource configurations and new lab resources.
 
Automation: Integrates
Rational Quality Manager with external applications that have automation capability. With such integrations, the lab manager can run scripts, projects, or libraries that are configured in the external applications on remote lab resources
 
Virtualization:
Integrates Rational Quality Manager with an external application that manages virtual images and virtual machines.
 

These adapters are known as lab manager adapters, so that you can differentiate them from another special adapter type to extend the automation of running test scripts.


Tivoli Provisioning Manager adapter

The Tivoli Provisioning Manager adapter is used to integrate Rational Quality Manager with Tivoli Provisioning Manager. Rational Quality Manager uses the adapter to:

  • Import information about resources that have been discovered by Tivoli Provisioning Manager
  • Drive Tivoli Provisioning Manager to run an inventory of hardware and software that has been discovered
  • Run automation tasks or provision software (when it's available) for discovered computers

See Resources for a link to more details about how to configure and customize the Tivoli Provisioning Manager adapter


The SmarTest Asset Manager (STAM) solution

To reserve a lab resource with Rational Quality Manager the user takes one of two paths:

Fast path
To reserve a resource for immediate use, the user reserves a lab resource with the hardware and software configuration that matches the needs of the test.
 
Indirect path
The user creates a specific request for a lab resource, detailing the software and hardware configuration needed, and the Lab Manager processes request, identifies and prepares the lab resource to meet requirements, reserves the resource, and assigns it to the requester.
 

Figure 4 illustrates the flow of a reservation using the fast path.

Figure 4. The flow of a fast path reservation in Rational Quality Manager
Resource reservation flows from tester to manager

A fast path reservation can be used only to reserve resources for a single project. It cannot be used in test labs where resources are shared across teams and projects, because in that case, it's essential to know immediately which resources are available and to be guaranteed that lab resources will be available when expected. In addition, in a shared lab, the reservation process must be able to take into account any future hardware acquisition so as not to impact the success of the project.

The proposed STAM solution is to create a shared project, which is an extra project area to keep track of all the assets in the test lab, and to introduce and manage a new reservation process. This new process is a first-level reservation that enables testers and test leads to reserve one or more lab resources for their own projects in a secure way.

The STAM solution uses the Tivoli Provisioning Manager adapter to keep track of all the available physical resources in the test lab and the STAM adapter to manage the first-level reservation.

Figure 5 shows how this process works and illustrates the benefits of this solution.

Figure 5. Reservation flow in Rational Quality Manager with the STAM solution
First- and second-level reservations

In this diagram, assume that the shared lab project has already been linked with the Tivoli Provisioning Manager adapter, and the process of discovery and synchronization has been completed. All the physical resources available in the test lab have been discovered and represented in the Rational Quality Manager shared lab project as lab resources, as shown in Figure 6.

Figure 6. Resources discovered and imported into Rational Quality Manager
The inventory history shows the list imported

The flow of a reservation using the STAM solution includes several steps:

  1. Create a first-level reservation.
  2. Manage the first-level reservation request.
  3. Create a second-level reservation.

Step 1. Create a first-level reservation

When a tester needs a new lab resource for a test within a specific project, the tester logs in to the shared project and determines the availability of a lab resource with the requested characteristics.

The reservation process for a first-level reservation consists of three basic steps:

  1. The user creates a request that includes the following information:
    • The reservation start and end date
    • The hardware and software required
    • The Rational Quality Manager project name under which to hold the reservation
    • The email address of the tester for notifications about when the reservation has occurred and about any potential problems (optional)
    • In the comments section, include the project name and the user's email address using a naming convention (%project name% and $user email$)
  2. The system fulfills the request, assigning one or more lab resources to the request.
  3. As shown in Figure 7, the system reserves the lab resources for the requested timeframe for all testers and prevents other testers from reserving those resources for that period.
Figure 7. A sample of a fulfilled request for first-level reservation
Resource reservation for project TEM_Rome(BigFix)

Step 2. Manage the first-level reservation with the STAM adapter

After the first-level reservation has been created and fulfilled, it is managed by the STAM adapter. The test can explicitly request that the STAM adapter start managing new requests or the tester can wait for the Rational Quality Manager scheduler (if configured) to trigger it this action.

The STAM adapter manages requests with two main automation tasks and one minor task:

  • Manage reservation task
  • Delete reservation task
  • Export resource list task (minor)

The manage reservation task manages fulfilled reservations with the goal of making the resource available and in the target project, only for the reserved timeframe. This process is known as resource cloning, and follows this flows:

  • Look for any reservation that needs to be managed (for example, reservations that match the start date.)
  • Clone the lab resources in the target project, using the information in the comments section of the reservation request.
  • Add the lab resource to the shared project in the lab resource group that has the same name as the target project. If the group does not exist, create a new one.
  • Create a negative reservation for the just cloned resource in the target project, so that the resource appears to be available in the project only for the specified reservation timeframe.
  • Send an email to the user as specified in the comment section of the initial request (optional)

In Figure 8, the lab resource has been assigned to the TEM_Rome project for the entire year 2013.

Figure 8. The lab resource detail as it in the shared lab project
Resource reservation for TEM_Rome for 2013

After the cloning process, the lab resource shows in the target project TEM_Rome(BigFix, as illustrated in Figure 9. Note that the resource is available to the project for 2013, but it appears to be booked from 2014 on. The target project users can clearly see the period during which the resources are available to them and when the resources will be released to the community. Within the available time, they can use the second-level reservation to plan the use of the resources within the team.

Figure 9. Details of the cloned resource in the target project
Reservation of cloned resource -- booked for 2013

The delete reservation task manages the cleanup when a reservation ends. As result of this job, the cloned resource is removed from the target project and removed from the lab resource group, and an email is sent to the user (if specified). The resource is available again for new reservations.

The export lab resource list task creates a list of all lab resources in comment-separated value (csv) format and is sent by email to the requester.

Step 3. Create a second-level reservation

Once a lab resource has been cloned in a target project, users can manage and reserve it as needed within the specific project, using the built-in reservation process available in Rational Quality Manager. We refer to this reservation process as a second-level reservation.

Configuring the STAM adapter with Rational Quality Manager

To enable Rational Quality Manager to recognize the STAM adapter, add a new section to the integration_configuration.xml file, which is usually hosted in the RQM installation path\server\conf\qm directory.

The new section defines the STAM adapter as an implementation of the automation adapter. automationExtensionId. This adapter enables Rational Quality Manager to invoke automated tasks on resources discovered or deployed by the adapter. By this means, the STAM adapter creates or discovers a fake resource, smartest.romelab.it.ibm.com to be used as a target for any automation call. The STAM adapter also implements an inventory adapter, inventoryExtensionId.

In the <instance> tag in the code in Listing 1, you can see the configuration details for the adapter. You can modify the details to suit your needs:

projectArea
Defines a link with a specific project in Rational Quality Manager that will be the only one entitled to interact with the adapter
 
instance
Defines the different server instances the STAM adapter needs to deal with: the Rational Quality Manager server itself and the SMTP server for email notification
 
hostname and port
Defines where the servers reside and which port to use for communication
 
credential section
Provides the username and password to be used to establish the communication with servers
 

Note that in code, file names, or paths, the following abbreviations are used:

  • RQM: Rational Quality Manager
  • RTLM: Rational Test Lab Manager
Listing 1. The adapter configuration
<adapter>
    <name>STAM RTLM Integration Adapter</name>
    <version>1.0</version>
    <APIVersionSupported>1.0</APIVersionSupported>
    <inventoryExtensionId>com.ibm.tivoli.stam.rtlm.spi.inventory.STAMInventorySPI
</inventoryExtensionId>
    <automationExtensionId>com.ibm.tivoli.stam.rtlm.spi.automation.STAMAutomationSPI
</automationExtensionId>
    <pluginId>com.ibm.tivoli.stam.rtlm.spi</pluginId>
    <instance>
        <instanceId>STAMadapter</instanceId>
        <projectArea>Shared Project</projectArea>
        <hostname>my server name</hostname>
        <port>9443</port>
        <credential>
            <username>user</username>
            <password>password</password>
        </credential>
        <secure>true</secure>
        <smtpserver>
            <hostname>emea.relay.ibm.com</hostname>
            <credential>
                <username>user</username>
                <password>password</password>
            </credential>
        </smtpserver>
    </instance>
</adapter>

To complete the installation of the adapter, you need to restart Rational Quality Manager.


The SmarTest search web user interface

The capability to search for available resources enables the lab manager, the tester, and the capital expense manager to have a better understanding of resource usage:

  • What are most request resources?
  • What hardware and software is available in the test lab?
  • Who should define how to spend money to expand the test lab?

A new search interface, SmarTest search, substantially improves the ability to search lab resources, both virtual and physical. This search interface can be easily reached through the Related Site section in the Rational Quality Manager web user interface, as shown in Figure 10.

Figure 10. SmarTest search link on Rational Quality Manager
Where to find link to SmarTest search in RQM

Click to see larger image

Figure 10. SmarTest search link on Rational Quality Manager

Where to find link to SmarTest search in RQM

SmarTest search is based on the FLEX technology and provides three main views:

  • Lab resource charts: Pie graphs showing resources by characteristic such as host type, operating system, and so on
  • Lab resource list: List of lab resources that have the requested characteristics
  • Not reserved resource list: List of unreserved resources that match the requested characteristics

The Lab Resource Charts view

The Lab Resource Charts as shown in Figure 11, displays three charts of data aggregated for the major lab resource characteristics. This view can be used by the procurement administrator or by the IT administrator for a global overview of the distribution of hardware and operating systems in the lab.

For Figure 11 we have chosen the characteristics:

  • Host type (virtual or physical)
  • Operating system distribution
  • Operating system version

The same information can be filtered by project, so the project test lead can draw conclusions about the availability of lab resources and can proactively manage issues such as missing operating system versions.

Figure 11. Lab resource charts
Distribution by operating system, host type

To further filter the resources in the Host Type and Operating System Distribution charts, double-click on a slice of the pie chart. The filter action also affects the other charts dynamically, as shown in Figure 12, in which the Operating System Version chart shows results based on the filtering of previous charts, in the AND mode.

Figure 12. Charts that have been filtered further
Additional filtering in the Lab Resource Charts

Click to see larger image

Figure 12. Charts that have been filtered further

Additional filtering in the Lab Resource Charts

With a double-click in the Operating System Version chart, it is possible to display a list of lab resource properties, as shown in Figure 13.

Figure 13. List of lab resource properties for selected operating system version
Double-click reveals list of resource properties

Click to see larger image

Figure 13. List of lab resource properties for selected operating system version

Double-click reveals list of resource properties

The Lab Resource List and Not Reserved Lab Resource List views

The Lab Resource List and Not Reserved Lab Resource List views have the same properties. The Lab Resource List shows all lab resources, as illustrated in Figure 14. The Not Reserved Lab Resource List shows the lab resources that have not yet been reserved. This is a subset of the Lab Resource List.

Figure 14. Lab Resource List
Listed by name, group, operating system, and so on

Click to see larger image

Figure 14. Lab Resource List

Listed by name, group, operating system, and so on

All columns can be filtered based on their content. The content can be in free-form text, check box for operating system version, or slider bar for the memory, and so on. A search function enables you to search content across all columns.

Columns can be filtered based on their content. Each column provides a different type of filtering depending on the context. For example, some columns can be filtered with free-form text, others can have a check box (for operating system, for example) or the filter can be controlled with a slider bar (for memory, for example.) Figures 15, 16, and 17 show some examples of filters.

Figure 15. Example of free-form text filter
Filter by free-form text
Figure 16. Example of check-box filter
Filter by check box
Figure 17. Example of slider-bar filter
Filter by slider bar

Columns containing less important information (number of CPUs or OS kernel, for example) are hidden; however, clicking a check box enables you to view the hidden columns. A reserved resource is indicated by a red icon (a green icon means the resource is not reserved.) When clicked, a pop-up is displayed, showing the reservation period, as illustrated in Figure 18.

Figure 18.16 Pop-up reservation period
A red or green icon shows reservation status

When clicked, the Ping button reveals whether the resource is responding and exports of the information about the resource to an Excel file for offline reference.


Conclusion

The SmarTest solution is a proof-of-concept project, developed in the IBM Tivoli Lab in Rome. It's designed to streamline the product development cycle by integrating Rational and Tivoli products to provide a complete end-to-end system for quality assurance. The SmarTest Asset Manager is just one building block of the SmarTest solution.

To find out more about other building blocks, look into the benefits of using Rational Quality Manager with IBM SmartCloud Provisioning to easily integrate your virtual lab within your test management (see Resources for a link to the developerWorks article, "Extend Rational Quality Manager to manage lab assets.")

Resources

Learn

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
ArticleID=953157
ArticleTitle=Use Rational Quality Manager to manage lab assets in shared lab
publish-date=11192013