Title: CARD: Controlling Architectural Degradation in Real life Applications Abstract: Software architecture provides a high level design that serves as the basis for system implementation and communication among stakeholders. However, changes in requirements and lack of conformance checks during development can cause the implemented architecture to deviate from the intended one. Such architecture erosion can cause rapid software aging and high maintenance costs. Conformance checking to detect inconsistencies between a model and its corresponding implementation is one of the strategies used to minimise architecture erosion. However, existing conformance checking tools often require formal architecture specifications, which are usually not available outwith academic settings. This paper describes the design, implementation and evaluation of a customisable framework called Card, which uses architectural mapping between models in UML and corresponding implementation in Java to control architecture erosion. UML and Java are widely used in the industry and therefore this work is applicable to real life applications.