If you had to create a workflow to manage your development process what steps/stages would you implement? Would you keep it small or make it as detailed as possible?
It seems to me that I need a process that starts with a user wish list and ends with a build in production.
Here are buckets I'm planing on using per feature
2. Initial Requirements
3. Review ( Approve / Reject)
4. Detailed Requirements.
5. Approved for Development (enters the development backlog)
7. Unit Testing
8. User / Play Testing (reject / approve)
9. Build & Release
Having a vision for your game and a small amount of planning is definitely beneficial. You don't want to dive into a game project that is too large in scope and you want to have a rough idea of what you final game will be like but this waterfall approach has a major flaw. You cannot anticipate everything you game needs or even if it will be fun in the planning stages. If you lay out a detailed map of what your final game will be like you will find major problems with the gameplay partway through development. At this point you can scrap all the work you did in planning or just stick to the script and have your gameplay suffer because of it.
Alberth describes pretty well what I try to do. Build the game in small incremental steps. Try out the gameplay early with simple prototypes. Be willing to kill an idea that will either take more resources than it is worth or just isn't fun. Identify problems with gameplay and come up with solutions as you find them. Eventually you begin to converge on your final game, which may be quite different from your original idea.
I think that if the above waterfall method is used per feature it won't have such a flaw. I agree you can't anticipate everything.