Change Patterns for Supporting the Evolution of Event-Based Systems

As event-driven architectures consist of highly decoupled components, they are a promising solution for facilitating high flexibility, scalability, and concurrency of distributed systems. However, the evolution of an event-based system is often challenging due to the intrinsic loose coupling of its components. This problem occurs, on the one hand, because of the absence of explicit information on the dependencies among the constituting components. On the other hand, assisting techniques for investigating and understanding the implications of changes are missing, hindering the implementation and maintenance of the changes in event-based architectures. Our approach presented in this paper aims at overcoming these challenges by introducing primitive change actions and higher-level change patterns, formalized using trace semantics, for representing the modification actions performed when evolving an event-based system. Our proof-of-concept implementation and quantitative evaluations show that our approach is applicable for realistic application scenarios.

[1]  Stefanie Rinderle-Ma,et al.  Change Patterns and Change Support Features in Process-Aware Information Systems , 2007, Seminal Contributions to Information Systems Engineering.

[2]  Tharam S. Dillon,et al.  On the Move to Meaningful Internet Systems, OTM 2010 , 2010, Lecture Notes in Computer Science.

[3]  Christian S. Jensen,et al.  Capturing Temporal Constraints in Temporal ER Models , 2008, ER.

[4]  Peter R. Pietzuch,et al.  Distributed event-based systems , 2006 .

[5]  Uwe Zdun,et al.  Event-Driven Actors for Supporting Flexibility and Scalability in Service-Based Integration Architecture , 2012, OTM Conferences.

[6]  Stefanie Rinderle-Ma,et al.  On the Formal Semantics of Change Patterns in Process-Aware Information Systems , 2008, ER.

[7]  Marlon Dumas,et al.  Modelling Flexible Processes with Business Objects , 2009, 2009 IEEE Conference on Commerce and Enterprise Computing.

[8]  Felix C. Freiling,et al.  Modular event-based systems , 2002, The Knowledge Engineering Review.

[9]  Marijn Janssen,et al.  Designing, formalizing, and evaluating a flexible architecture for integrated service delivery: combining event-driven and service-oriented architectures , 2011, Service Oriented Computing and Applications.

[10]  Manfred Reichert,et al.  Capturing variability in business process models: the Provop approach , 2010 .

[11]  Wil M. P. van der Aalst,et al.  Process Flexibility: A Survey of Contemporary Approaches , 2008, CIAO! / EOMAS.

[12]  David S. Rosenblum,et al.  Design and evaluation of a wide-area event notification service , 2001, TOCS.

[13]  Wil M. P. van der Aalst,et al.  Declarative workflows: Balancing between flexibility and support , 2009, Computer Science - Research and Development.

[14]  Peter Dadam,et al.  Enabling Adaptive Process-Aware Information Systems with ADEPT2 , 2008, Handbook of Research on Business Process Modeling.

[15]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[16]  Farhad Arbab,et al.  Coordination Models and Languages , 1998, Adv. Comput..

[17]  Manfred Reichert,et al.  Enabling Flexibility in Process-Aware Information Systems , 2012, Springer Berlin Heidelberg.

[18]  Manfred Reichert,et al.  Enabling Flexibility in Process-Aware Information Systems: Challenges, Methods, Technologies , 2012 .

[19]  Shari Lawrence Pfleeger,et al.  Software metrics (2nd ed.): a rigorous and practical approach , 1997 .

[20]  Manfred Broy,et al.  Trace-Oriented Models of Concurrency , 2001, Handbook of Process Algebra.