If you don’t know where you’re going, any road will do.
If you don’t know where you are, a map won’t help.
—Watts Humphrey
Every program has a life cycle. It doesn’t matter how large or small the program is, or how many people are working on the project—all programs go through the same steps:
Conception
Requirements gathering/exploration/modeling
Design
Coding and debugging
Testing
Release
Maintenance/software evolution
Retirement
Your program may compress some of these steps, or combine two or more steps into a single piece of work, but all programs go through ...