There was a time when you had to wait years if not months, to hear of a new software product hitting the market. Now the times are such that every new day, a new software is being released. Microsoft being one of the largest software vendors is always ahead of its competitors. Sure, the release of its operating systems have got so delayed that they have given rise to a whole new category of IT jokes, but you can't ignore the fact that Microsoft products are eagerly awaited by developers all across the world.
In recent times, most of the software released by Microsoft has had terms like RC, CTP, RTM or RTW in the announcements. So what are these terms? What's the difference between RTM and RTW? And what's an alpha release? This article attempts to answer these queries.
This term is used to refer to the build of the software that is tested by internal testers. These may include specialized testing teams or in some cases, includes the client in the presence of the tester or developers.
This is the term given to the software build after it has passed the alpha phase of development and has been released to users for testing before the final release. Users test the beta and provide feedback on it, reporting any bugs that are found, which are then fixed by the developers. Since beta software builds are pre-release builds, they are quite often unstable and can even cause crashes.
For Microsoft products, beta testers are usually the developers and community members. Microsoft often releases free versions of the beta software. Silverlight, for example, recently had a beta version release before the final version 3 release.
This stands for Community Technology Preview. It is an incomplete preview of a new technology in progress. It usually comes out before beta and are used to gather feedback from the community during the development of a product.
This term stands for Release Candidate and refers to a version having the potential to be a final product, almost ready to release unless fatal bugs emerge, in which case further fixes will need to be done. For example, the Silverlight Release Candidate version around 25th September 2008 was called Silverlight RC0.
This stands for Released to Manufacturing. A few years earlier, when software was mostly released as CDs, it was first released to manufacturing who then burned a bunch of CDs and packaged them up to be put on store shelves. Today some call it "Release to Marketing"
This term is used to indicate that the software build has met the quality level laid down and is ready for mass distribution. RTM usually does not mean the software is actually released. It would mostly mean that the software is being released for pre-installation on ready machines, or for the manufacturer so that the software for their manufactured hardware and settings can be adjusted.
Silverlight 2 RTM was available on 13th Oct 2008.
This term stands for "Release to Web". It indicates that the software build is ready to be released or distributed on the Web. No tangible product such as a CD is produced in this case. Silverlight 2 RTW was available on 14th Oct 2008 and Silverlight 3 RTW on 10 July 2009.
This stands for Service Pack. It is an RTM (or RTW) release of fixes and/or improvements to some software. They are tested very thoroughly by the entire QA organization and are posted on the Microsoft download page where developers can get them instantly.
Conclusion: This article demystified some of the popularly used software release terms.