^

Change Impact Analysis (CIA)

Change Impact Analysis (CIA) in embedded software projects

Change Impact Analysis (CIA) is used to assess the potential effects of changes made to a system. It can be particularly important in large-scale software development projects, where even a seemingly small change can lead to unintended consequences that disrupt the entire system.
Change impact analysis is related to both requirements traceability, and to change-based testing.

What is Change Impact Analysis (CIA)?

Change Impact Analysis (CIA) is a systematic approach used to understand the ripple effects of proposed changes and make informed decisions about whether to proceed with those changes, considering the potential risks, costs, and benefits.

What are the aims of Change Impact Analysis (CIA)?

The main goals of Change Impact Analysis are:

  • Dependency identification: The identification of all interconnected code components that might be affected by a proposed change. This helps in understanding the scope of the change and its potential implications. Automated requirements traceability fulfils this aim seamlessly.
  • Risk assessment: The evaluation of risks associated with the proposed change. These risks could include system failures, performance degradation, security vulnerabilities, or unintended side effects.
  • Assessment of resource implications: Understanding the impact of a change allows the impact on schedules and resources to be estimated.
  • Prioritization: Having a clear understanding of resource implications for proposed changes enables informed decision making regarding what should be implemented, and when. By extension, different approaches to achieving the same ends can also be compared.
  • Issue mitigation: With a clear understanding of the potential consequences, developers are sufficiently forewarned to proactively address issues and devise strategies to mitigate any potential negative effects.
  • Documentation: The analysis process generates documentation that records the relationships between different components and the potential effects of changes.

How can automated tools help with Change Impact Analysis (CIA)?

Suggesting a change to a system is the easy part. Such a suggestion could stem from a genuine business requirement, customer input, or the necessity to stay competitive. To ensure the effectiveness of a change, it must be associated with requirements and closely monitored to confirm its adherence to the intended course.
Understanding how a modification might influence diverse stakeholders can be a complex analysis, and any oversight could result in significant expenses. The greater the level of human involvement, the greater the risk of damaging consequences for quality, safety, and compliance. Automated change impact analysis helps by minimising the scope for human error, and by providing prompt answers to “what if?” questions. 
Automated requirements traceability is a prerequisite for automated change impact analysis.  

Change Impact Analysis (CIA) and project baselines in embedded software development

A baseline is a reference point in software development – a “line in the sand”. It may be marked by the completion of software configuration item(s), the end of a development phase, or by formal approval. Conversely, it may be timed quite arbitrarily to provide a “snapshot” as a reference point to monitor progress – perhaps weekly or monthly.

Change Impact Analysis (CIA) tools for embedded systems from LDRA

The LDRA tool suite supports development teams who are working in a formal development process to improve code quality and maintainability, including static and dynamic analysis, coding standards compliance, and unit, integration, and system testing.
TBmanager is a component of the LDRA tool suite. It is a role-based requirements management tool that supports team members in their work on allocated activities and links the resulting code and verification artefacts back to higher level objectives. Project baseline analysis reporting exposes the likely impact of any proposed changes on other requirements, the code base, and verification and validation rework.

TBmanager highlights the effects of changed requirements and changed code. So, if a stakeholder specifies a new or changed requirement, then the impact can be assessed – and conversely, if a failed test results in changed code, then the implications of that change can also be shown. 
TBrun is another component of the LDRA tool suite. It is a unit/integration test tool, providing a complete verification environment for the automated generation and management of test harnesses and unit/integration tests. The regression test facilities it provides are a significant element of the tool suite’s support for requirements traceability. 
TBevolve is an optional plug-in for use with the LDRA tool suite. It enables project teams to monitor the impact of code changes on their testing process. By comparing the current code base with a baseline copy, it highlights changes and reports on any untested source code impacting code coverage statistics. 

Additional information and training materials

Change Impact Analysis pdf free downloads

Change Impact Analysis further information

FREE 30 Day
TRIAL

Email Us

Email: info@ldra.com

Call Us

EMEA: +44 (0)151 649 9300

USA: +1 (855) 855 5372

INDIA: +91 80 4080 8707

Connect with LDRA