Impact analysis for event-based systems using change patterns

Simon Tragatschnig, Huy Tran, Uwe Zdun · 2014

Being composed of highly decoupled components, event-driven architectures are promising solutions for facilitating high flexibility, scalability, and concurrency of distributed systems. However, analyzing, maintaining, and evolving an event-based system are challenging tasks due to the intrinsic loose coupling of its components. One of the major obstacles for analyzing an event-based system is the absence of explicit information on the dependencies of its components. Furthermore, assisting techniques for analyzing the impacts of certain changes are missing, hindering the implementation the changes in event-based architectures. We presented in this paper a novel approach to supporting impact analysis based on the notion of change patterns formalized using trace semantics. A change pattern is an abstraction of the modification actions performed when evolving an event-based system. Based on this formal foundation, we introduce supporting techniques for estimating the impact and detecting undesired effects of a particular system evolution, such as dead paths, deadlocks, and livelocks. Quantitative evaluations for event-based systems with large numbers of components show that our approach is feasible and scalable for realistic application scenarios.

Read the paper · More papers on PaperTik