Desktop version

Home arrow Computer Science

  • Increase font
  • Decrease font

<<   CONTENTS   >>

Change Impact Analysis in Software Versioning

Issues and Challenges

Most software modifications involve massive complexity as the effect of such modifications cannot be accurately predicted in advance. However, with shifts in consumption patterns, evolving technologies force frequent alterations in the code. Instead of these changes, the need for an accurate evaluation of the impact of such modifications over the current functioning is strongly observed. Change Impact Analysis is described as the detection of the possible impact due to the code modification on the single section or more sections of an application. In the case of safety-critical domains with large applications, code modifications can expose the code to attacks, causing a system bug down. In such an environment, the pace of accurately predicting the impact on individual components or the whole system plays a vital role. Detecting the components susceptible to changes remains the key functioning of a Change Impact Analysis.

Areas of Change Impact Analysis Implementation

When any modification request is initiated, the change monitoring board allocates an evaluator to analyse the requested modification. The evaluator evaluates the importance of the proposed modification in the business aspect. Business Impact Analysis (BIA) (see Figure 3.1) is initially performed to ensure whether the proposed modification can add additional business value or enhance efficiency

Change Impact Analysis process

Figure 3.1 Change Impact Analysis process.

or project quality or a combination of these outcomes. In the next stage, the evaluator conducts Change Impact Analysis to detect the ripple impact of the proposed modification [18].

In addition, Change Impact Analysis is used to detect change factors, areas highly impacted by the modification, which is often based on the knowledge gained from the history of requirements. It also observes the outcomes of Change Impact Analysis and extends the analysis to further requirements including safety, size, economics, adaptability and robustness, along with human factors. Considering all the derived factors and their possible impacts, decision over implementing the change or denying it is made.

Alternatively, Change Impact Analysis is implemented when the evaluator attempts to understand the ripple effects and cost analysis of the proposed change. This process enables the strategy formulation team to understand delivery times and to promote possible additions in the releases over the stipulated time period [50].

Analysing different models and primary software modification activities, we can conclude that they are focused on reviewing programs before and after the proposed change, incorporating modifications within the available framework and ensuring proper functioning of the system after the change implementation. All these functions of the change monitoring board enable it to understand the project in the context of change [51]. Further, as [52] suggests, the change implementation process should estimate the ripple effects of change and ensure nothing is overlooked.

Following the successful incorporation of the proposed change, rigorous testing has to be performed. Test cases which require further examination or cases requiring design changes are identified in the process [52].

The Approach of Change Impact Analysis

This method has many benefits. Primarily, this method assists the change control board (CCB) and managers and is projected for detecting the impacted artefact components. It comprises associations amid components in software procedure and detects impacted components in the path at the time of traverse. Moreover, it could be performed automatically, enabling project managers to lessen the effort in detecting change or varying impacts.

When a change request is submitted by an originator towards an ongoing project, the control board of change allocates an assessor for variation. Here, the assessor performs Impact Analysis of business for detecting change value for the business and the project. Further, the assessor also verifies whether the projected request for change is completed formally and understood; this stage might occur within less time. Here, the assessor might then detect the change value towards business in the following ways:

  • • Whether the projected change could be assisted by the case of business or by regulatory or legal pre-requisite.
  • • Which consumer pre-requisite improvement chapters, subareas of business and performance might be developed and enhanced.
  • • Whether the projected change makes issues with current pre-requisites.
  • • Whether there were any conflicting change requests submitted already.
  • • Whether the requested change forms any gridlocks or bottlenecks of business.
  • • Whether the requested change could be deemed expensive, intricate, controversial or confusing.

Even though the assessor might always decide before consulting with CCB in an instance of a positive solution to the query, the requested change might be submitted to attain the objectives of the project in a more effective way and might enable faster cooperation. Figure 3.2 signifies the procedure of Impact Analysis of business.

Business Impact Analysis process

Figure 3.2 Business Impact Analysis process.

After completing the Impact Analysis of business, the assessor performs Impact Analysis of change for specifying the elements influenced by the change request. Here, in this phase, the assessor is required to:

  • • Signify what has been devised primarily in the application of the project: cost item name or activity, budget line and present situation and a package of work.
  • • Detect a suitable method for variation.
  • • Convert the projected change into the specification of the system change.
  • • Extract the data from source information and transfer it into the internal repository of representation.
  • • Improve the predictions of resources on the basis of deliberations like intricacy of software and size.
  • • Assign the resources for reviewing the change request impact.
  • • Initiate the activity, which is direct for evaluating the price and scope and scheduling the change influence.
  • • Update requested change with the analysis of impact and predict scheduled price, effort and scope.
  • • Describe the changes of request and justify them for variation or change: describe the pre-requisites of changes and purpose, and signify from w'here the changes of sources would be recovered, if associated, by signifying the amount of line of the budget, price item and work package.
  • • Describe the requested change’s impact on the application of the project.

