Models reflect structure and processes of your company. Because of existing changes on the market or in your company, models have to been changed, too. Changes can be compared easily (version comparison), for example automatic comparison during release cycle management (RCM) process. The comparison shows the delta between current version and desired version, but does not explain why the model was changed. The solution is ARIS Audit Trail macro, which I want to share with you today.
ARIS Audit Trail macro
With the ARIS Audit Trail macro you can offer your colleagues clear descriptions of:
- What was the reason for the change?
- When did the change occur?
- Which person made the change?
How to activate the macro
To get started recording changes, you have to activate the macro „Modeling audit trail”. To do so, you have to open the properties of the macro after you imported the macro to your ARIS installation.
You activate the macro by choosing “Available to users”.
To view or to change when the macro should be started automatically, select „Event” and „Select event…” in the “Context” property page of the macro.
By default the macro is defined to be executed automatically directly before a model is closed. So the event “Model is to be closed (vetoable)” is selected here.
The purpose of these selections is, for example, when a changed model is closed, the modeler is asked to enter the reason for the change.
User, timestamp and reason are added in model attribute „modeling audit trail“. Users of version control systems such as CVS, SVN or Perforce know such a mechanism. Every time you submit a new version, you enter a short text describing your change. This helps to later go back to a specific version of a document or to review what has happened to the model in the past. You can easily manage and describe the history of model changes. With the Audit Trail macro you get transparent information, why models were changed. It is available in model attributes to enable easy reporting. The ARIS Audit Trail macro forms a part of the release cycle management process. By automatically bringing up the submit dialog on each model change, users are forced to continuously keep track of their changes. During the release cycle management process, reviewers can take their decision also based on the „why“, which is displayed in the review screen. The modeling audit trail information is transferred into the model´s change history attribute to have a new starting point for future changes of the model.
Macro Download & Setup
To get started, download the ARIS Audit Trail macro and save it on your hard disk. Please note, you can only download the macro if you are currently logged in to ARIS Community. The macro was developed for and tested with ARIS Platform 7.1 and it might not run on older versions.
Make sure that you have ARIS Business Architect, because you need the administration module to import the macro. In case you only got ARIS Business Designer on your machine, you must ask your ARIS administrator to install the macro for you.
For more information about downloading & setting up reports and macros in ARIS, read my previous article “Reports and macros in ARIS”.
After download and installation, you can use the macro by activating it as described in the previous sections.
Note: Check this post if you are looking for other free ARIS reports & macros. If you want to discuss ARIS scripting problems, make sure to join the group Reports & Macros in ARIS.
Hi Torsten,
this tool seems very useful. However, after installing like you described, each time I close a model and the dialog to provide the audit trail comment, I get an exception that the macro can not be executed. Even though I use the general filter, the details of the exception says that the corresponding attribute is either not allowed in the current context and/or can not be modified.
In case you have an idea how to solve this...let me know.
Stefan
Hi Stefan,
the only possible reason for this effect is that the attribute is not allowed, either in your configuration filter or generally in your ARIS version.
You can check very easily:
Open the attribute window for a model. In the attribute tree, look for the following attribute:
- Attribute type group "Process automation", attribute type subgroup "Lifecycle", attribute "Modeling audit trail".
If this attribute is not visible using entire method, you'll need to update to the latest ARIS version (Service Release 2010_05).
Best regards,
Torsten
Hi Torsten,
uups, you were absolutely right!
It seems like applying the entire method filter did not not work the other day...
Thank you!
Apart from putting the user-enterd data with timestamp and userinfo line by line into the attribute data, is there a cool way you consider evaluating the data (well if not cool, I also go for the uncool ;-)? E.g. I work a lot with XML/XSLT and to evaluate a corresponding export, I would either have to adjust (aka hack) your code so that "XML-like" data is written into the attribute or put some advanced (from my perspective) regular expression stuff into the evaluating XSLT (and use XSLT 2.0).
Thanks again for any idea how to proceed from this...
Stefan
Hi Torsten
Cool Macro - a couple of questions:
Is the attribute "Modeling audit trail" used in ARIS Process Governance? You write that the content is transferred to the models Change history, does that happens automatically as a part of RCM and are the attribute then cleared?
If you do not use an automatic RCM how can you clear the attribute. For instance after versioning?
Best regards,
Gro
Hi Torsten,
Thanks for the tool seems very useful, we are having an issue after installing the macro like you described, each time I close a model i get the following error:
Error while creating the report
Unable to run macro
Further information: Can't Find Method Designer.isModified(Model,boolean).
in the context we have the event: Model to be saved (vetoable)
Thanks
Best Regards,
Osvaldo
Good question!
And: I am impressed, without relieable data I added 180 times the standard "lorem ipsum" (runs across 6 lines) and this worked OK. But I am also surprised that there is no information available on the storage size for the various data types, like the audit trail.
[re-edit] I am now at 11800 times lorem ipsum. This was possible, but doing something with the model becomes rather cumbersome. Cumbersome is euphemistically for "re-opening the model was cancelled because the browser became unresponsive".
[re-edit2] We can save some storage space if the macro is modified.
E.g. I modified the macro available after migration to SP 5 to the old macro that does not make the difference between "business" and "technical" change (AFAIR, these were the names used).
E.g. You could change the macro's behavior if the user does not provide a comment at all. In all cases, you can avoid the additional extra empty line that is inserted. Currently, I consider to not update the attribute in this case. But this can change with the compliance environment of a project.
Don't extract the ZIP file! This is the report already. Just import it. It might be that your browser renames the file and adds a ZIP extension to it. In that case, rename the file again and add "amx" as extension. Now you can import it to ARIS. For some reason, Internet Explorer renames the files during download.
this is cool - few question
1. If I am using a thin client and ARIS and logging in through the browser then can th admin enable this macro for all users or do you have to enable it for each user.
what I mean is that can I enable the macro at database level so that all users are forced to use it?
2. what is the effect of this on APG - if that is added later.
3. How many entries can I have in 1 version?
4. If I create new version then does the old version retain the info or will it move to the new version?
Hi there,
The report works just excellent for me, except, the field in which it keeps the change logs is very small and with no scroll bars. So I can't exactly view more than a few lines.
Is there a way to create an output file (i.e. txt or PDF) that includes all the change logs in a particular model. I do not want to create an output file for each change. I want one output file with ALL the changes in a particular model, collapsed.
Thanks,
Moudi
Hi Torsten,
Great macro and it runs fine. How ever. when I logged in to the database using a different language than English I get an error messges
Type errror: Cannot call method "getValue" of null (moddeling audit trail#9)
Is there a solution that this macro can run in different languages?
Hi,
I have successfuly imported the macro and have configured it as above with the Model is to be closed (vetoable) event selected. However, when i close the model it asks for the reason, as expected, then it asks whether I want to save it, as expected, but now it asks for a reason again! SDo i put in trhe rewason and then it gives me the error in line 24, unable to run macro, because the model is not open!?!
What am I doing wrong?
Damian
Hello,
I would like to manage the changes between versions for models.
Is there any way to see if a change was made is the attribute level for a specific object in the model.
I thought of something like making a primal version and then after the change creating another version. At that point i would like to know if it's possible to track the changes that been made
Hope I made myself clear,
Thanks in advance
Gilad
Hi,
I think I also had the same problem,
try to go to the script code to that line,
if i remember correctly there is a line above or under that mentioned as a comment with double backslash in front of her (//).
try to replace between the two (add to 24 // in the beginning and delete from the other one the //)
Hope it helps,
Gilad
Please correct me but as I see it, the above documentation is not completely correct.
When I updated to one of the newer SPs of Business Server, the macro became part of the SP and the dialog has a different layout as shown here, e.g. there are more than one text boxes and a drop down list allows the user to select from a list of change categories (sorry, I write this from memory as I currently do not have access to our server).
It might prevent confusion if this newer set-up is described here, or if its description elsewhere is referenced here.
BR
Stefan
Dear Kalimuthu,
If the macro should run for more databases but not all how should I interpret this line if(oDB=="DB Name") should all databases be mentioned where the report should run be marked like
if(oDB=="DB Name") or (oDB=="DB Name") ....
or differently
kind regards
Hi,
does a similar audit trail macro exist for changes to objects?
Functionality shall be:
either: When an object is closed after any attributes have been changed, a dialog pops-up in order to enter a reason for the change.
or (even better): When an object is closed after any attributes have been changed, the system writes the before and after values along with the attribute name, user name and time stamp into a text field.
Thanks,
Dagmar