Where did the terms “alpha” and “beta” in software development come from?
… to beta-test is to test a pre-release (potentially unreliable) version of a piece of software by making it available to selected (or self-selected) customers and users. This term derives from early 1960s terminology for product cycle checkpoints, first used at IBM but later standard throughout the industry. Alpha Test was the unit, module, or component test phase; Beta Test was initial system test. These themselves came from earlier A- and B-tests for hardware. The A-test was a feasibility and manufacturability evaluation done before any commitment to design and development. The B-test was a demonstration that the engineering model functioned as specified. The C-test (corresponding to today’s beta) was the B-test performed on early samples of the production design, and the D test was the C test repeated after the model had been in production a while.
In a description of development of storage devices at IBM in 1969:
Before a product could be shipped, procedures in place at the time required successful completion of three levels of reliability testing designated as product tests, A, B, and C. Completion of A test was normally required before a product could be announced; it verified that the product built by the development group met design objectives. Completion of B test was required for release of the product to manufacturing; it demonstrated that the documentation supplied to manufacturing by the development group adequately specified the product. Completion of C test was required before a product could be shipped; it demonstrated that manufactured hardware performed as specified.49
49K. E. Haughton, 24 August 1988; interview by E. W. Pugh.