Abstract
A distributed software system’s deployment architecture can have a significant impact on the system’s dependability. Dependability is a function of various system parameters, such as network bandwidth, frequencies of software component interactions, power usage, and so on. Recent studies have shown that the quality of deployment architectures can be improved significantly via active system monitoring, efficient estimation of the improved deployment architecture, and system redeployment. However, the lack of the appropriate tools for monitoring, analyzing, and effecting redeployment at the architectural level makes improving a system’s deployment architecture a very challenging problem. To cope with these challenges, developers typically resort to ad hoc solutions that decrease the potential for reuse and understandability. In this paper, we first present an extensible framework that guides the design and development of solutions for this type of problem, enables the extension and reuse of the solutions, and facilitates autonomic analysis and redeployment of a system’s deployment architecture. We then discuss a suite of extensible and integrated tools that help developers in realizing the framework.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bastarrica, M.C., et al.: A Binary Integer Programming Model for Optimal Object Distribution. In: 2nd Int’l. Conf. on Principles of Distributed Systems, Amiens, France (December 1998)
Carzaniga, A., et al.: A Characterization Framework for Software Deployment Technologies. Technical Report, Dept. of Computer Science, University of Colorado (1998)
Dashofy, E., van der Hoek, A., Taylor, R.: An Infrastructure for the Rapid Development of XML-based Architecture Description Languages. In: International Conference on Software Engineering (ICSE 2004), Orlando, Florida, May 2002 (2004)
Garlan, D., Cheng, S., Schmerl, B.: Increasing System Dependability through Architecture-based Self-repair. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems (2003)
Hall, R.S., Heimbigner, D., Wolf, A.L.: A Cooperative Approach to Support Software Deployment Using the Software Dock. In: International Conference in Software Engineering (ICSE 1999), Los Angeles, CA (May 1999)
Haas, R., et al.: Autonomic Service Deployment in Networks. IBM Systems Journal 42(1) (2003)
Hunt, G., Scott, M.: The Coign Automatic Distributed Partitioning System. In: 3rd Symposium on Operating System Design and Implementation, New Orleans, LA (February 1999)
Kieckhafer, R., Walter, C., Finn, A., Thambidurai, P.: The MAFT Architecture for Distributed Fault Tolerance. IEEE Transactions On Computers 37(4), 398–405 (1988)
Kichkaylo, T., et al.: Constrained Component Deployment in Wide-Area Networks Using AI Planning Techniques. In: Int’l. Parallel and Distributed Processing Symposium (April 2003)
Malek, S., et al.: A Decentralized Redeployment Algorithm for Improving the Availability of Distributed Systems. Technical Report USC-CSE-2004-506 (2004)
Mikic-Rakic, M., Medvidovic, N.: Adaptable Architectural Middleware for Programming-in-the-Small-and-Many. In: Endler, M., Schmidt, D.C. (eds.) Middleware 2003. LNCS, vol. 2672. Springer, Heidelberg (2003)
Mikic-Rakic, M., et al.: Improving Availability in Large, Distributed, Component-Based Systems via Redeployment. Technical Report USC-CSE-2003-515 (2003)
Mikic-Rakic, M., et al.: A Tailorable Environment for Assessing the Quality of Deployment Architectures in Highly Distributed Settings. In: Emmerich, W., Wolf, A.L. (eds.) CD 2004. LNCS, vol. 3083, pp. 1–17. Springer, Heidelberg (2004)
Mikic-Rakic, M., Medvidovic, N.: Support for Disconnected Operation via Architectural Self-Reconfiguration. In: Int’l Conf. on Autonomic Computing (ICAC 2004), New York (May 2004)
Mikic-Rakic, M., Medvidovic, N.: Increasing the Confidence in Off-the-Shelf Components: A Software Connector-Based Approach. In: 2001 Symposium on Software Reusability (SSR 2001), Toronto, Canada (May 2001)
Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture Based run time Software Evolution. In: International Conference on Software Engineering (ICSE 1998), Kyoto, Japan (April 1998)
Perry, D.E., Wolf, A.L.: Foundations for the Study of Software Architectures. Software Engineering Notes (October 1992)
Waldpurger, C.A., et al.: Spawn. A Distributed Computational Economy. IEEE Trans. on Software Engineering (February 1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Malek, S., Beckman, N., Mikic-Rakic, M., Medvidovic, N. (2005). A Framework for Ensuring and Improving Dependability in Highly Distributed Systems. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds) Architecting Dependable Systems III. Lecture Notes in Computer Science, vol 3549. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11556169_8
Download citation
DOI: https://doi.org/10.1007/11556169_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-28968-5
Online ISBN: 978-3-540-31648-0
eBook Packages: Computer ScienceComputer Science (R0)