Software in the beta phase will generally have many more bugs in it than completed software and speed or performance issues, and may still cause crashes or data loss. A beta phase generally begins when the software is feature complete but likely to contain a number of known or unknown bugs. Software in the beta stage is also known as betaware. See also: Software testing § Beta testingīeta, named after the second letter of the Greek alphabet, is the software development phase following alpha. A beta test is carried out following acceptance testing at the supplier's site (alpha test) and immediately prior to general release of the software as a product. At this time, the software is said to be feature complete.
The alpha phase usually ends with a feature freeze, indicating that no more features will be added to the software. In general, external availability of alpha software is uncommon in proprietary software, while open source software often has publicly available alpha versions. Alpha software may not contain all of the features that are planned for the final version. Alpha software may contain serious errors, and any resulting instability could cause crashes or data loss. Īlpha software is not thoroughly tested by the developer before it is released to customers. Moving to black-box testing inside the organization is known as alpha release. Additional validation is then performed using black-box or gray-box techniques, by another testing team. In this phase, developers generally test the software using white-box techniques. The alpha phase of the release life cycle is the first phase of software testing (alpha is the first letter of the Greek alphabet, used as the number 1). Milestone versions include specific sets of functions and are released as soon as the feature is complete. In typical open source development, there are several types of pre-alpha versions.
These activities can include requirements analysis, software design, software development, and unit testing. Pre-alpha refers to all activities performed during the software project before formal testing. "Beta" may also indicate something more like a release candidate, or as a form of time-limited demo, or marketing technique.
All pre-release builds released through the Windows Insider Program launched in 2014 are termed "Insider Preview builds". Since the introduction of Windows 8, Microsoft has called pre-release software a preview rather than beta. It noted that Gmail and Google News, for example, had been in beta for a long time although widely used Google News left beta in January 2006, followed by Google Apps (now named Google Workspace), including Gmail, in July 2009. In February 2005, ZDNet published an article about the phenomenon of a beta version often staying for years and being used as if it were in production level. and from 2009 to 2011, Minecraft was in public beta. Microsoft's release of community technology previews ( CTPs) for Windows Vista, between September 2005 and May 2006.
In 1984, Stephen Manes wrote that "in a brilliant marketing coup, Bruce and James Program Publishers managed to get people to pay for the privilege of testing the product." In September 2000 a boxed version of Apple's Mac OS X Public Beta operating system was released.
Major public beta's developed afterwards, with early customers having purchased a "pioneer edition" of the WordVision word processor for the IBM PC for $49.95.
The usage of "beta test" to refer to testing done by customers was not done in IBM. IBM dropped the alpha/beta terminology during the 1960s, but by then it had received fairly wide notice. Martin Belsky, a manager on some of IBM's earlier software projects claimed to have invented the terminology. As software became a significant part of IBM's offerings, the alpha test terminology was used to denote the pre-announcement test and the beta test was used to show product readiness for general availability. "C" test was the final test before the general availability of the product.
"B" test was the verification before releasing the product to be manufactured. "A" test was the verification of a new product before the public announcement. Similar terminologies for IBM's software development were used by people involved with IBM from at least the 1950s (and probably earlier). Usage of the "alpha/beta" test terminology originated at IBM.