Software architecture - besides other aspects - outlines the structure of software systems prescribing the intended decomposition. Developers then translate the abstract building blocks of the system into source code, but more often than not implementations exhibit significant structural violations.
This thesis presents live architecture compliance checking - an empirically validated, tool-supported approach for sustaining structure in software implementations. Live compliance checking detects architecture violations at the earliest point in time possible - right after their insertion - and the live feedback enables developers to repair the structure with minimal effort. Live architecture compliance checking enables development organizations to successfully rely on their software architecture as the instrument for guiding the evolution of the software system.
This thesis presents live architecture compliance checking - an empirically validated, tool-supported approach for sustaining structure in software implementations. Live compliance checking detects architecture violations at the earliest point in time possible - right after their insertion - and the live feedback enables developers to repair the structure with minimal effort. Live architecture compliance checking enables development organizations to successfully rely on their software architecture as the instrument for guiding the evolution of the software system.