Since IBM first used the terms 'alpha' and 'beta' in the 1970s, there have been conventions for the naming of parts of the software development (and release) cycle.
Most developers abide by a commonly accepted nomenclature, but recently Microsoft Corporation have redefined standard terms when referring to builds of their own software. This has caused confusion as users find themselves needing to remember what Microsoft really mean when they name a build.
| Term | Standard definition | Microsoft definition |
|---|---|---|
| Pre-alpha / development release / nightly build | Software is not yet in testing. Construction is in progress. New features are being added. Various builds at this stage may be referred to as 'milestones' as a new feature is considered somewhat 'complete'. | As standard definition. |
| Alpha release | These builds are given to the software testers. Testers may include customers. | Milestone releases (see pre-alpha) are referred to as 'alpha'. |
| Beta release | These builds are the first released to end users of the application (unless you count those who got the 'alpha' builds). Such releases are feature-complete but may have minor issues (e.g. non-critical bugs). In general, the software is usable aside from minor niggles. | Beta releases may yet have new features added. They are labelled 'CTP', which stands for 'Community Technology Preview'. They are usually quite unstable. |
| Release Candidate | A Release Candidate, or RC, has the potential to be relabelled as the 'final' build. If no showstopper bugs (e.g. the software installer fails to start, the software is found to destroy important data) are found during the testing period, the build will be relabelled and no changes will be made. | The build is feature-complete, but may still contain major flaws, lack any documentation, be missing graphics, translations, etc. |
| Escrow build | Term not used | As standard RC term - should have complete documentation, graphics, etc. |
| 'Release', 'RTM', 'Golden master' | The release which is given to all users. | As standard term. |
Other terms are used within Microsoft to refer to builds. I haven't heard them elsewhere, so I'll give them their own list.