In a development community with many projects going on I find one of my biggest challenges is keeping track of all the changes that have crept into the model. I have a series of macros and attachments I use but I don’t feel like I have a good methodology. It works but it takes a lot of care and feeding.
Does anyone have any ways they handle and report on model changes and versions?
We have a macro that produces a list of the tables and columns that are being changed. The tricky part is stamping each version so once the changes go live they come off the report. Even more tricky is the possibility that multiple projects may have different sets of changes. This I have no solution for.
i would be happy to go into details and show my macros if anyone is interested. I have a macro I use to compare the model and produce a report from the tool. Our change report is a separate macro that reads the attachments.
By the way, I generally work alone so shared models and repository issues do not arise often. I do have another modeler but he is more of a backup for me. Having said that, I used the repository until the most recent version because they combine services and require a separate device for the repository. When I had the repository I found versioning limited and clumsy. It was nothing compared to source control systems. With that in mind, there’s no reason this has to happen at the repository. I for one want to see version/change information on the model. If I had my way each column could show a version indicator showing the change occurred. Either by clicking or via a report you could expose the details such as date and time of change, perhaps a note with a brief explanation. Ideally, such attributes would have a means of accepting the changes and thus making them part of the base system.
I think the way Word handles change tracking and acceptance is a good interface to mimic. If new features are being added.
Several releases ago (XE7), we introduced the ability to associate model changes with tasks and user stories. You can create an association to the task at check-out and/or check-in time. This also creates a change record and provides the ability to see all change records for a particular task, with drill down to the changes.
We have added several enhancements. As of the 16.5 release you can enter tasks/user stories directly into enterprise team edition. Also, if you use Jira in your organization, you can simply link Jira projects with repository project folders. Then, when checking in/out for that project, you can simply associate the applicable Jira task.
I wasn't looking to try to tie to user stories because we do not have a user story system to link to for database changes. We do however need to be able to identify the changes still outstanding. In addition a method for marking a change as complete is needed. Is that something I could accomplish?