Adaptability Evaluation at Software Architecture Level

Pentti Tarvainen (Corresponding Author)

    Research output: Contribution to journalArticleScientificpeer-review

    Abstract

    Quality of software is one of the major issues in software intensive systems and it is important to analyze it as early as possible. An increasingly important quality attribute of complex software systems is adaptability. Software architecture for adaptive software systems should be flexible enough to allow components to change their behaviors depending upon the environmental and stakeholders' changes and goals of the system. Evaluating adaptability at software architecture level to identify the weaknesses of the architecture and further to improve adaptability of the architecture are very important tasks for software architects today. Our contribution is an Adaptability Evaluation Method (AEM) that defines, before system implementation, how adaptability requirements can be negotiated and mapped to the architecture, how they can be represented in architectural models, and how the architecture can be evaluated and analyzed in order to validate whether or not the requirements are met. AEM fills the gap from requirements engineering to evaluation and provides an approach for adaptability evaluation at the software architecture level. In this paper AEM is described and validated with a real-world wireless environment control system. Furthermore, adaptability aspects, role of quality attributes, and diversity of adaptability definitions at software architecture level are discussed.
    Original languageEnglish
    Pages (from-to)1-30
    Number of pages30
    JournalThe Open Software Engineering Journal
    Volume2
    Issue number1
    DOIs
    Publication statusPublished - 2008
    MoE publication typeA1 Journal article-refereed

    Keywords

    • adaptability
    • adaptation
    • adaptive software architecture
    • software quality
    • software quality attribute

    Fingerprint

    Dive into the research topics of 'Adaptability Evaluation at Software Architecture Level'. Together they form a unique fingerprint.

    Cite this