Middleware provides infrastructure support for creating dependable software systems. A specific middleware implementation plays a critical role in determining the quality attributes that satisfy a system’s dependability requirements. Evaluating a middleware architecture at an early development stage can help to pinpoint critical architectural challenges and optimize design decisions. In this paper, we present a method and its application to evaluate middleware architectures, driven by emerging architecture patterns for developing self-managing systems. Our approach focuses on two key attributes of dependability, reliability and maintainability by means of fault tolerance and fault prevention. We identify the architectural design patterns necessary to build an adaptive self-managing architecture that is capable of preventing or recovering from failures. These architectural patterns and their impacts on quality attributes create the context for middleware evaluation. Our approach is demonstrated by an example application -- failover control of a financial application on an enterprise service bus.
Revised: October 8, 2009 |
Published: October 10, 2008
Citation
Liu Y., M.A. Babar, and I. Gorton. 2008.Middleware Architecture Evaluation for Dependable Self-managing Systems. In Proceedings of the Fourth International Conference on Quality of Software-Architectures: Models and Architectures (QoSA 2008), October 14-17, Karlsruhe, Germany: Lecture Notes in Computer Science, edited by S Becker, F Plasil and R Reussner, 5281, 189-204. Berlin / Heidelberg:Springer.PNNL-SA-61264.doi:10.1007/978-3-540-87879-7_12