Tuesday, February 21, 2006

Version Control

This post is intended in documenting one of the most important aspects of MY ERP. This morning I saw my post and found a valuable suggestion from Brent Martin, a very valuable suggestion which I did overlook. Brent did give another link to look into before knowing the exact problem, Grey Sparling

As we all know Grey Sparling Solutions is an organization run by able x-PeopleSoft employees. I thought I better read it before I make any suggestions out here. The biggest challenge when it comes to version control in PeopleSoft’s case was this, PeopleTools release means changes to Source code at the Application Designer level and Application Server level. I think this should be very easy (as the source code is in text format), we could use any commercially available Version Control application for this purpose. Although this piece of version control requires third-party tools, it will only be internal as we will not package this to the Customer.


The biggest challenge to PeopleSoft is in tracking the object level changes. Chris Heller (refer to Grey Sparling link above) has mentioned that they achieve this by using SUBVERSION, i.e. a text format result for these changes on database objects. Once the SUBVERSION is available it should again be easy for us to establish version control. PeopleSoft provides a Compare process which allows the user to compare objects in the database and generate reports. But as I’ve always thought, one of the main draw-backs of the PeopleSoft Compare process is that it is not PeopleTools compatible. I did develop a couple of tools to help an Upgrade Consultant; Reapply Customization was one of them. Reapply Customization will compare, analyze and then reapply the customizations and I made it PeopleTools compatible. It will compare databases between different releases and then reapply customizations; all this was achieved only with the rel-scripts at my disposal. PeopleSoft could have made their Compare process PeopleTools independent (from any new release to any old release) this would have allowed us to generate the database object level compare report in text format.

Having said all this, the Compare process independent of Tools gets a tick for MY ERP. It is a feature which must be present.

1 comment:

Chris Heller said...

Yes, having the compare process in PeopleTools be a little bit more independent from the specific objects would have been nice.

The reason that it works the way it does though is that the compare logic is part of the internal C++ code in Application Designer, so it has a built-in understanding of each object.

Back in older PeopleSoft releases, the compare process used to be SQR based and consequently it took a lot longer to add upgrade/compare support for new object types as they were added to PeopleTools.

The other thing that having some independence from PeopleTools for the compare process is that you can begin to do things like do comparisons (and version control) for application level meta-data. Any type of application level setup data is a prime candidate for this.

One of my blog posts waiting to be written is an example of how to use the JavaSVN library from PeopleCode to do this sort of thing.