Dorn, C., Waibel, P., Dustdar, S., (2014) Architecture-Centric Design of Complex Message-Based Service Systems. In Proceedings of the 12th International Conference on Service-oriented Computing (ICSOC 2014), Nov 2014, Paris, Springer LNCS [Supporting Online Material on this blog]
Abstract: Complex, message-based service systems discourage central execution control, require extremely loose coupling, have to cope with unpredictable availability of individual (composite) services, and may experience a dynamically changing number of service instances. At the topmost level, the architecture of such a complex system often follows a messaging style most naturally.
A major problem during the design of these systems is achieving an overall consistent configuration (i.e, ensuring intended message routing across producers, consumers, and brokers). While orchestration or choreography-based approaches support the design of individual composite services along a workflow-centric paradigm, they are an awkward fit for specifying a message-centric architecture.
In this paper, we present an architecture-centric approach to designing complex service systems. Specifically we propose modeling the system’s high-level architecture with an architecture description language (ADL). The ADL captures the message-centric configuration which subsequently allows for consistency checking. An architecture-to-configuration transformation ensures that the individual deployed services follow the architecture without having to rely on a central coordinator at runtime. Utilizing our provided tool support, we demonstrate the successful application of our methodology on a real world service system.
Software Prototype by Philipp Waibel for download at: https://bitbucket.org/pwaibel/archstudio-4-msa_extension