The Auditing facility in Enterprise Architect allows changes to the repository to be recorded to an Audit log. This powerful governance tool can be profoundly useful in finding out who changed a model and when it was changed. It is also useful to see the complete list of changes made by a given user or the list of changes made to a given element. The Audit View is a dashboard that allows you to display the before and after values of item properties and to drill down from Package level through elements, features and connectors to diagram objects.
Audit View showing the creation of, and three subsequent changes to, the Customer Class.
The basic steps to record Audit logs of the changes to a repository are:
- Enable Auditing - this initiates the process of changes being written to the Audit log.
- Configure Audit Settings - set the Audit Level and the Audit Options that define which elements will be audited, and set options for importing and reverse engineering.
- Allow models to be changed - users perform their normal modeling, creating, modifying, and deleting elements, features and diagrams.
- View the Audit log - to visualize the changes that have been made since the last log clearance.
- Save and Clear logs - logs can be cleared to increase performance that degrades as the logs fill up.
- Disable Auditing - optionally Auditing can be disabled if no longer required, and re-enabled when required.
Audit View showing changes made to a Requirement's Status property, from Validate to Implemented.
It is important to point out a fundamental difference between Auditing and Baselines and Version Control. While all three of these facilities are concerned with changes to a repository over time, with Auditing it is not possible to revert the model to a previous state, which is possible with Version Control and Baselines. In contrast with a Baseline Compare, which only displays the original value and the current values of an item property, the Auditing View can display all the incremental changes over time, including when they were made and who made them.
Setting up Auditing is a simple process, and once set up it will begin recording information about what is changed in the repository based on the settings that you have specified. The next few sections provide the basic steps so you and your teams can get started with Auditing and controlling changes to your repository.
You can, as a Librarian or Administrator, enable Auditing, which initiates the process of model changes being written to the Audit log. You might choose to only enable Auditing for a period of time such as when a new modeler joins the team, or when contractors have access to the model, or in the final stages of a sprint or iteration.
Audit Settings window, allowing Auditing to be enabled or disabled.
Auditing can be disabled at any time and enabled again at a later time. The logs, if not cleared, will simply be added to once Auditing is re-enabled.
The configuration of the Audit facility is an important step in setting up the tool, to ensure that the changes that you want to be able to visualize will be recorded in the Audit log and will be available when the time comes to view them. There are three main parts to the configuration:
Audit Settings window, showing Audit Level, Option, Batch import and Log settings.
- Import and Reverse Engineering options - allow you to specify whether these bulk items should be recorded in the Audit log
- Auditing Level - You can specify the extent of the information recorded
- Auditing Options - You can specify which elements will be audited
As a Librarian or Administrator, you can view the content of the Audit either through the View Audit window or in the System Output window. The Audit View provides a number of options for changing the display and provides a convenient Tree View control for navigating through the changes.
Audit View window showing the tree of items and their changes.
Changes are listed and ordered in time order with an icon that indicates if the change was a creation, modification or deletion. A panel on the right displays the change itself, while the header section at the top describes who made the change, when it was made and the nature of the changes.
Audit View window showing changes to a Requirement's properties, parent Package, Status and Version
As a librarian or administrator your can disable auditing, which terminates the process of model changes being written to the audit log. You can choose to only enable
Audit Settings window allowing Auditing to be enabled or disabled.
Auditing can be enabled again at any point in time when required. The logs, if not cleared, will simply be added to once auditing is re-enabled.
When Auditing has been enabled changes to the elements specified in the audit options are recorded in an audit log. The management of logs is critical to the performance of the Auditing facility. When the logs fill up the time it takes to write a change will increase, subtly degrading the performance experienced by modelers as they work in the repository. The management of logs can ensure that users don't notice any perceivable change in the their save times. As the administrator or librarian you can save the logs to a network file and then clear the logs. It is recommended that this process is managed to ensure an optimal user experience. The logs can be managed from the left hand panel of the Audit Settings window.
Audit Settings options to Clear, Save and Load Logs.