|
Alpha and Beta releases
Software release life cycle - stages of development
Alpha and Beta releases
"Program testing can be used to show the presence of bugs, but never to show their absence!" Edsger Dijkstra
Whatever marketing claims, if the program has more than one new bug detected per week, it is still in alpha stage.
........................ The term beta test comes from an IBM hardware product test convention, dating back to punched card tabulating and sorting machines in 1940s. Hardware first went through an alpha test for preliminary functionality and small scale manufacturing feasibility. Then came a beta test, by people or groups other than the developers, to verify that the hardware correctly performed the functions it was supposed to, and that it could be manufactured at scales necessary for the market. And finally, a c test to verify final safety. With the advent of programmable computers and the first shareable software programs, IBM used the same terminology for testing software. The old IBM term "field test", nowadays is called "beta test" and it refers to testing done by selected customers. ..........................
Different software companies have different definitions of “alpha,” “beta,” and “release” quality. They also have different notions of what version numbers mean. Here are the definitions we strive to adhere to:
★ alpha Alpha quality software has undergone only the most superficial of testing. It may contain known bugs, and almost certainly contains unknown bugs. Features intended for the final release may be incomplete or missing. We rarely release alpha quality software to the public.
★ pre-Beta is often sent "into the wild" for limited-use by uncontrolled, but friendly users - it often requires heroic efforts of help-desk personnel, in order to resolve manually all product issues created by glitches or lack of more advanced features
★ Beta Beta quality software has all features intended for final release. Generally, we will have fixed all known bugs, but sometimes we will allow bugs we consider minor to be in beta software. Beta software has been tested, but not extensively. It probably contains many bugs that we have not discovered.
★ Beta2 Beta2 release quality software has been tested extensively on multiple computers with different software versions. It will contain no known bugs, unless the bug is difficult to remove, rarely encountered, and documented thoroughly. It probably contains undiscovered bugs.
★ Sub-minor version number The difference between, say, 1.2.3 and 1.2.4 is supposed to be only bug fixes. But sometimes there will be a few minor additional features when we feel that it is unlikely that those features will create bugs that affect older features. (Bugs in old features that are introduced with a new version of the software are known as “regressions.”)
★ Minor version number The difference between, say, 1.2.3 and 1.3 will be the introduction of some minor features and/or a some change in how the application operates. While we endeavour to test all our software before releasing it, such changes frequently result in regressions.
★ Major version number The difference between, say, 1.2.3 and 2.0 is usually the addition of numbers of new features, and/or a major change in how the user interacts with application. Often there will also be major changes in the underlying structure of the code that we fear may introduce regressions. Major version number releases will often contain many bugs and regressions.
★ Alpha and beta version numbers The difference between 1.2.3α1 and 1.2.3α2 can be bug fixes and implementation of incomplete features. The difference between 1.2.3β1 and 1.2.3β2 will usually be only bug fixes. There is usually no difference between the final public beta and the release version.
------------------------------------------------------------------------------------------ ★ What is the difference between an alpha and a beta version of a prototype?
--------------------------------------------------------- Vincent Turner, UX, Software, DJ, Social Ventures --------------------------------------------------------- The answer to this question lies in the context so let's consider that. Assuming we're talking about software and the focus is on people who will actively use the product then here would be how I would explain each item
Prototype: Is designed to effectively communicating the core features or benefits to potential users or other stakeholders (e.g. investors or developers). It can be done in something as simple as Balsamiq or even paper and really is to visualize the main things people will be able to DO with the tool as a way of helping stakeholders to attach the solution to problem you are solving. This term is also often used by developers when they want to hack together a quick version the proposed tool to quickly hit and work to understand or even resolve likely technical challenges.
Alpha: Is a coded version of the key features of the solution that will give people a chance to actually interact with proposed solution. It's critical as there is always risk that the 'I like the sound of this' to 'actually, this doesnt make any sense' will happen at this stage and you want to get to that point with minimal development. Alpha versions can often be done using more interactive wireframing tools that can even be pulled into code later on. Any competent team with conviction for what they are doing however will code an Alpha as the basis for what will become the actual product. Often an Alpha will be used to also identify and/or resolve any key technical challenges expected in the development.
Beta: A coded and more polished version of the key features of the solution that could be used directly by a third party audience with the intent to PROVE that people actually want the solution and also to gather additional data relating to usage to be able to support future investment and what should be developed or changed next. They can be run privately (hidden or limited/handpicked set of people). This is usually when there is risks, unknowns or a likelihood of things breaking and you dont want to ruin your brand. Public betas are usually more about setting the right expectations with users. 'Yes, we know that feature would be a good ideas, we're working on it'.. or 'Hey, try it.. BUT you should expect to hit issues cause it's just been released so don't get all uppity if/when you do' --------------------------------------------------------- Vincent Turner --------------------------------------------------------- Colin Dowling, Jack of all trades, master of none.
Alpha - "this is mostly sort of kind of what it should do"
Beta - "this is the finished product except for all the stuff we don't realize we haven't finished yet"
---------------------------------------------------------- Suman Karumuri, Built many websites. ---------------------------------------------------------- In layman's terms: Alpha version: The core features of the product work in a dev or testing environment under ideal conditions.
Beta version: The core features work for a small set of co-operating beta customers under semi-ideal conditions.
---------------------------------------------------------- Susan Haimet, CoFounder DreamFace Interactive ---------------------------------------------------------- An alpha version of a prototype (software in my case) is an internal version lacking bells and whistles, partially testing (containing known and unknown bugs) and lacking some key features. Usually it has core functionality which allows it to be used by a small group to test functionality and work out issues while building out the feature set. It can usually be demoed but is not ready for evaluation outside the group. A beta has a core feature set implemented and is stable enough to be used and evaluated by a restricted larger group but may even be ready for target users. A road map is usually provided to detail up coming features with a time line indicating when they can be expected. ------------------------------------------------------------------------------------------
Bibliography and web links: http://www.3am.pair.com/beta.html http://www.quora.com/What-is-the-difference-between-an-alpha-and-a-beta-version-of-a-prototype#
|
|