Building applications is a critical part of software development. The build-process is the series of steps involved in assembling everything necessary to run your application and turning into something that can be natively executed. A build process might look like this:
- Create an output directory.
- Get latest version of source code from source control software. Also get latest version of any related files like images.
- Perform a full build/compilation of the source code.
- Create an install package.
- Copy install package to output directory.
- Logging every step.
- Alert developers when done.
Each individual step can be very involved. Two steps of the Joel Test are about the build-process:
Can you make a build in one step?
Do you make daily builds?
Builds are frequently automated; one of the steps of the Joel Test is the ability to perform a one-click build. Doing manual builds risks errors and has a high cost in developer sanity. Daily builds are important because they help catch errors that were checked into source control. There are many tools that can facilitate setting up automated builds like ANT/NANT.