This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
models at different levels such as process and architecture may evolve independently.
• Problem: Considering the evolution in families of software architectures then the changes at different abstraction become intertwined. Unfortunately, architects have few tools to help plan and execute such complicated changes. Therefore, the architecture “stays behind” (drifts) and becomes eroded!
• Objective: How to specify such changes and how to enable the architecture evolution in an automated fashion
• Tangible Outcome: Framework that support the automated architecture evolution 2
• Architectural evolution is a costly yet unavoidable
• Architecture evolution appear to follow certain common patterns [Evolution Style by David Garlan et al.] [Tamzalit et al.], particularly for families of applications.
• By taking advantage of this, we can provide automated assistance for capturing and reusing knowledge about architectural evolution.
• Raising the level of abstraction of evolution, reuse, decision automation, and formal guarantees of correctness. Moreover, in the context of SPL, this is necessary to reason about how the change could impact the commonality, variability, and their interdependence.
• The ultimate objective: to facilitate controlled architecture modifications through reusable change patterns
• State-based PLAs: explicitly captures the versions of artifacts in terms of revisions and variants, which are stored in a repository (SCM system). Examples: Ménage, Mae
• Change-based PLAs: stores the deltas resulting from changes in the repository, Examples: EASEL, COVAMOF
• Hybrid Approach: At the PLA level, change sets represent collections of related changes across architectural elements, at the SCM level, the variation introduced at the architectural level is kept in a configuration model, Example: CHS
RQ0: “How to manage property preserving architectural changes in families of architectures modeled in different description languages effectively (change pattern) and efficiently (automated)?"
Each architecture model satisfies specific sets of constraints which are described by some kind of formalism mostly as a logic language interweave with the architectural concepts.
H1: Capturing the change description and store them into an integrated meta-model regarding these diverse models consisting of elements with heterogeneous types could enable the property-preserving architectural change management in families of architectures.
H2: The implementation of the integrated meta-model and application of a formal approach to architecture evolution process could ensure verification of evolved architectural properties.
• Literature has been reviewed with a systematic approach.
• Research problem has been identified: main research question, hypothesis, subsequent research questions, and solution component have been stabilized.
• Theoretical foundations have been investigated.• Initial structure of the framework has been