Building a Configuration Management (CM) Capability for Test

[article]

commands when using the CM technology. For test items, version control is the basic level of control while change control is the advanced level of control.

·       Define a problem management process/procedure:  This helps the testers track defects. This is typically already in place, but should not be forgotten. Also, if there is not already an automated problem management (defect tracking) technology in place, this should be considered.

·       Define a change control process/procedure: This helps the testers understand the change procedure for test items under formal change control (if desired). For test items, version control is the basic level of control while change control is the advanced level of control, but requires more involvement from the test team. This may include performing change control training to ensure everyone understands the process.

·       Establish the CM technology: This includes installing the CM tool, setting up a working infrastructure, and setting up the testers’ workspaces in which they can make changes to test items.

·       Import all test items into the CM technology (repository): This focuses on identifying all test items (some of which should have been identified in the SCM analysis task) and either importing or checking them into the CM technology.

·       Perform CM training: Train all applicable testers in the usage of the CM technology (how to checkout/checkin, how to label related test items, etc.). Conduct a CM system readiness review. Prior to converting to the CM infrastructure (technology and processes), meet with the test team to establish their readiness for using the CM technology and processes.

·       Cut-over to the CM infrastructure: In part, this is a milestone when the test team begins using the CM infrastructure. However, the other part is to be ready to provide intensive CM support for the next 2-4 weeks while the test team gets used to the new CM infrastructure.

Another task where CM may help the test team is participating in the selection of a test automation technology. The CM person can contribute by investigating the integration with the CM technology. This is particularly useful since many automated test technologies produce numerous test scripts, data, and results. It’s good to have the ability to version control them as they get generated and associate related test items.

Summary
Test teams must manage more and more test items every day. CM professionals should be ready to help the test team when they are looking to build a CM capability for their test items. A solid CM process and technology to support a test team will help them manage their changes. This is particularly useful when test scripts must align with the ever-changing requirements. Any change to requirements precipitates a change to the code, which must have a test script or test case to validate the change. If the test script is not controlled, the test script may test too little and leave a gap in testing.   Inversely, it may test too much and incorrectly showing errors. CM can help solve this issue and provide test teams with a solid change infrastructure that reduces the risks associated with a lack of control.

References

1. Chapter 4. “Establish an SCM Infrastructure for an Application” Software Configuration Management Implementation Roadmap , by Mario E. Moreira, 2004, Wiley, Ltd. Publishing

3. “Surviving the Top 10 Challenges of Software Test Automation” by Randall W. Rice, Rice Consulting Services, Inc, published in CrossTalk: The Journal of Defense Software Engineering, May 2002.

3. “Configuration Management – It’s Not Just for Source Code” Ralph Capasso, Rational Software, May 23, 2003.

 

About the author

Mario  Moreira's picture Mario Moreira

Mario Moreira is a Columnist for the CM Journal, a writer for the Agile Journal, an Author, an Agile and CM expert for CA, and has worked in the CM field since 1986 and in the Agile field since 1998. He has experience with numerous CM technologies and processes and has implemented CM on over 150 applications/products, which include establishing global SCM infrastructures. He is a certified ScrumMaster in the Agile arena having implemented Scrum and XP practices. He holds an MA in Mass Communication with an emphasis on communication technologies. Mario also brings years of Project Management, Software Quality Assurance, Requirement Management, facilitation, and team building skills and experience. Mario is the author of a new book entitled “Adapting Configuration Management for Agile Teams” (via Wiley Publishing). It provides an Agile Primer and a CM Primer, and how to adapt CM practices for Agile Teams. Mario is also the author of the CM book entitled, “Software Configuration Management Implementation Roadmap.” It includes step-by-step guidance for implementing SCM at the organization, application, and project level with numerous examples. Also consider visiting Mario’s blog on CM for Agile and Agile adoption at http://cmforagile.blogspot.com/.
 

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!