January 25, 2021
Hot Topics:

Introduction to the Next Generation of Source Control

  • By Aleksey Shevchenko
  • Send Email »
  • More Articles »

Source Configuration Management (SCM) is an essential part of the Application Development lifecycle. Any kind of software development project is impossible to complete without some sort of source control manager tool.

For the first eight years of my career in IT, I have had an opportunity to use such tools as PVCS, CVS, RCS, and Aegis. The main function of these tools is to provide a framework within which a team of developers may work on many changes to a program independently and record the history of source files and documents. But, Source Configuration Management is much more than that—it is not only control of versions of files, it is also establishment of baselines and, more importantly, control of how file versions can be grouped together into logical tasks.

Two years ago, I was introduced to a new kind of Source Configuration Management tool—Synergy CM. This tool is a task-based Configuration Management solution. It answers all of the directives posed by Source Configuration Management. Synergy CM is not the only task-based Configuration Management tool out there. There is also a tool called Perforce. Unfortunately, I have not been able to use Perforce, but from reading up on it, I realize that the tool attempts to offers similar features. But, given the fact that IBM, owner of Rational ClearCase Software (another SCM), acquired Telelogic (developer of Synergy CM) last summer, I am confident that Synergy will capture a much larger market share in the near future.

This article will cover major features of Synergy CM. Furthermore, it will uncover some of the complexities associated with using the tool. I will leave it up to you do decide whether the tool is worth your consideration.

Tasked-Based Development

Suppose the requirements call for two enhancements to be implemented:

  • Enhancement One: Update Business Constants and Rules Constants
  • Enhancement Two: Update Rules Manager Interface and XML Parsing

After identifying what source code files have to be modified, the application developer creates two new tasks (see Figure 1).

  • Task 27036: Business Constants and Rules Constants
  • Task 27037: Update Rules Manager Interface and XML Parsing

Figure 1: Two new tasks

Then, the developer checks out files into their appropriate tasks (see Figure 2):

Click here for a larger image.

Figure 2: Checking out a source file

Task 27036 now contains the following checked out files (see Figure 3, upper section):

  1. BusinessConstants.java
  2. BusinessRulesConstants.java

Task 27037 now contains the following checked out files (see Figure 3, lower section):

  1. BusinessRulesManagerImpl.java
  2. IBusinessRulesManager.java
  3. XMLHelper.java

Figure 3: Checked out files

After coding has been competed, the application developer checks in all the files (see Figure 6) by completing the tasks (see Figure 4):

Click here for a larger image.

Figure 4: Application Developer completes a task

Page 1 of 3

This article was originally published on May 2, 2008

Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Thanks for your registration, follow us on our social networks to keep up-to-date