kirancodes.me
To Proof Maintenance & Beyond!

Managing non-functional uncertainty via model-driven adaptivity

Carlo Ghezzi, Leandro Sales Pinto, Paola Spoletini, Giordano Tamburrelli

Abstract

Modern software systems are often characterized by uncertainty and changes in the environment in which they are embedded. Hence, they must be designed as adaptive systems. We propose a framework that supports adaptation to non-functional manifestations of uncertainty. Our framework allows engineers to derive, from an initial model of the system, a finite state automaton augmented with probabilities. The system is then executed by an interpreter that navigates the automaton and invokes the component implementations associated to the states it traverses. The interpreter adapts the execution by choosing among alternative possible paths of the automaton in order to maximize the system's ability to meet its non-functional requirements. To demonstrate the adaptation capabilities of the proposed approach we implemented an adaptive application inspired by an existing worldwide distributed mobile application and we discussed several adaptation scenarios.

BibTeX
@inproceedings{Ghezzi-al:ICSE13,
  author    = {Carlo Ghezzi and
               Leandro Sales Pinto and
               Paola Spoletini and
               Giordano Tamburrelli},
  title     = {Managing non-functional uncertainty via model-driven adaptivity},
  booktitle = {ICSE},
  pages     = {33--42},
  publisher = {{IEEE} Computer Society},
  year      = {2013},
}

Related papers