In the previous posts, I explained about the various concepts surrounding Test data creation and maintenance, namely Data Subset, Data Masking, Test Data Ageing, Test Data Refresh, Data Archive and Gold Copy. In this post, I will focus on the life cycle of Test Data.
So what is meant by a life cycle. Life Cycle is the various stages that a product/service/artifact goes through before attaining its end of life. So a Test Data Cycle explains the various stages through which the test data goes through in order to reach its end of life or alternatively start a recurring life cycle.
So similar to a test life cycle or a software development life cycle, Test Data goes through the following phases. They are
Requirement Gathering & Analysis
This is pretty straightforward. In this phase, the test data requirements pertaining to the test requirements are gathered. They are categorized into various heads
- Pain Areas
- Data Sources
- Data Security/Masking
- Data Volume requirements
- Data Archival requirements
- Test Data Refresh considerations
- Gold Copy considerations
This phase is typically carried out in the form of a TDM assessment or Test Data Assessment. Since that topic requires separate attention, I will dedicate a blog post to it.
As the name indicates, based on the requirement analysis an appropriate solution is designed to solve the various pain areas in the Test Data. After looking at the problem scale and the feasible solution, a suitable test data process is suggested and we would need to choose between an In-House solution or a Commercial Product or a combination of both. Also in this phase, an effort estimate is done for the entire project. And a test data plan/strategy is also developed that will propose a direction that the project will take and what approaches will be followed to solve the test data problems. That could be either in the form of process improvements or in the form of an automated solution.
Test Data Creation
In this phase, based on the Test Data Strategy, the solution is developed and test data is created through various techniques depending on the project test data requirements. It can be a combination of manual and automated techniques. Automation techniques might include In-house tools or commercial products. It can be either a refresh from production or generation from scratch or a hybrid approach. The output at the end of this phase will be the actual test data required for the project.
Test Data Validation
In this phase, the created test data is validated against the business requirements. This can be done by Business Analysts or using automated tools if the volumes are very high.
Test data maintenance
This is similar to a test maintenance phase, where there might be requests for changes in the test data according to the changes in the tests. Hence again the entire life cycle is followed for maintenance of the test data. This might include creation of Gold Copy for future use, Archives for size management, updating of Gold Copy, Restoration of older data for testing, etc.
The following figure depicts the Test Data Life Cycle
Hope you got an idea of how the test data flows through a life cycle. Hope you found this informative. Thanks for reading. Comments are welcome!
About the Author
Rajaraman Raghuraman has nearly 8 years of experience in the Information Technology industry focusing on Product Development, R&D, Test Data Management and Automation Testing. He has architected a TDM product from scratch and currently leads the TDM Product Development team in Cognizant. He is passionate about Agile Methodologies and is a huge fan of Agile Development and Agile Testing. He blogs at Test Data Management Blog & Agile Blog. Connect with him on Google+