A method engineering approach to support dynamic evolution in composition-based distributed applications

Download files
Access & Terms of Use
open access
Copyright: Fung, Kam Hay
Altmetric
Abstract
Dynamic evolution is a phenomenon by which applications can be upgraded without requiring shutdown and restart. This capability is particularly important for critical distributed applications in which disruptions from shutdown for changes should be avoided. Although a myriad of relevant techniques and tools exist, dynamic evolution is not well understood or adequately supported from a software development methodology perspective. This research aims to alleviate these shortcomings as a first step towards embracing dynamic evolution from this perspective. It leverages composition-based distributed applications - built of modules weaved into composite structures - for their ability in accommodating changes in their structures. This research uses a three-phased design science research approach for its investigation. First, dynamic evolution requirements for methodological consideration in composition-based distributed applications were determined. Second, the methodological support for these requirements was developed. Third, this support was validated and enhanced by expert review and its application in a case study. The first contribution of this research is a proposed set of dynamic evolution requirements: dynamic change requirements and dynamic evolution quality factors. The former characterise dynamic changes that a distributed application would accommodate while the latter are concerned with how well the application and its dynamic changes are designed to facilitate dynamic evolution. They provide areas of concerns for practitioners and researchers in developing, managing and testing distributed applications which can benefit from dynamic evolution. The second major contribution is Continuum, a methodological extension comprising a suite of method fragments, specified with the International Standard ISO/IEC 24744: Software Engineering - Metamodel for Development Methodologies, to address the dynamic evolution requirements proposed from this research. Continuum centres on three key concerns: an application's lifecycle, transitional periods between successive application generations, and transformations which are modifications to the application. Via situational method engineering, the fragments can be incorporated into a fragment-structured methodology to extend its capability for dynamic evolution. These contributions are limited to the analysis and design aspects of software development and composition-based distributed applications.
Persistent link to this record
Link to Publisher Version
Link to Open Access Version
Additional Link
Author(s)
Fung, Kam Hay
Supervisor(s)
Low, Graham
Aurum, Aybuke
Creator(s)
Editor(s)
Translator(s)
Curator(s)
Designer(s)
Arranger(s)
Composer(s)
Recordist(s)
Conference Proceedings Editor(s)
Other Contributor(s)
Corporate/Industry Contributor(s)
Publication Year
2011
Resource Type
Thesis
Degree Type
PhD Doctorate
UNSW Faculty
Files
download whole.pdf 2.7 MB Adobe Portable Document Format
Related dataset(s)