Definition for Alpha Version:
In software development, testing is usually required before release to the general public. This phase of development is known as the alpha phase. Testing during this phase is known as alpha testing.
In the first phase of alpha testing, developers test the software using white box techniques. Additional inspection is then performed using black box or grey box techniques. This is usually done by a dedicated testing team. This is often known as the second stage of alpha testing.
In a corporate environment, an Alpha test is not implemented in the workplace, but done in labs and simulated settings.
Definition for Beta Version:
Once the alpha phase is complete, development enters the beta phase. Versions of the software, known as beta-versions, are released to a limited audience outside of the company. The software is released to groups of people so that further testing can ensure the product has few faults or bugs. Sometimes, beta-versions are made available to the open public to increase the feedback field to a maximal number of future users.
Testing during the beta phase, informally called ‘beta testing, is generally constrained to black box techniques although a core of test engineers are likely to continue with white box testing in parallel to the beta tests. Thus the term beta test can refer to the stage of the software—closer to release than being “in alpha”—or it can refer to the particular group and process being done at that stage. So a tester might be continuing to work in white box testing while the software is “in beta” (a stage) but he or she would then not be part of “the beta test” (group/activity).
A Beta test is implemented in a live environment, but the applications that the software would replace are run as well so that in case the software being tested fails the operation can continue.