Continuous building of automation in software development based on CruiseControl and rational Unified change management

Source: Internet
Author: User

Continuous building of automation in software development based on CruiseControl and rational Unified change management

Introduction: This article describes the continuous build tools CruiseControl and IBM Rational Unified change Management integration solutions. Through the solution in this article, we can discover and evade the risk in the code as early as possible, follow the unified process to obtain the release software in time, ensure the speed and quality of agile development.

The necessity of continuous integration in the unified change management system

The unified change management software implemented by IBM Rational ClearCase and IBM Rational ClearQuest combines configuration management and change management, especially for medium and large projects, to achieve process control and management of the software development lifecycle. In this process, the code for change is constantly being checked in and delivered to the integration stream on the development stream. It is possible that developers have compiled and unit tested code on personal development streams prior to delivery. However, due to code conflicts and merging that may occur during the delivery process, or because of changes in the build environment, the build and test failures on the integration stream are caused. In order to identify and circumvent the risk of delivery as early as possible, speed up the build and release, the code needs to be continuously integrated, so the continuous integration of building tools is essential. At the same time, in order to reduce the errors caused by human intervention during the build process, follow a unified build process for all publications, and we want the process building tools to be as automated as possible.

CruiseControl is just such a tool for automating sustainable integration and building process management. CruiseControl is implemented based on ANT technology, and its implementation plug-ins provides the integration of different source control tools and build tools, and implements the build results email notification and build artifacts unified Web interface management. In addition, CruiseControl is the Java language implementation of open source, so users can modify the code or the placement of scripts to implement the construction process personalization.

This paper mainly introduces CruiseControl and unified change Management integration scheme based on IBM Rational ClearCase and ClearQuest, and integrates cruisecontrol into software lifecycle management through personalized scripts to realize the whole development process. of automation.

Two building patterns--unit building and daily building

Unified change management based on IBM Rational ClearCase and ClearQuest is mainly applied to medium and large team projects. Frequent delivery and integration are critical in order to quickly identify problems with code merge in delivery. For large and medium projects, if each person delivers one delivery per day, the integration build tool needs to be integrated into each delivery as quickly as possible to identify problems and narrow the scope of the problem. However, the general project may take several hours to complete the build. To shorten the build time and find the problem as much as possible, this introduces the concept of unit building and daily build.

Unit construction

In order to achieve the problem of early detection, we designed the unit construction. Unit building is the build process of compiling and unit testing only for modified source code, based on a successful previous build. CruiseControl provides the ability to integrate with ClearCase to monitor the integration flow of UCM projects, when the code based on the change request is delivered to the integration stream, and the new element version is created on the stream, CruiseControl starts the Unit builder. This build can be incrementally compiled in order to quickly find out if there is an error in the code that is being delivered and merged into the code on the integration stream. Of course, some problems can only be found in full compilation, but given the fact that this problem is not occurring frequently, and to achieve a short period of time to complete the unit build, and then to check the other delivered code, we could leave the problem of the complete build to the daily build. In addition, you can include basic automated test scripts in your build scripts for early detection of problems with integrated code. Failure to execute any test case in a script directly results in a unit build failure.

Figure 1. Typical process of unit building in continuous integration

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.