Foundations for the study of software architecture
ACM SIGSOFT Software Engineering Notes
Software architecture: a roadmap
Proceedings of the Conference on The Future of Software Engineering
ArchJava: connecting software architecture to implementation
Proceedings of the 24th International Conference on Software Engineering
CoCoME - The Common Component Modeling Example
The Common Component Modeling Example
The Palladio component model for model-driven performance prediction
Journal of Systems and Software
Quality-Driven Extraction of a Component-based Architecture from an Object-Oriented System
CSMR '08 Proceedings of the 2008 12th European Conference on Software Maintenance and Reengineering
Software Architecture Reconstruction: A Process-Oriented Taxonomy
IEEE Transactions on Software Engineering
Co-evolving code and design with intensional views
Computer Languages, Systems and Structures
Predicting the performance of component-based software architectures with different usage profiles
QoSA'07 Proceedings of the Quality of software architectures 3rd international conference on Software architectures, components, and applications
Reverse Engineering Component Models for Quality Predictions
CSMR '10 Proceedings of the 2010 14th European Conference on Software Maintenance and Reengineering
A Classification Framework for Software Component Models
IEEE Transactions on Software Engineering
Respecting component architecture to migrate product copies to a software product line
Proceedings of the 17th international doctoral symposium on Components and Architecture
Hi-index | 0.00 |
With the evolution of software systems, architecture model and system implementation tend to drift apart. While suitable architecture model supports architects and developers in better understanding the software system, the missing synchronization to source code of the underlying implementation can result in outdated architecture models. In this paper, we address two challenges in today's architecture-driven software development: architecture drift and architecture erosion. We introduce a co-evolution approach of a component-based architecture model and object-oriented source code. Our novel approach supports software architects and software developers by introducing a tight and continuous synchronization of a component-based architecture model and the source code. To get architecture evolution under control, our co-evolution approach maps architecture changes done via the source code to the architecture model and vice versa. This explicit support of changes and refactorings at architecture-level prevents unintended architecture violations. In order to evaluate our approach, we plan different case studies whose layout is designed in the evaluation section.