What is the difference between an alpha and a beta release? I'm surprised this question hasn't been asked here before.
In traditional software engineering, Alpha releases will still be introducing new features, while Beta releases will see no new features, but rather polishing up the existing stuff.
However the current development environment in game dev is that both of these are simply "not complete yet", and alpha is generally just "less complete" than beta.
Beta releases will still see new features, while sometimes I'll see alphas that simply try and flesh out existing stuff. And even a few things that stay in alpha or beta forever.
Alpha means the features haven't been locked down, it's an exploratory phase. Beta means the features have been locked down and are under development (no other features will be added).
Alpha: Usually the first normally interact-able thing out (private or public use is irrelevant).
If you are building something thats supposed to have a GUI - alpha is where you can rudimentary use the software to some degree of what the consumer is supposed to use. For games its where the core module/mechanic is somewhat usable. I've seen some coders call it alpha on a rudimentary basis that can be used only via command line or scripts - but most people refrain from doing so.
Beta: Most of it is working - all intended features may not be deployed yet - but its still breaking or at least bugging out often.
Over the years the beta "label" has been used as a prolonged excuse for broken games or lack of adequate support.
Not that the other way around is much more preferable. Many projects have been shipped off as complete when they were by all rights still beta. In the context of games - having easily detectable game breaking bugs has been the case quite a few times.
Generally while most of us can agree on definition the concepts are not uniform across every development space.
Pre-Alpha is the version before the Alpha version, Alpha is the version before the Beta version, Beta is the version before the Gamma version, Release Candidate is the version just before the release. It's basically just to denote "this version is not supposed to be completely satisfactory and may contain heavy bugs or may even be completely broken".
What the different notions mean exactly differs from developer to developer.
Alpha and beta testing are two of the stages that a software must undergo testing. Alpha testing occurs first and when the software passes that, beta testing can then be undertaken. If a software fails alpha testing, changes are done and it repeats the tests until the software passes.
So to answer your question, an Alpha and Beta release can be considered the 'testable deployed artifact' that you are currently developing.
Read more: Difference Between Alpha and Beta Testing | Difference Between | Alpha vs Beta Testing http://www.differencebetween.net/technology/difference-between-alpha-and-beta-testing/#ixzz338XZWLaj
Alpha version is the first working version and is for internal use (testing) only! After the programers are satisfied they release the Beta version to non employs who are hackers and stress testers who try to break it. The end result is a final release to the public that has stood the test of time! It's a win win for the manufacturer and the public!
That's the way it was intended to work but rarely does these days