Abstract
We describe an approach based upon software process technology to on-the-fly monitoring, redeployment, reconfiguration, and in general dynamic adaptation of distributed software applications. We choose the term dynamic adaptation to refer to modifications in structure and behavior that can be made to individual components, as well as sets thereof, or the overall target system configuration, such as adding, removing or substituting components, while the system is running and without bringing it down. The goal of dynamic adaptation is manifold: supporting run-time software composition, enforcing adherence to requirements, ensuring uptime and quality of service of mission-critical systems, recovering from and preventing faults, seamless system upgrading, etc. Our approach involves dispatching and coordinating software agents - named Worklets — via a process engine, since successful dynamic adaptation of a complex distributed software system often requires the concerted action of multiple agents on multiple components. The dynamic adaptation process must incorporate and decide upon knowledge about the specifications and architecture of the target software, as well as Worklets capabilities. Dynamic adaptation is correlated to a variety of other software processes - such as configuration management, deployment, validation and evolution - and allows addressing at run time a number of related concerns that are normally dealt with only at development time.
Keywords
- Target System
- Dynamic Adaptation
- Process Engine
- Target Component
- Defense Advance Research Project Agency
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
The ABLE Project. http://www.cs.cmu.edu/afs/cs.cmu.edu/project/able/www/index.html
Alonso, G.: OPERA: A design and programming paradigm for heterogeneous distributed applications. In Proceedings of the International Process Technology Workshop, Villard de Lans-Grenoble, France, September 1-3 1999.
Balzer, R., Goldman, N.: Mediating Connectors. In Proceedings the 19th IEEE international Conference on Distributed Computing Systems Workshop, Austin TX, May 31-June 5, 1999, http://www.isi.edu/software-sciences/wrappers/ieeemediatingconnectors.pdf
Bolcer. G., Taylor, R.: Endeavors: a Process System Integration Infrastructure. In Proceedings of the 4th International Conference on Software Process (ICSP4), Brighton, U.K., December 2-6, 1996.
Brogi, A., Jacquet, J.M.: On the Expressiveness of Coordination Models. In Proceedings of the 3rd International Conference on Coordination Languages and Models (COORDINATION 99), Amsterdam, The Netherlands, April 26-28, 1999.
C3DS Home Page. http://www.newcastle.research.ec.org/c3ds/index.html
Carriero, N., Gelernter L.: Coordination Languages and their Significance. Communications of the ACM, Vol. 35, no. 2, pages 97–107, February 1992.
Cass, A. G., Staudt Lerner B., McCall, E. K., Osterweil, L. J., Wise, A.: Logically Centralized, Physically Distributed Control in a Process Runtime Environment. Technical Report # UM-CS-1999-065, University of Massachusetts, Computer Science Department, November 11, 1999.
Ceri, S., Di Nitto, E., Discenza, A., Fuggetta, A., Valetto, G.: DERPA: A Generic Distributed Event-based Reactive Processing Architecture. Technical report, CEFRIEL, Milan, Italy, March 1998.
Columbia University Programming Systems Laboratory, DARPA-funded DASADA project. http://www.psl.cs.columbia.edu/dasada/
Cougaar Open Source Agent Architecture. http://www.cougaar.org/index.html
Cugola, G., Di Nitto, E., Fuggetta, A.: Exploiting an Event-based Infrastructure to Develop Complex Distributed Systems. In Proceedings of the 20th International Conference on Software Engineering, Kyoto, Japan, April 1998.
Cugola, G., Cunin, P.Y., Dami, S., Estublier, J., Fuggetta, A., Pacull, F., Riviere, M., Verjus, H.: Support for Software Federations: The Pie Platform. In Proceedings of the 7th European Workshop on Software Process Technology EWSPT-7, Kaprun, Austria, February 2000.
DASADA Program Overview. http://www.if.afrl.af.mil/tech/programs/dasada/program-overview.html
Garlan, D., Monroe, R.T., Wile, D.: Acme: An Architecture Description Interchange Language. In Proceedings of CASCON’ 97, November 1997.
Griss, M.L., Chen, Q., Osterweil, L.J., Bolcer, G.A., Kessler, R.R.: Agents and Workflow-An Intimate Connection or Just Friends?. Panel report in Proceedings of the Technology of Object-Oriented Languages and Systems USA Conference (TOOLS-USA 99), Santa Barbara CA, July 30-August 3, 1999.
Grundy, J., Apperley, M., Hosking J., Mugridge, W.: A Decentralized Architecture for Software Process Modeling and Enactment. IEEE Internet Computing: Special Issue on Software Engineering via the Internet, 2(5): 53–62, September/October 1998.
Hall R.S., Heimbigner, D.M., Wolf, A.L.: A Cooperative Approach to Support Software Deployment Using the Software Dock. In Proceedings of the International Conference on Software Engineering (ICSE’99), Los Angeles CA, May 1999.
Heineman, G.T.: Adaptation and Software Architecture. In Proceedings of the 3rd International Workshop on Software Architecture, November 1998.
Holder, O., Ben-Shaul, I., Gazit, H.: Dynamic Layout of Distributed Applications in FarGo. In Proceedings of the 21st International Conference on Software Engineering (ICSE’99), Los Angeles CA, USA, May 1999.
Kaiser, G., Dossick, S., Jiang, W., Yang, J.J., Ye, S.X.: WWW-based Collaboration Environments with Distributed Tool Services. World Wide Web Journal, vol. 1, 1998, pages 3–25. http://www.psl.cs.columbia.edu/ftp/psl/CUCS-003-97.ps.gz
Kaiser, G., Stone, A., Dossick S.: A Mobile Agent Approach to Lightweight Process Workflow. In Proceedings of the International Process Technology Workshop, Villard de Lans, France, September 1-3 1999. http://www.psl.cs.columbia.edu/ftp/psl/CUCS-021-99.pdf.
Luckham, D.C., Vera, J.: An Event-Based Architecture Definition Language. IEEE Transactions on Software Engineering, vol. 21, no. 9, pages 717–734, September 1995.
Magee, J., Kramer, J.: Dynamic Structure in Software Architectures. In Proceedings of ACM SIGSOFT’96: Fourth Symposium on the Foundations of Software Engineering (FSE4), San Francisco CA, October 1996.
MesoMORPH: Meso-Adaptation of Systems. http://www.cis.gsu.edu/~mmoore/MesoMORPH/
Miller, J., Palaniswami, D., Sheth, A., Kochut, K., Singh, H.: WebWork: METEOR2’s Web-based Workflow Management System. Journal of Intelligent Information Management Systems, pp. 185–215, 1997.
Oreizy, P., Gorlick, M.M., Taylor, R.N., Heimbigner, D.M., Johnson, G., Medvidovic, N., Quilici, A., Rosenblum, D.S., Wolf, A.L.: An Architecture-Based Approach to Self-Adaptive Software. IEEE Intelligent Systems, vol. 14, no. 3, May/June 1999, pp. 54–62.
Papadopolous, G. A., Arbab F.: Coordination Models and Languages. Advances in Computers, Vol. 48, Academic-Press, 1998.
Rugaber, S.: A Tool Suite for Evolving Legacy Software. In Proceedings of the International Conference on Software Maintenance’99, Oxford, England, August 30-September 3, 1999.
Shirvastava, S.K., Bellissard, L., Feliot, D., Herrmann, M., De Palma, N., Wheater, S.M.: A Workflow and Agent based Platform for Service Provisioning. C3DS Technical Report # 32, 2000.
Staudt Lerner, B., Osterweil, L.J., Sutton, Jr., S.M., Wise A,: Programming Process Coordination in Little-JIL. In Proceedings of the 6th European Workshop on Software Process Technology (EWSPT’98), pp. 127–131, September 1998, Weybridge, UK.
Valetto, G.: Process-Orchestrated Software: Towards a Workflow Approach to the Coordination of Distributed Systems. Technical Report # CUCS-016-00, Columbia University, Department of Computer Science, May 2000.
Wise, A., Cass, A.G., Staudt Lerner, B., McCall, E.K., Osterweil, L.J., Sutton, Jr., S.M.: Using Little-JIL to Coordinate Agents in Software Engineering. In Proceedings of the Automated Software Engineering Conference (ASE 2000), Grenoble, France, September 11-15, 2000.
Dami, S., Estublier, J., Amiour, M.: APEL: A Graphical Yet Executable Formalism for Process Modeling. Automated Software Engineering, 5(1):61–96, January 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Valetto, G., Kaiser, G., Kc, G.S. (2001). A Mobile Agent Approach to Process-Based Dynamic Adaptation of Complex Software Systems. In: Ambriola, V. (eds) Software Process Technology. EWSPT 2001. Lecture Notes in Computer Science, vol 2077. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45752-6_9
Download citation
DOI: https://doi.org/10.1007/3-540-45752-6_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42264-8
Online ISBN: 978-3-540-45752-7
eBook Packages: Springer Book Archive