A Static Change Impact Analysis Approach based on Metrics and Visualizations to Support the Evolution of Workflow Repositories

2016 ◽  
Vol 13 (2) ◽  
pp. 74-101
Author(s):  
Gustavo Ansaldi Oliva ◽  
Marco Aurélio Gerosa ◽  
Fabio Kon ◽  
Virginia Smith ◽  
Dejan Milojicic

In ever-changing business environments, organizations continuously refine their processes to benefit from and meet the constraints of new technology, new business rules, and new market requirements. Workflow management systems (WFMSs) support organizations in evolving their processes by providing them with technological mechanisms to design, enact, and monitor workflows. However, workflows repositories often grow and start to encompass a variety of interdependent workflows. Without appropriate tool support, keeping track of such interdependencies and staying aware of the impact of a change in a workflow schema becomes hard. Workflow designers are often blindsided by changes that end up inducing side- and ripple-effects. This poses threats to the reliability of the workflows and ultimately hampers the evolvability of the workflow repository as a whole. In this paper, the authors introduce a change impact analysis approach based on metrics and visualizations to support the evolution of workflow repositories. They implemented the approach and later integrated it as a module in the HP Operations Orchestration (HP OO) WFMS. The authors conducted an exploratory study in which they thoroughly analyzed the workflow repositories of 8 HP OO customers. They characterized the customer repositories from a change impact perspective and compared them against each other. The authors were able to spot the workflows with high change impact among thousands of workflows in each repository. They also found that while the out-of-the-box repository included in HP OO had 10 workflows with high change impact, customer repositories included 11 (+10%) to 35 (+250%) workflows with this same characteristic. This result indicates the extent to which customers should put additional effort in evolving their repositories. The authors' approach contributes to the body of knowledge on static workflow evolution and complements existing dynamic workflow evolution approaches. Their techniques also aim to help organizations build more flexible and reliable workflow repositories.

Author(s):  
Sha Ma ◽  
Bin Song ◽  
Wen Feng Lu ◽  
Cheng Feng Zhu

Engineering changes are inevitable in a product development life cycle. The requests for engineering changes can be due to new customer requirements, emergence of new technology, market feedback, or variations of components and raw materials. Each change generates a level of impact on costs, time to market, tasks and schedules of related processes, and product components. Change management tools available today focus on the management of document and process changes. Assessments of change impact are typically based on the “rule of thumb”. Our research has developed a methodology and related techniques to quantify and analyze the impact of engineering changes to enable faster and more accurate decision-making in engineering change management. Reported in this paper are investigations of industrial requirements and fundamental issues of change impact analysis as well as related research and techniques. A framework for a knowledge-supported change impact analysis system is proposed. Three critical issues of system implementation, namely integrated design information model, change plan generator and impact estimation algorithms, are addressed. Finally the benefits and future work are discussed.


Author(s):  
Nashat Mansour ◽  
Nabil Baba

The number of internet web applications is rapidly increasing in a variety of fields and not much work has been done for ensuring their quality, especially after modification. Modifying any part of a web application may affect other parts. If the stability of a web application is poor, then the impact of modification will be costly in terms of maintenance and testing. Ripple effect is a measure of the structural stability of source code upon changing a part of the code, which provides an assessment of how much a local modification in the web application may affect other parts. Limited work has been published on computing the ripple effect for web application. In this paper, the authors propose, a technique for computing ripple effect in web applications. This technique is based on direct-change impact analysis and dependence analysis for web applications developed in the .Net environment. Also, a complexity metric is proposed to be included in computing the ripple effect in web applications.


Author(s):  
Walid Ben Ahmed ◽  
Mounib Mekhilef ◽  
Michel Bigand ◽  
Yves Page

Due to the increasing complexity of the modern industrial context in an evolutionary environment, several changes (e.g. new technology, new system, human errors, etc.) may affect road safety. Analyzing the change impact on design requirements is a complex task especially when it deals with complex systems such as Vehicle Safety Systems (VSS). To handle a change impact analysis in road safety field, VSS designers require a specific knowledge stemmed from accidentology. In this paper, we develop a multi-view model of the road accident, which is crucial to extract the required knowledge. Indeed, this multi-view model allows the analysis of the impact of a given change on the Driver-Vehicle-Environment system from different viewpoints and on different grain of size. This allows an efficient approach to detect exhaustively the perturbations due to the change and thereby to anticipate and handle their effects. We use a Knowledge Engineering approach to implement the multi-view model in a Knowledge-Based System providing accidentologists and VSS designers with an efficient tool to carry out an analysis of change impact on analysis design requirements.


Author(s):  
Chetna Gupta ◽  
Varun Gupta

This paper presents an approach to prioritize program segments within the impact set computed using functional call graph to assist regression testing for test case prioritization. The presented technique will first categorize the type of impact propagation and then prioritize the impacted segments into higher and lower levels based on propagation categorization. This will help in saving maintenance cost and effort by allocating higher priority to those segments which are impacted more within the impacted set. Thus a software engineer can first run those test cases which cover segments with higher impacted priority to minimize regression test selection.


2020 ◽  
Vol 9 (1) ◽  
pp. 2232-2236

Software Applications needs to be changed constantly as per the requirements of the user or the client. This phase is known as the maintenance phase of a software application. On an average, the cost of software maintenance is more than 50% of all Software Development Life Cycle phases. The main purpose of software maintenance is to modify and update software application after delivery in order to correct faults, enhance the functionality or to improve performance. When the change request (CR) is received from the client the developers have to work upon the request. If the Change Request requires any modification, the application developers have to identify the risk of modifying the program or application before making the actual change. But there is a high chance of making errors in modifying the existing software. Change Impact analysis (CIA) is one of the error prevention technique. It is the process to find the effect of a change in a software application before the changes are made. By equipping developers with automated CIA tools to identify the risk of modifying the application we can minimize the errors. Impact analysis can be done based on the change request. This paper aims at developing a change impact analysis tool which can be used by the developer during the software maintenance phase. This proposed tool -Strategic Dependency Tracker (SDepTrac) helps the programmer/ developer to know “What part of the program (of a Java application) is impacted if a change is to be made to a particular variable / method / class?” with more accuracy compared to the existing tools. It displays the number of lines affected, classes and methods which are going to be affected, if we perform the requested change by considering the data dependency, control dependency and the semantic dependency. Thus the tool helps the developer to identify the impact set and minimizes the human errors and also saves time during the Maintenance phase.


2018 ◽  
Vol 2018 ◽  
pp. 1-13 ◽  
Author(s):  
Wei Wang ◽  
Yun He ◽  
Tong Li ◽  
Jiajun Zhu ◽  
Jinzhuo Liu

The paper presents an approach to combine multiple existing information retrieval (IR) techniques to support change impact analysis, which seeks to identify the possible outcomes of a change or determine the necessary modifications for affecting a desired change. The approach integrates a bag-of-words based IR technique, where each class or method is abstracted as a set of words, and a neural network based IR technique to derive conceptual couplings from the source code of a software system. We report rigorous empirical assessments of the changes of three open source systems: jEdit, muCommander, and JabRef. The impact sets obtained are evaluated at the method level of granularity, and the results show that our integrated approach provides statistically significant improvements in accuracy across several cut points relative to the accuracies provided by the individual methods employed independently. Improvements in F-score values of up to 7.3%, 10.9%, and 17.3% are obtained over a baseline technique for jEdit, muCommander, and JabRef, respectively.


Sign in / Sign up

Export Citation Format

Share Document