Principles Management is concerned with the creation, maintenance and governance of architecture principles, their relation to higher level enterprise principles, and their application and adherence at an implementation level. A principle is typically a statement that is used to guide the development of architectures and the solutions that implement the architectures. They are typically created at the time an architecture program is initiated, and are expected to be unchanging, acting as a pillar that the architectures and their implementation are held upon. They are most commonly developed by an Enterprise Architect in cooperation with leading business and technical stakeholders, including the domain architects. They form an important governance device and are typically managed by the Architecture Board or an equivalent body.
Enterprise Architect can be used to model and manage the Architecture Principles and their relation to enterprise level principles, effectively creating a principle catalog. The principles can be used in the context of a solution architecture to guide or constrain the design of a solution, ensuring that it is complied with or a dispensation is issued. Tagged Values provide a way of describing the important aspects of a principle in addition to its name and statement. The Traceability Window can be used to create relationships between the Architecture principles and the higher level Enterprise Principles. Security can be used to ensure the principles are not changed either inadvertently or intentionally. Baselines and auditing can be used to track changes that have been made to the principles.
This section lists the main tools available in Enterprise Architect that can be used to perform Principles Management. There is also a wide range of additional tools that a modeler might find suitable when applying the technique in a particular context. The complete list of tools is available from the topics Meet the Enterprise Architecture Tools and Additional Enterprise Architecture Tools.
The Auditing feature can keep track of the changes to architecture content including what was changed, when it was changed and by whom. Auditing is by default disabled and must be enabled before the changes to architecture elements will be recorded. Once enabled it is a passive tool that silently records the changes to elements. The facility can be particularly useful when managing principles as they are intended to be enduring and are not intended to be changed very often after they have been defined. The audit facility is useful as it will alert a librarian or administrator that a principle has been changed.
Learn More: Auditing
The Baseline Tool can capture a snapshot of the Architectural Principles at a point in time and a comparison can be made between this or any other snapshot and the model at a later point in time. The comparison tool will enable an architect to visualize what has changed and if necessary revert back to content contained in the baseline. Any Package in the Principle hierarchy can be baselined and any number of baselines can be created. It is typically the Chief Architect that would manage the baselines and update the principles if required.
Learn More: Baseline Tool
The Class diagram can be used to create visual representations of the Principles, including how they are related to each other. The Principles, or instances of the Principles, can be added to any diagram and will provide important guidance for architects who are required to be constrained by these principles when creating their architectures, and also for implementers when creating solutions. The instances of the Principles describe how they apply in a particular context.
Learn More: Class Diagram
The Security System in Enterprise Architect is intended to encourage collaboration, but it can be used to lock Packages or elements to prevent them from being changed. This is a useful mechanism that can be applied to the Packages containing the Principles, ensuring that they are not changed unintentionally or inadvertently. It would typically be the chief architect or the model librarian acting on their behalf who would explicitly lock and unlock the Principles for update.
Learn More: Security
Tagged Values are used to manage additional properties of elements and other items in the model. They can be used with principles to add the descriptive properties of the principles including Rationales and Implications. The can be viewed through the Properties window or in the element's property sheet or in the Tagged Values compartment of a diagram object.
Learn More: Tagged Values
The Traceability Window is a useful when working with Principles as it allows a modeler to visualize the connections between principles and other elements in the repository. This is useful to show how Principles relate to each other and how they are connected to other elements in the model and in turn how those elements are connected. For Principles to be effective they need to be applied at the level of architectural representations and implementation projects and the Traceability Window can show how the principles have been applied.
Learn More: Traceability Window