Martin Fowler has updated his overview article on Continuous Integration. If you’re not doing something along these lines, you’re introducing unnecessary risk to your project. Martin Fowler is considered one of the “founding fathers” of Agile development, but I would argue that Continuous Integration has little to do with Agile, and much more to do with common sense. Whether you’re on a waterfall project, an incremental delivery project, an Agile project, or any type of project involving software development, you should be practicing these concepts.
Here is Martin’s list of practices:
- Maintain a Single Source Repository.
- Automate the Build
- Make Your Build Self-Testing
- Everyone Commits Every Day
- Every Commit Should Build the Mainline on an Integration Machine
- Keep the Build Fast
- Test in a Clone of the Production Environment
- Make it Easy for Anyone to Get the Latest Executable
- Everyone can see what's happening
- Automate Deployment