Critical Issues of Change Impact Analysis

A significant limitation of Change Impact Analysis observed in recent years is the data source volume. Despite the Change Impact Analysis being implemented in multiple forms by several studies, no standard definition exists. For instance, IEEE has no mention of Change Impact Analysis in its glossary and regards it as a conceptbased analysis.

Furthermore, ripple effect and predicting modification and its effectiveness of Change Impact Analysis implementation remain tough challenges. In addition, identifying the suitable method of Change Impact Analysis remains the most dangerous stage of the entire implementation process. Other problems in executing Change Impact Analysis include the need to obtain and organize all the possible consequences of change and manage these consequences appropriately [17]. On the other hand, in small decisions, Change Impact Analysis can be implemented as a simple desk work [53], and these organizations rarely attempt to understand Change Impact Analysis.

Apart from these limitations, unavailability of dimensions for evaluating Change Impact Analysis approach performance with other approaches is also one of the shortcomings. Further, it is difficult to understand if the existing information is adequate to compare Change Impact Analysis approach [54]. Accordingly, it remains challenging to detect those works contributing to Change Impact Analysis. Further, identifying the most suitable analysis approach for the specific software is related to software modifications.

Observing modification consequences by relationship analysis is also a complex task. Two strategies are used for Change Impact Analysis: inductive and deductive. The inductive approach iteratively navigates program life-cycle object relation data from storage and detects parameters with considerable effects. On the other hand, the deductive strategy is engaged in deciding if the life-cycle object has been impacted by the modification [16].

Role of Relationships in Change Impact Analysis

Change Impact Analysis remains the essential technique for handling modifications. The concept aims to detect the relationships among components. On the basis of dependence or independence, Change

Impact Analysis attempts to observe the effect of the proposed change to the remaining artefacts. As discussed earlier, the requirement framework comprises artefacts and associated relationships between these artefacts. Typically, the relationships in Change Impact Analysis are categorized into four kinds - aggregation relationship, composition relationship, necessary impact and supplementary impact.

Of the four types of relationships, aggregation refers to an artefact within another artefact. The aggregation relationship depicts the time period in which one artefact is independent of the entire artefact [55].

Impact relationships depict if the source artefact is a compulsory feeding parameter to generate the target artefact. Existing impact relationship value entails that the target is compulsorily impacted to any modifications made to the source [55].

Supplementary impact relationships depict if the source acts as a supplementary parameter for generating the target. Existing relationship value implies that any changes in the source may not impact the target. Accordingly, these relationships enable us to understand the effect of proposed modification accurately so as to decide whether to implement the modification or not.

Factors to Consider for Evaluating Change Impact Analysis Impact

BIA Analysis

  • • Verify the suggested modification fits into business strategy and/or meets regulatory norms
  • • Identify sections that will be impacted due to the proposed modification
  • • Verify if the proposed change is compatible with the existing framework
  • • Check if any conflicting modifications already exist
  • • Assess possible modification risks and potential roadblocks
  • • Evaluate the extent of costs involved and the complexity of the modification and check if any controversies exist

Change Impact Analysis

  • • Pre-determine the project name, costs involved, budgets and current conditions
  • • Determine the acceptable procedure for change implementation
  • • Delve down on the suggested modification into system modification specifications
  • • Obtain data from the source code and modify it into the internal storage
  • • Plan resource requirements on the basis of size, complexity and time involved
  • • Allocate required resources to evaluate Change Impact Analysis impact
  • • Redesign the modification request based on estimates of scope, overheads and time period
  • • Obtain details on the needed modifications and sources being assigned
  • • Analyse Change Impact Analysis impact on implementation


As discussed in the section 3, Change Impact Analysis involves iterative sequences. In particular, handling modifications is based on modifying decisions on the basis of requirements. Modification decision varies with outcomes of Change Impact Analysis. As the factors affecting the change are interrelated, any modifications in the project re-impact these interlinked factors.

<<   CONTENTS   >>

Related topics