Information Technology Reference
In-Depth Information
The practice of CI continues to evolve. You'll find the practice in
almost every XP book. Often, when people discuss the practice of CI,
they refer to Martin Fowler's seminal “Continuous Integration” article. 4
As hardware and software resources continue to increase, you'll find
that more processes will become a part of what is considered to be CI.
How Does CI Complement Other Development
Practices?
The practice of CI complements other software development practices,
such as developer testing, adherence to coding standards, refactoring,
and small releases. It doesn't matter if you are using RUP, XP, RUP
with XP, SCRUM, Crystal, or any other methodology. The following
list identifies how the practice of CI works with and improves these
practices.
Developer testing —Developers who write tests most often use
some xUnit-based framework such as JUnit or NUnit. These
tests can be automatically executed from the build scripts. Since
the practice of CI advocates that builds be run any time a change
is made to the software, and that the automated tests are a part of
these builds, CI enables automated regression tests to be run on
the entire code base whenever a change is applied to the software.
Coding standard adherence —A coding standard is the set of
guidelines that developers must adhere to on a project. On many
projects, ensuring adherence is largely a manual process that is
performed by a code review. CI can run a build script to report
on adherence to the coding standards by running a suite of auto-
mated static analysis tools that inspect the source code against
the established standard whenever a change is applied.
Refactoring —As Fowler states, refactoring is “the process of
changing the software system in such a way that it does not alter
4. See www.martinfowler.com/articles/continuousIntegration.html.
 
Search WWH ::




Custom Search