Adaptation and dependability and their key role in modern software engineering
Faculty of Sciences. Mathematics and Computer Science
International journal of adaptive, resilient and autonomic systems
, p. 1-14
University of Antwerp
Current software systems and the environments such systems are meant for requiring a precise characterization of the available resources and provisions to constantly re-optimize in the face of endogenous and exogenous changes and failures. This paper claims that it is simply not possible today to conceive software design without explicitly addressing adaptability and dependability. As an example, the authors remark on how mobile computing technologies call for effective software engineering techniques to design, develop and maintain services that are prepared to continue the distribution of a fixed, agreed-upon quality of service despite of the changes in the location of the client software, performance failures, and the characteristics of the environment. This paper concludes that novel paradigms are required for software engineering so as to provide effective system structures for adaptive and dependable services while keeping the design complexity under control. In this paper, the authors discuss this problem and propose one such structure, also briefly surveying the major milestones in the state of the art in this domain.