What is CM?
Versions & Branches
ClearCase on NT
- What Problems Does ClearCase Address?
Your company has selected ClearCase to solve some very
specific and challenging problems that confront all
companies which develop software. Your ability to use
to address these problems is part of your company's
competitive edge. Chances are your competition is also
So, what are these problems?
- Reproducability of Releases
How can we see the exact versions of source files (and
include files, documents, etc.) that were used for the
XYZ release of product ABC?
How can we see the exact binaries for that release?
- Concurrent and Parallel Work
How can people work on the same files at the same time in
the same project? How can multiple projects exist at the
same time for the same product?
How can we manage the source for the different variants
of our product set, like platform or architecture, product,
feature set, localization, etc.?
- Third Party Integration
How can we integrate our products with third party software
when we have no control over how they manage their files?
- Build Avoidance
How can we minimize the amount of time engineers spend
waiting for builds? Does everyone need to recompile files
in their workspace when a widely included file is changed?
- Workspace Management
How can people keep files for different projects separate?
Does everyone need a copy of all files to get their work
- Process Control/Shepherding
How can we make the development environment aware of our
engineering processes so that it can help us avoid
missing important steps or making mechanical mistakes?
- Change Migration
How can we ensure that fixes made to one release make their
way into subsequent releases? How do we move changes in
a maintenance release into the development release?
- How Were They Addressed Before
Historically, some companies have expected these
problems to be solved by engineers without providing the
tools and infrastructure to support the solutions.
Engineers have used Version Control systems like
RCS, SCCS, and PVCS as a starting
point for addressing these problems.
software guru (who may no longer work at the company)
will have created a
proprietary software systems built on top of these
Version Control systems.
But invariably these proprietary systems are limited both
in flexibility and scalability. They just don't work
well when the number of files, projects, products and
engineers gets large.
Typically there isn't enough time
to devote to enhancing that proprietary CM system, so the
engineers suffer with inadequate tools. This may
continue until situation
gets so bad that schedules get missed, quality problems
arise, and people are tempted to quit in frustration!
Sound familiar? It is a common tale in the explosively
growing software industry.
When a company decides to actually
fix their CM problems then they often turn to ClearCase.
ClearCase is an engineering infrastructure that can support
effective solutions to all these problems, in a manner that
scales up to the needs of even the very largest producers
of Software. Companies like Oracle®, Sybase®
Motorola®, AT&T® and
Microsoft® use ClearCase to manage their software and
more. It is a good sign that your company has decided to