Research & Development / Prototyping / Coding / Testing and "throwing it all together to get a first working build"
Pre-Alpha (or internal alpha)
Once ready, moving it to a less internal alpha with private testers is recommended, this is 'alpha stage'.
From alpha you can go live, allowing others to share to find additional feedback and bugs. I consider this pre-beta.
A private and/or public beta testing period has to start somewhere: Beta (beta 1).
Depending on completion of code, execution of ui/ux and improving on performance, allowing code under the hood to still be changed, and finishing up say documentation and what not. Various public beta releases might follow.
When there's a code freeze, and you could say it's 'the .zip you want to let people download', you can consider it ready enough. A release candidate (1) is born. This is also an option to put it up for sale. As a final RC-beta test. A few rc releases might follow. This is a great period to finalize documentation and site features as well.
Serious bugs out of the way? Minor todo list left? Satisfied customer feedback? Time for a 'RTM' or 'Gold' or 'Stable' release. The one you put in a shiny box with a bow around it.
A big amount of new customers will beta test it, finding more issues than before, and this could result in a few minor point releases to help improve stability and performance.
In the mean time beta tests can be done for newer bigger features, resulting in significant enough code changes to support them, allowing a version 1.1 beta followed by 1.1 stable. And the maintenance release cycle starts again until 1.2 or 2.0 is ready.
Creating software usually means having a mission statement, having done case studies and researc/development, prototyping your software and having an idea what you NEED NOW and what is more suitable for later. This creates an internal roadmap. And based on categories and ready-ness stages, you can have milestones, populated with todo items; All marking up an estimated amount of time something requires to be made, and when all milestones come together in the roadmap it's time for that first alpha, the second version or a major overhaul of the products.
At least
that's how I look at it. I am sure the real professionals have a better idea and stick to a better plan. This works for me when I make a web site, try out a web app, or build an iPhone app , etc.