Importance of Test Impact analysis (TIE) in Agile Testing Projects
In agile projects, it is mandatory to anticipate the impact of changes from both DEV and QA perspective on the existing functionality and dependency components throughout the application development cycle.
Change impact analysis proactively estimates the efforts required upfront thereby reducing the QA -Business requirements while calculating end-of-sprint commitment to avoid delayed deliverables.
Therefore, Impact Analysis analyzes the impact of changes before the product or application is deployed by providing valuable information about all the aspects of the system that may be influenced due to a change in a particular section or functionality.
Requirements often change during the application development lifecycle and as new functionality is frequently added into the application or product, it is essential to determine the extent of the impact caused by these additions. There might be test cases, errors, and even source code impacted. In simple terms, change impact analysis will help you measure the impact when your requirements change.
The process of change impact analysis can be done in two ways:
In informal way, the changes are anticipated in the software code by using the developers’ and testers’ expertise based on their prior knowledge of the system.
Informal analysis can be done even before the actual development phase begins.
During Requirement Phase:
At the code and test level:
In some instances, pre-existing modules which were previously tested offers a possibility to uncover tests that impacts the new functionality.
- Static code analysis during the code review process will reveal any modified or new code that has been added since the previous tests were completed
- Perform daily build and smoke tests which is a kind of dynamic analysis. Dynamic analysis is the testing and evaluation of a program by using real-time data with an objective to uncover vulnerabilities in a runtime environment instead of taking the code offline
- Regression tests that do not touch the new functionality could be removed for the test run