1-Click Impact Analysis
- Accurately predict the impact of code changes on related projects, databases, classes, and methods.
- Look beyond your current project to find other projects that could be impacted by a code change.
What is software change impact analysis?
Software developers are painfully aware of the unexpected software behaviors that can result from seemingly innocuous code changes. Often, these behaviors are only revealed after the code changes have been put into production, despite thorough unit-testing. Predicting the potential impact of code changes becomes significantly more complicated as the codebase grows and new developers are added to the team.
Various techniques have been used to mitigate or even predict the impact of changes made during software development. These techniques are generally known as software change impact tools. However, most of these are limited to source code scans and, therefore, don’t go far enough or deep enough to truly reveal all potential impacts that could result from a code change.
How can 1-Click Change Impact Analysis help me?
The CodeLogic 1-Click Change Impact Analysis enables developers to see what uses an item, such as a class, method or database column, even if that use is in another project, service, or application. With knowledge of everything that depends on an item, developers can quickly answer key questions such as:
- If I change the behavior of this method, will someone on another team need to be notified?
- When I change the data-type of this column, what are the mapped fields and methods that I should check?
- Is this item used anywhere, or is it safe to delete?
- There is an open-source library method we use that has a security is vulnerability. Where do we use it?
In the change impact analysis example above, the right-most element “AbstractLayoutTask” has been selected for Impact Analysis. It is a base class extended by five classes. One of those classes, “AbstractPartitionLayoutTask,” is extended by additional classes. In total, a change to the AbstractLayoutClass could impact 14 classes spread across three packages, each of which is backed by its own repository. All of these come together within a single application named “Cytoscape.”
The CodeLogic change impact analysis capability is also available to access from within developer IDEs using available plugins.
CodeLogic tracks both “Contained By” and “Referenced By” relationships in its impact analysis. The application contains multiple packages, which themselves contain classes containing methods. A method may be referenced (called from) another method. Addressing both contained and referenced code relationships is critical to truly understand the impact of any code changes. By tracking both reference types, CodeLogic’s Change Impact Analysis presents a more holistic view of the impact of a change.