ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott Stirling" <>
Subject ClearCase UCM and Ant Best Practices
Date Fri, 30 May 2003 12:39:46 GMT

I'm working on a StarTeam to ClearCase UCM conversion.  It's very
interesting how UCM comes with certain restrictions that don't exist with
other SCM systems such as Perforce, CVS and StarTeam.  If you don't know,
ClearCase UCM (Unified Change Management) puts a layer of abstraction on top
of base ClearCase, such that the low level, day-to-day SCM interaction and
organization you are probably used to from other SCM systems (including base
ClearCase) is encapsulated/buried under Projects, Components, and

A Project can be made of an arbitrary set of Components.  A Component is a
collection of files and folders that is self-contained within a top-level
directory, and is a versionable, buildable unit.  Components cannot be
nested and neither can projects.  Sharing files between Components can only
be done by putting the files in a Component -- there's no such thing as a
loose directory or a file that's not part of one Component or another in
ClearCase UCM.

The bottom line is that in UCM you must re-think your source control in
terms of Components (isolated top-level directories and their contents) and
their dependencies.  You aren't just dealing with a hierarchical file system
structure.  Why UCM, you ask?  Because management wants it for
accountability, reporting and project management (via ClearQuest, the
defect/change request tool), and QA wants it for ClearQuest (which
integrates beautifully (in theory) with UCM out of the box).

The product and management requirements are such that we have an enterprise
Java and Oracle product broken up into 4 or 5 different UCM projects, with
5-10 Components in each.  We're trying to support versioning and
upgradability at a pretty low level -- i.e., the level of subsets of Java
packages and various tid-bits inside a single war file.

Anyway, UCM, Ant and Java seem to be a rare combo in comparison to other
SCMs.  I'm looking for best practices for organizing a large Java project in
UCM and building its various Components and Projects with Ant.  I'd greatly
appreciate any pointers.  I've searched Google and the Rational Dev site
with scant results.

Scott Stirling
Framingham, MA

View raw message