Columns

A StarTeam 3.0 is born

Nearly every software development project requires version control, defect/change request tracking and some form of electronic communication between team members. These tasks are often done without any integration between the various applications that perform them. E-mail and common directories for documentation files are often used in lieu of any groupware collaborative communication package.

StarTeam 3.0
StarBase Corp.
Irvine, Calif.
714-445-4400
StarTeam 3.0 from StarBase Corp., Irvine, Calif., consolidates all of these functions into a single application. The company even offers a "collaborative upgrade" to current users of other defect-tracking or version control software. For example, StarTeam can work in concert with existing Visual SourceSafe or PVCS databases, allowing users to employ a single front end. This provides an easy migration path between older versions of files stored in a previous vendor's products and ongoing work stored in StarTeam.

StarBase offers different configurations of the software; for example, users can purchase Version 2.0, which is simply the version control software, and then use file-level access (multiple users are supported) to maintain a source. The standalone version package is one of the most reasonably priced offerings available from any major vendor.

The next level, StarTeam Workstation 3.0, provides version control, defect-tracking and group discussion software, and uses file-level access to provide these features. File-level access sets reasonable limits on the number of users, but requires LAN connectivity that could pose a potential security concern. It also needs the workstations to do all of the processing.

At the upper end of the product line is StarTeam Professional 3.0 and StarTeam Virtual Server 3.0. StarTeam Professional has all of the capabilities of StarTeam Workstation and can be used with file-level access. However, the product can also interface with StarTeam Virtual Server using one of a variety of supported protocols in a true client/server implementation. Remote access is supported over the Internet using a browser or TCP connection (the server must be addressable over the Internet). This is the configuration I purchased and which I recommend to others.

AN INTEGRATED SOLUTION

Before diving into the specifics of how the application works, you might be wondering why you need an integrated solution and group discussion software. The answer is threefold: administration, security and linking. The administration issue is straightforward -- only one installation per developer workstation is needed. This means that there is only one directory (and its subdirectories) of concern in backups, one user management interface to deal with and one support number to call. All of the product's data is encrypted and password protected. Linking allows users to specify a file or defect associated with a discussion item or vice versa. It also provides tight integration of the tools.

StarTeam can serve as a repository to store pertinent project data. Developers can record when data was requested, and more. Discussions can provide a good structure for capturing project requirements.
Group discussion software provides a good structure for capturing all project requirements and design documents, as well as functionality for threaded conversations. Because it is hierarchical, users can subdivide documents and discussions into meaningful designations; users can also link to and from defect/change requests. While similar in many respects to an internal newsgroup, it provides much more. For example, using the software as a repository to store all pertinent project information allows users to record when information was requested and who requested it.

If you use StarTeam Virtual Server, you will want to install it first. I installed it under NT, but some Unix variants are also supported. After installation -- a straightforward, wizard-driven procedure -- user groups and users will need to be added, much as you do in NT. In fact, user groups and users can be imported from the system. A database and "vault" (StarTeam data area) will also need to be created for the server, another wizard-driven operation. In fact, StarTeam does a very good job of providing wizards to handle most standard procedures. Once the server has been installed, and the initial options have been chosen, most additional configuration work can be done from a client workstation logged in as an administrator.

The StarTeam Virtual Server also includes some additional programs to support browser access over the Web. The StarTeam Professional client software will connect over the Internet using TCP and provide a higher level of functionality as well as greater throughput. Unless you need to access the server from non-PC hardware or from PCs that do not have the client software loaded, the additional Web server support is not that important.

On the client side, installing and running StarTeam Professional (or Workstation if you are not using the Virtual Server) is quite simple. Again, wizards abound.

After installing and configuring StarTeam on a workstation, users can open a project by either opening a file or connecting to the server. An interface, usually a window with three visible panes, will be shown. On the left is a folder hierarchy for disk browsing that is very similar to the Windows Explorer layout. In the upper right is a tabbed interface that lets users select between File (version control), Change Request (defect tracking), Topic (discussion) and Audit (a log of all activity). Once an item has been selected in the upper right-hand pane, the details appear in the lower right-hand pane.

Views can be customized to specify what fields appear and in what order at the top; users can also create or apply filters to limit the amount of information shown. The file view can also be configured to show only the most current files or to view only those open change requests assigned to a particular user.

StarTeam's version control uses the terms "check out" and "lock" in a way that can be confusing to users of other systems. Checking out a file is simply copying the most recent version to the local drive, it does not assign ownership for editing. Locking assigns ownership. Merging of changes to the same file is also supported. A separate application, Visual Diff, lets users find changes between two versions of the same file easily. In addition, version labeling and date stamping recreate an earlier version from previous revisions.

The product's defect/change request tracking is adequate, but not outstanding. One drawback is that there are not many canned reports available. However, the features are simple to understand and use, and meet the needs of most projects admirably.

Finally, the Audit tab contains detailed information about every operation performed to add, remove or maintain files/entries in the folder being browsed. This provides an accurate accounting of when every operation was performed and by whom.

About the Author

Andy Barnhart is an 18-year-veteran software developer and project manager. He currently works as a consultant with Cii Associates, Raleigh, N.C.