Architecting for decision making about code evolution
During software evolution, it is important to evolve not only the source code, but also its architecture to prevent architecture drift and architecture erosion. This is a complex activity, especially for large software projects, with multiple development teams that might be located in different countries or on different continents. To ease this kind of evolution, we have developed a domain- specific language for making decisions about the evolution. It supports the definition of architectural changes based on multiple implementation tasks that can have temporal dependencies among each other. Then, by means of a model-to-model transformation, we automatically create a constraint model that we use to generate, by means of the Alloy model analyzer, the possible alternative decisions for executing the implementation tasks. The tight integration with architecture abstractions enables architects to automatically check the changes related to an implementation task in relation to the architecture description. This helps keeping architecture and code in sync, avoiding drift and erosion.
Top- Haitzer, Thomas
- Navarro, Elena
- Zdun, Uwe
Category |
Paper in Conference Proceedings or in Workshop Proceedings |
Event Title |
1st International Workshop on Software Architecture Asset Decision-Making (SAADM) co-located with the 9th European Conference on Software Architecture (ECSA 2015) |
Divisions |
Software Architecture |
Subjects |
Programmierung Allgemeines Software Engineering |
Event Location |
Cavtat/Dubrovnik, Croatia |
Event Type |
Workshop |
Event Dates |
September 8, 2015 |
Date |
September 2015 |
Export |