Abstract
In distributed and mobile environments, the connections among the hosts on which a software system is running are often unstable. As a result of connectivity losses, the overall availability of the system decreases. The distribution of software components onto hardware nodes (i.e., deployment architecture) may be ill-suited for the given target hardware environment and may need to be altered to improve the software system’s availability. The critical difficulty in achieving this task lies in the fact that determining a software system’s deployment that will maximize its availability is an exponentially complex problem. In this paper, we present an automated, flexible, software architecture-based solution for disconnected operation that increases the availability of the system during disconnection. We provide a fast approximative solution for the exponentially complex redeployment problem, and assess its performance.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Alander, J.T.: Empirical comparison of stochastic algorithms. In: Second Nordic Workshop on Genetic Algorithms and their Applications, Vaasa, Finland (August 1996)
Bastarrica, M.C., et al.: A Binary Integer Programming Model for Optimal Object Distribution. In: Second International Conference on Principles of Distributed Systems, Amiens, France (December 1998)
Capra, L., Emmerich, W., Mascolo, C.: Middleware for Mobile Computing. UCL Research Note RN/30/01
Carzaniga, A., et al.: A Characterization Framework for Software Deployment Technologies. Technical Report, Dept. of Computer Science, University of Colorado (1998)
Carzaniga, A., Wolf, A.L.: Forwarding in a Content-Based Network. In: SIGCOMM 2003. Karlsruhe, Germany (August 2003)
Cormen, T.H., Leiserson, C.L., Rivest, R.L.: Introduction to Algorithms. MIT Press, Cambridge (1990)
Crescenzi, P., et al.: A Compendium of NP Optimization Problems, http://www.nada.kth.se/~iggo/problemlist/
DeRemer, F., Kron, H.: Programming-in-the-Large Versus Programming-in-the-Small. IEEE Transactions on Software Engineering (June 1976)
Fuggetta, A., Picco, G.P., Vigna, G.: Understanding Code Mobility. IEEE Trans. on Software Engineering (May 1998)
Garlan, D., et al.: Using Gauges for Architecture-Based Monitoring and Adaptation. In: Working Conf. on Complex and Dynamic Systems Arch., Brisbane, Australia (December 2001)
Hyperdictionary, http://hyperdictionary.com/dictionary/
Joseph, D., et al.: Rover: a toolkit for mobile information access. In: 15th ACM Symposium on Operating Systems Principles, Colorado (December 1995)
Kistler, J.J., Satyanarayanan, M.: Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems 10(1) (February 1992)
Kuenning, G.H., Popek, G.J.: Automated Hoarding for Mobile Computers. In: Proceedings of the 16th ACM Symposium on Operating Systems Principles, St. Malo, France (October 1997)
Lee, E.A.: Embedded Software. In: Zelkowitz, M. (ed.) Advances in Computers, vol. 56, Academic Press, London (2002)
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.: 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., Medvidovic, N.: Toward a Framework for Classifying Disconnected Operation Techniques. In: ICSE Workshop on Architecting Dependable Systems, Portland, Oregon (May 2003)
Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture-Based run-time Software Evolution. In: 20th Int. 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)
Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach. Prentice Hall, Englewood Cliffs (1995)
Saran, H., Vazirani, V.: Finding k-cuts Within Twice the Optimal. In: 32nd Annual IEEE Symposium on Foundations of Computer Science, pp. 743–751 (1991)
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)
Weinsberg, Y., Ben-Shaul, I.: A Programming Model and System Support for Disconnected- Aware Applications on Resource-Constrained Devices. In: Int. Conf. on Software Engr., Orlando, Florida (May 2002)
Zhang, Y., et al.: The Stationarity of Internet Path Properties: Routing, Loss, and Throughput. Technical Report, AT&T Center for Internet Research at ICSI (May 2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mikic-Rakic, M., Medvidovic, N. (2004). Software Architectural Support for Disconnected Operation in Highly Distributed Environments. In: Crnkovic, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds) Component-Based Software Engineering. CBSE 2004. Lecture Notes in Computer Science, vol 3054. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24774-6_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-24774-6_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21998-9
Online ISBN: 978-3-540-24774-6
eBook Packages: Springer Book Archive