Information Technology Reference
In-Depth Information
the external behavior of the code yet improves its internal
structure.” 5 Among other benefits, this makes the code easier to
maintain. CI can assist with refactoring by running inspection
tools that identify potential problem areas at every build.
Small releases —This practice allows testers and users to get
working software to use and review as often as required. CI
works very well with this practice, because software integration
is occurring many times a day and a release is available at virtu-
ally any time. Once a CI system is in place, a release can be gen-
erated with minimal effort.
Collective ownership —Any developer can work on any part of
the software system. This prevents “knowledge silos,” where
there is only one person who has knowledge of a particular area
of the system. The practice of CI can help with collective owner-
ship by ensuring adherence to coding standards and the running
of regression tests on a continual basis.
How Long Does CI Take to Set Up?
Implementing a basic CI system along with simple build scripts for a
new project may take you a few hours to set up and configure (more if
you don't have any existing build scripts). As you expand your knowl-
edge of the CI system, it will grow with the addition of inspection
tools, deployments that are more complex, more thorough testing, and
many other processes. These additional features tend to be added a lit-
tle at a time.
For a project already in progress, it can take days, weeks, or even
months to set up a CI system. It also depends upon whether people
have been dedicated to work on the project. Usually you must com-
plete many tasks when moving to a continuous, automated, and head-
less system such as when using a CI server. In some cases, you may be
moving from batch or shell scripts to a build scripting tool such as Ant
5. Fowler, et al. Refactoring: Improving the Design of Existing Code (Reading,
MA: Addison-Wesley, 1999).
 
Search WWH ::




Custom Search