Current techniques for modelling software architecture do not provide sufficient support for modelling of architectural design rules. This is a problem in the context of Model-Driven Development in which it is assumed that major design artefacts are represented as formal or semi-formal models. This paper addresses this problem by presenting an approach to modelling architectural design rules in UML at the abstraction level of the meaning of the rules. The high abstraction level and the use of UML makes the rules both amenable to automation and easy to understand for both architects and developers, which is crucial to deployment in an organization. To provide a proof-of-concept a tool was developed that validates a system model against the architectural rules in a separate UML model. To demonstrate the feasibility of the approach the architectural design rules of an existing live industrial strength system were modelled according to the approach
History
Publication
ACM Transactions on Software Engineering and Methodology;2012 21(2)