||New Reviews| |Software Methodologies| |Popular Science| |AI/Machine Learning| |Programming| |Java| |Linux/Open Source| |XML| |Software Tools| |Other| |Web| |Tutorials| |All By Date| |All By Title| |Resources| |About||
Keywords: Java, Apache Ant, source control, automated builds
Title: IBM Rational ClearCase, Ant and CruiseControl
Author: Kevin Lee
Publisher: IBM Press
Verdict: An excellent resource for ClearCase users
Automated builds and continuous integration environments are key components of a mature development process. Although these are considered core practices for Agile developers, they are no less important for more traditional development shops no matter what methodologies they follow. The elements of an automated build and deployment environment include a build tool, a source control system and a continuous build server. In the Java world Ant is the de facto standard build tool, CruiseControl is the equivalent for continuous builds. For users of the IBM Rational ClearCase source control package Ant and CruiseControl can be combined with it to create a highly flexible and functional build and deployment environment, as detailed in this book by Kevin Lee.
The book functions partly as a primer of development best practice and partly as a tutorial that puts ClearCase together with Ant and CruiseControl to deliver a complete automated build environment. While the best practice primer part of the book is valuable to all developers, obviously the heart of the book revolves around the use of the IBM Rational tools and practices, which is of limited use for those using alternative tools (such as CVS, Subversion and the like).
The opening chapter of the book introduces they key concepts and definitions of software build and release management. It emphasises the benefits that an automated process brings: repeatability, reliability, efficiency. From there the next chapter looks at a selection of tools of the software build trade, including ClearCase for software configuration management (SCM), ClearQuest for change management, Apache Ant, CruiseControl and JUnit. Key ClearCase concepts, such as the Versioned Object Base (VOB) - basically the source control repository that contains the files and associated meta-data used by ClearCase for source management.
The third chapter moves up a gear and starts to look in more detail at ClearCase. It introduces a standardised directory structure for build tools. It walks through the process of creating a VOB, both for Base ClearCase and for the Unified Change Management (UCM) flavours of ClearCase. Branching strategies, workspace configurations and so on are all outlined.
Apache Ant is covered in some detail in the next couple of chapters, including initial installation, constructing build files and how to use Ant from within the Eclipse IDE. CruiseControl gets similar coverage, from download and installation right through to best practices and integrating it with ClearCase.
By this point in the book a complete automated build and deployment environment has been described. Apache Ant, wrappered by CruiseControl and jointly integrated with ClearCase are used to automatically build Java projects when source files and checked into ClearCase. Subsequent chapters look in more detail at the integrated environment, release packaging, deployment, worked examples and more.
The writing is clear and to the point, with plenty of examples, screen shots and good advice. For users of Rational ClearCase, particularly new users, this is an excellent resource on how to integrate it with some of the leading open source build tools to create an efficient and power build and deployment environment.