It can be both quite useful and rather difficult to monitor the events taking place in Oracle Designer and/or Oracle SCM (Software Configuration Manager). Keeping track of all Check Out, Check In, Merge operations, Creation of New and Change of Existing objects is not easy, as these events are abundant, spread over potentially a lot of workareas and users and not readily available in the standard user interfaces offered by Oracle Designer and SCM. The tool that gets you the most insight in the activity going on is probably the Search Tool within the Repository Object Browser, but – powerful as it is – it is not easy to use.
In this article I present a new tool, one that you can download for free and make use of at your very own risk, from the original creator of the Repository Object Browser, the Oracle Designer Dashboard. A dashing new tool that provides instant insight in the events taking place in your Designer environment. You can filter these events on a number of characteristics: type of event (creation, change, check out, check in, merge), workarea (only events on objects that have a version in the selected workarea), timeframe (only events in the last day/week/month), object type (only events for objects of a particular type) and Repository User (only events where a certain user is the ‘actor’).
For each event, the Dashboard will show roughly the same information as the ROB Navigator and the ROB Search facility: Type of Event,Name of Element, State of Element (check out or not), Version Label, Folder Path, Workarea (for Unversioned and Currently Checked Out Elements), Element Type, Date/Time of the Event, Acting User, Notes (the Check In or Check Out Notes). You can sort the events by each of these properties.
The Dashboard is handy for developers to quickly get an overview of what they recently have been doing and are currently working on. They can also at a glance learn who in the team has checked out a specific object or which objects have been changed. The project manager can also easily keep track of all events taking place. Furthermore, the list of all objects that have been changed (recently) may provide suggestions for the definition of the System Test that should be performed before a patch release or upgrade is shipped.
This Dashboard is developed by the same developer as the rest of the Repository Object Browser. However, it improves on the search facility – that actually turns out to be flawed in certain instances. The code makes use of various Oracle 9i features – whereas the ROB is mainly Oracle 7 with just a pinch of Oracle 8 and 8i specific stuff. Note that the trigger is not mandatory to install: it allows you to search for changes in objects, even if those changes were made in a secondary access element, for example an attribute in an entity or a column in a table. If you do not install the trigger, the Dashboard will work fine but when you change a secondary element like a column or attribute, the primary element will not be seen as changed!
Feel free to install the Dashboard and make good use of it. Any feedback is – as always – most appreciated.
Installation of the ROB Dashboard
Installing this Dashboard components is very simple. Most importantly: you do not have to change any existing Designer objects; installing the Dashboard means adding one package, one trigger and two icons. If you want to un-install: drop the trigger and the package and delete the two images. The steps to install are these:
- Download the zip-file with the resources (five files in total). To download the resources for installing the ROB Dashboard, click here: rob_dashboard.zip
- Extract the zip-file into some TEMP directory
- Copy the two JPG files to the images directory on the web-server that also contains all other ROB images. For local installations, this directory is ORACLE_10gDS_HOMEROB61gif.
- Create the additional trigger by running the rob_dashboard.trg in SQL*Plus (or TOAD, PL/SQL Developer, JDeveloper etc.) as Repository Owner
- Create the new package ROB_DASHBOARD by running the files rob_dashboard.pks and rob_dashboard.pkb, again as Repository Owner
That is it. It is no more difficult than this.
Running the ROB Dashboard is very similar to running the ROB itself. The startup URL for the ROB ends with cdwp.startup, which is preceded by the hostname, possibly a port, an indication of the PLS application and possibly a schema-name: http://localhost:7777/rob/scm.cdwp.startup or something like that. To run the Dashboard, replace cdwp.startup with rob_dashboard.recent_event and go.
Neat as the tool is, there are always things to improve it. Some of the things that went through my head:
* allowing direct Check Out and Check In for the elements shown, similar to the ROB Navigator
* allow filtering by Folder Path
* allow filtering by Branch
* allow search on Branch Events
* allow filtering by Configuration
* allow filtering by User Defined Set
* provide simple statistics and even graphics with for example the intensity of activity per Workarea, per User or Folder; the number of objects currently Checked Out per Developer, the mean time between check-out and check in or average number of changes between check out and check in etc.
* record history of change events (not just the most recent change for every version); record what was actually changed
* provide links from elsewhere in the ROB to the dashboard. For example: from the context of a Folder, a Workarea or a Configuration to the Dashboard for all events in that particular context
* use AJAX for … what exactly I do not know but to make it more interesting
* use SVG for … again I do not know what exactly but it could make the Dashboard more entertaining
Then again – consider it open source and feel free to contribute such enhancements yourself!!