Abstract
Dynamic evolution is beneficial and important to certain classes of distributed applications where shutdown is not always viable requiring modifications to such applications while they are executing. This paper describes Continuum, a process-oriented approach to address analysis and design aspects of dynamic evolution in software development, leveraging the flexibility of composition-based applications—like component-based and service-oriented ones—to facilitate dynamic changes. The approach begins with analyzing and extending the application lifecycle of an application to accommodate dynamic changes (i.e. while it is still executing). Then, the design of runtime modifications is carried out to progressively realize the changes, in terms of what to perform (i.e. transformations), who performs the transformations (i.e. transformation agents), and how the transformations are performed (i.e. transformation steps). A hypothetical electronic product catalogue application is used to illustrate Continuum.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Arnold K, Gosling J, Holmes D (2005) The Java(TM) programming language, 4th edn. Addison-Wesley, Reading
Bennett KH, Rajlich VT (2000) Software maintenance and evolution: a roadmap. In: Proceedings of the 22nd international conference software engineering: the future of software engineerings. ACM Press, New York, pp 73–87
Bohner SA (2002) Extending software change impact analysis into COTS components. In: Proceedings of the 27th annual NASA Goddard software engineering workshop (SEW-27’02), Greenbelt, Maryland, pp 175–182
Brinkkemper S (1996) Method engineering: engineering of information systems development methods and tools. Inf Softw Technol 38(4):275–280
Ecklund EF, Delcambre LML, Freiling MJ (1996) Change cases: use cases that identify future requirements. SIGPLAN Not 31(10):342–358
ESI (2008) Welcome to ICCBSS 2008: weaving composite systems. http://www.iccbss.org/2008/. Accessed 3 June 2008
Evans H, Dickman P (1999) Zones, contracts and absorbing change: an approach to software evolution. In: Proceedings of the 14th ACM SIGPLAN conference on object-oriented programming, systems, languages, and applications (OOPSLA’99), ACM Press, New York, pp 415–434
Fung KH, Low G (2009) A methodology evaluation framework for dynamic evolution in composition-based distributed applications. J Syst Softw 82(12):1950–1965
Fung KH, Low GC, Ray PK (2004) Embracing dynamic evolution in distributed systems. IEEE Softw 21(2):49–55
ISO/IEC (2007) Software engineering—metamodel for development methodologies ISO/IEC 24744:2007. ISO/IEC Press, Geneva
Jayaswal K (2005) No time for down time. In: Jayaswal K (ed) Administering data centers: servers, storage, and voice over IP. Wiley, New York
Murata T (1989) Petri nets: properties, analysis and applications. Proc IEEE 77(4):541–580
OMG (2009) Business Process Modeling Notation Specification v1.2.
Oreizy P, Medvidovic N, Taylor RN (2008) Runtime software adaptation: framework, approaches, and styles. In: Companion of the 30th international conference on software engineering, Leipzig, Germany, pp 899–910
The Eclipse Foundation (2009) Eclipse Process Framework Project (EPF). http://www.eclipse.org/epf/. Accessed 7 Nov 2009
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media, LLC
About this paper
Cite this paper
Fung, K., Low, G.C. (2011). A Process-Oriented Approach to Support Dynamic Evolution in Distributed Applications. In: Pokorny, J., et al. Information Systems Development. Springer, New York, NY. https://doi.org/10.1007/978-1-4419-9790-6_19
Download citation
DOI: https://doi.org/10.1007/978-1-4419-9790-6_19
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4419-9645-9
Online ISBN: 978-1-4419-9790-6
eBook Packages: Computer ScienceComputer Science (R0)