A Taxonomy for a Constructive Approach to Software Evolution

Selim Ciraci, Pim van den Broek, Mehmet Aksit

    Research output: Contribution to journalArticleAcademicpeer-review

    28 Downloads (Pure)

    Abstract

    In many software design and evaluation techniques, either the software evolution problem is not systematically elaborated, or only the impact of evolution is considered. Thus, most of the time software is changed by editing the components of the software system, i.e. breaking down the software system. The software engineering discipline provides many mechanisms that allow evolution without breaking down the system; however, the contexts where these mechanisms are applicable are not taken into account. Furthermore, the software design and evaluation techniques do not support identifying these contexts. In this paper, we provide a taxonomy of software evolution that can be used to identify the context of the evolution problem. The identified contexts are used to retrieve, from the software engineering discipline, the mechanisms, which can evolve the software software without breaking it down. To build such a taxonomy, we build a model for software evolution and use this model to identify the factors that effect the selection of software evolution mechanisms. Our approach is based on solution sets, however; the contents of these sets may vary at different stages of the software life-cycle. To address this problem, we introduce perspectives; that are filters to select relevant elements from a solution set. We apply our taxonomy to a parser tool to show how it coped with problematic evolution problems.
    Original languageEnglish
    Pages (from-to)84-97
    Number of pages14
    JournalJournal of software
    Volume2
    Issue number2
    Publication statusPublished - Aug 2007

    Fingerprint

    Taxonomies
    Software design
    Software engineering
    Life cycle

    Keywords

    • Software evolution taxonomy
    • Software evolution framework
    • Software evolution
    • Software architecture synthesis

    Cite this

    Ciraci, Selim ; van den Broek, Pim ; Aksit, Mehmet. / A Taxonomy for a Constructive Approach to Software Evolution. In: Journal of software. 2007 ; Vol. 2, No. 2. pp. 84-97.
    @article{25a92913592f4630966aca99d38e3b8b,
    title = "A Taxonomy for a Constructive Approach to Software Evolution",
    abstract = "In many software design and evaluation techniques, either the software evolution problem is not systematically elaborated, or only the impact of evolution is considered. Thus, most of the time software is changed by editing the components of the software system, i.e. breaking down the software system. The software engineering discipline provides many mechanisms that allow evolution without breaking down the system; however, the contexts where these mechanisms are applicable are not taken into account. Furthermore, the software design and evaluation techniques do not support identifying these contexts. In this paper, we provide a taxonomy of software evolution that can be used to identify the context of the evolution problem. The identified contexts are used to retrieve, from the software engineering discipline, the mechanisms, which can evolve the software software without breaking it down. To build such a taxonomy, we build a model for software evolution and use this model to identify the factors that effect the selection of software evolution mechanisms. Our approach is based on solution sets, however; the contents of these sets may vary at different stages of the software life-cycle. To address this problem, we introduce perspectives; that are filters to select relevant elements from a solution set. We apply our taxonomy to a parser tool to show how it coped with problematic evolution problems.",
    keywords = "Software evolution taxonomy, Software evolution framework, Software evolution, Software architecture synthesis",
    author = "Selim Ciraci and {van den Broek}, Pim and Mehmet Aksit",
    year = "2007",
    month = "8",
    language = "English",
    volume = "2",
    pages = "84--97",
    journal = "Journal of software",
    issn = "1796-217X",
    publisher = "Academy Publisher",
    number = "2",

    }

    Ciraci, S, van den Broek, P & Aksit, M 2007, 'A Taxonomy for a Constructive Approach to Software Evolution', Journal of software, vol. 2, no. 2, pp. 84-97.

    A Taxonomy for a Constructive Approach to Software Evolution. / Ciraci, Selim; van den Broek, Pim; Aksit, Mehmet.

    In: Journal of software, Vol. 2, No. 2, 08.2007, p. 84-97.

    Research output: Contribution to journalArticleAcademicpeer-review

    TY - JOUR

    T1 - A Taxonomy for a Constructive Approach to Software Evolution

    AU - Ciraci, Selim

    AU - van den Broek, Pim

    AU - Aksit, Mehmet

    PY - 2007/8

    Y1 - 2007/8

    N2 - In many software design and evaluation techniques, either the software evolution problem is not systematically elaborated, or only the impact of evolution is considered. Thus, most of the time software is changed by editing the components of the software system, i.e. breaking down the software system. The software engineering discipline provides many mechanisms that allow evolution without breaking down the system; however, the contexts where these mechanisms are applicable are not taken into account. Furthermore, the software design and evaluation techniques do not support identifying these contexts. In this paper, we provide a taxonomy of software evolution that can be used to identify the context of the evolution problem. The identified contexts are used to retrieve, from the software engineering discipline, the mechanisms, which can evolve the software software without breaking it down. To build such a taxonomy, we build a model for software evolution and use this model to identify the factors that effect the selection of software evolution mechanisms. Our approach is based on solution sets, however; the contents of these sets may vary at different stages of the software life-cycle. To address this problem, we introduce perspectives; that are filters to select relevant elements from a solution set. We apply our taxonomy to a parser tool to show how it coped with problematic evolution problems.

    AB - In many software design and evaluation techniques, either the software evolution problem is not systematically elaborated, or only the impact of evolution is considered. Thus, most of the time software is changed by editing the components of the software system, i.e. breaking down the software system. The software engineering discipline provides many mechanisms that allow evolution without breaking down the system; however, the contexts where these mechanisms are applicable are not taken into account. Furthermore, the software design and evaluation techniques do not support identifying these contexts. In this paper, we provide a taxonomy of software evolution that can be used to identify the context of the evolution problem. The identified contexts are used to retrieve, from the software engineering discipline, the mechanisms, which can evolve the software software without breaking it down. To build such a taxonomy, we build a model for software evolution and use this model to identify the factors that effect the selection of software evolution mechanisms. Our approach is based on solution sets, however; the contents of these sets may vary at different stages of the software life-cycle. To address this problem, we introduce perspectives; that are filters to select relevant elements from a solution set. We apply our taxonomy to a parser tool to show how it coped with problematic evolution problems.

    KW - Software evolution taxonomy

    KW - Software evolution framework

    KW - Software evolution

    KW - Software architecture synthesis

    M3 - Article

    VL - 2

    SP - 84

    EP - 97

    JO - Journal of software

    JF - Journal of software

    SN - 1796-217X

    IS - 2

    ER -