Improvements in Oracle SCM Check Out and Check In mechanism (better Oracle Designer Source Code Control)

0
Share this on .. Tweet about this on Twitter0Share on LinkedIn0Share on Facebook0Share on Google+0Email this to someoneShare on TumblrBuffer this page

Oracle SCM – the Software Configuration Manager – provides the backend source code control services for Oracle Designer. It offers among other things functionality for Version Control: Check In, Check Out, Branching and Merging and it records Check In/Out notes, Version Labels and ‘version events’. In comparison with several other tools for version control, it has a few oddities or lacks some functionality that might have been very handy. It turns out that most of that functionality can be created fairly easy, with additional triggers on the Oracle SCM tables. I have demonstrated in a previous post how two of these additional pieces of functionality can be implemented: Building Check In protection into Oracle Designer/Oracle SCM – Check In only by the user that did the Check Out. I intend to write further articles to demonstrate implementations of all others enhancements listed in this post:

LabelEventObject LevelWorkarea LevelComment
Check In only by Check Out-erCheck In**With multiple users in a workarea, any user can check in objects, not only the person who did the check out. We could change that behavior as to allow only the Check Out-er to do the check in.
Has been implemented in Building Check In protection into Oracle Designer/Oracle SCM – Check In only by the user that did the Check Out
Check In only with (proper) notesCheck In*
More control over Version Label generationCheck In*Allow user to influence generation of version label through hints in check in notes such as <MAJOR> (1.3=> 2.0) and <MINOR> (1.3=> 1.3.1)
Send an email to interested partiesCheck In**Allow users to register interest in the check in of an or any object (in the workarea); when such interest is registered, an email is sent upon check in
Update Version Label after check in*Use a ‘fake’ check out to update the version label of an object that is already checked in
Update Checkin Notes after check in*Use a ‘fake’ check out to update the check in notes of an object that is already checked in
Check Out is not allowed if the object version is already checked outCheck Out**Implement a really exclusive check out or lock; note: check out with lock in Oracle SCM only ensures that the first check out-er is the first to check in
Changes are only allowed by the user who did the check out**With multiple users in a workarea, any user can make changes to Checked Out objects, not
only the person who did the check out. We could change that behavior as
to allow only the Check Out-er to edit the checked out objects.
Implemented in Building Check In protection into Oracle Designer/Oracle SCM – Check In only by the user that did the Check Out
Undo Check Out only allowed by the user who did the Check OutUndo Check Out**With multiple users in a workarea, any user can Undo Check Out for objects, not
only the person who did the check out. We could change that behavior as
to allow only the Check Out-er to do the Undo Check Out
Move an object version to another branch*When an object is checked in, it is checked in on a certain branch. When the check in is complete, the object version normally can not be moved anymore. We can use a fake check out that really will move the object version to the tip of the specified branch.
Check Out on a branchCheck Out**Oracle SCM does not have the notion of checking an object out to a branch. The branch assignment is only done during check in. However, we can extend the check out behavior to allow the user to specify in the Check Out notes which branch he wants to start working on. The check out would then implicitly perform three steps: check out the object, check it in on the designated branch and check it out again. This could be workarea setting.

Share this on .. Tweet about this on Twitter0Share on LinkedIn0Share on Facebook0Share on Google+0Email this to someoneShare on TumblrBuffer this page

About Author

Lucas Jellema, active in IT (and with Oracle) since 1994. Oracle ACE Director for Fusion Middleware. Consultant, trainer and instructor on diverse areas including Oracle Database (SQL & PL/SQL), Service Oriented Architecture, BPM, ADF, JavaScript, Java in various shapes and forms and many other things. Author of the Oracle Press books: Oracle SOA Suite 11g Handbook and Oracle SOA Suite 12c Handbook. Frequent presenter on conferences such as JavaOne and Oracle OpenWorld. Presenter for Oracle University Celebrity specials.

Comments are closed.