Skip to main content

The importance of continuous integration

Leading a team of developers in the effort of building a robust, quality software product should involve the establishment of some process and tools to assist the team effort and serve as a safety net for the errors of getting people to work together. Continuous integration is, I believe, a crucial element of that process. Introduced by Martin Fowler and Matt Foemmel (see article Continuous Integration), continuous integration establishes the practice of frequent integration of work developed by the several team members verified by automated build and testing of integrated code within a clean sandbox. This practice is valuable for several reasons:
  • It promotes the development of a clear process of building/deployment independent of any specificity of developer's platforms. Code that exists on a single platform only is bound to become dependent on specific aspects of that platform without anyone really noticing the dependencies until trying to port to other platforms. The existence of the integration clean sandbox allows these specific dependencies issues to not go unnoticed.
  • It promotes the development of testing. Being based on the premise of "test often" it makes the testing development part of the team's process. The fact that there is a platform built specifically for build and testing verification transforms, from the developer's perspective, testing efforts into an even more useful and justifiable effort.
  • It allows for quick detection of code integration issues by providing the clean slate for bringing all the code together. The little quirks of code combining can be detected by effective smoke/regression testing.
How hard is it to put in place continuous integration ? It depends a lot on where you are in your development process when you decide to take it up. If your team already makes use of build tools (e.g. Ant, Maven, even Make), makes use of a version control system (e.g. CVS, Subversion) and already does some kind of automated testing (e.g. xUnit) it can become pretty straightforward (You do use these don't you?!?). Continuous integration becomes simply a matter of setting up the integration sandbox and establishing the automation to detect changes in the version control system, building the changed system and testing the changes. You do not even need to go very far to accomplish that. You can find already systems that give you the continuous integration functionality that you need. At Tizra we have chosen to use the Cruise Control open-source, free framework for our continuous integration process (BSD-style license). It does pretty much what we need to do and keeps us on top of any integration issue that might arise from our development effort. It provides us unit tests results gathering, reporting and historical stats gathering for all checks. Continuous integration should be, in my opinion, an important practice for any serious software development company and I, for one, will make every effort to ensure it is put in place in every project I work with.

Comments

Popular posts from this blog

Texas Tech University Center Goes Digital and Reduces Print Budget by 80 Percent

CCFCS curriculum materials hosted by Tizra are winning raves from teachers. After 44 years of empowering teachers with print materials that were aligned with key instructional goals, Texas Tech Curriculum Center for Family and Consumer Sciences (CCFCS) made the bold decision to go 100 percent digital using the Tizra digital publishing platform. At first, the task seemed daunting.  “We printed out a copy of each of the curricula and some of them were four inches thick,” says center director Patti Rambo.  In addition to a massive quantity of materials for its 33 courses with 300-350 teaching strategies per course, the school also needed to meet aggressive revenue goals and appeal to a diverse customer base. The Center’s search for solutions was exhaustive until they were directed to Tizra. “Tizra is flexible enough for us to make up the rules as we go along,” said Rambo. “We were able to design our pages so there’s less scrolling, and we were able to color code the courses

Case Study: ARL Walks the Walk on Accessible Content

The Association of Research Libraries (ARL) provides leadership in public and information policy to 125 research and academic libraries in the U.S. and Canada. A few years ago, in an effort to increase community engagement and reduce costs, ARL made the move from print to digital publications using the Tizra platform. "Our goal was not just to go e-only, but to get there with enhanced functionality," said Publications Program Officer Lee Anne George. When evaluating digital publishing platforms, ARL had some critical requirements including: Support for existing publication formats A full e-commerce platform supporting both free and paid content, as well as password- and IP-authenticated access for individual users or entire organizations Mobile responsive design support Full-text searching including relevancy ranking and linking to specific pages in search and social sharing Support for ARL's digital accessibility mandates After extensive testing, incl

Webinar Sneak Preview: Strategic SEO - Increasing Your Organization's Visibility

Q+A with SEO expert Pam Long of True Digital We caught up with Pam Long and asked her to answer just a few SEO-related questions in advance of her upcoming webinar - Strategic SEO: Increasing Your Organization's Visibility . In this session, Pam will focus on the SEO challenges faced by association and mission-based publishers and organizations, and the Q+A below is just a small taste of the information she has to share, and she'll be taking your questions throughout the webinar! To register for this free webinar which takes place on Thursday, October 12 from 1pm ET - 2pm ET, click here . 1. What's the biggest SEO challenge facing association/mission-based publishers? You need to face the reality that there are organizations out there that have been generating content with the intent of being found far longer than many associations have had digital content available at all. You’re competing against the likes of Google Books and Amazon, who are very, very good