Waterfall Model

Requirements Phase
What problem has to be solved? 

Specification Phase
What components form the solution, from the user's point of view? 

Planning Phase
Outline a time-table and cost estimate 

Design Phase
Architecture and Detailed Design: finding the solution, from the programmer's point of view. 

Implementation Phase
Write the code for each module 

Integration Phase
Integrate the modules and subsystems; install the system 

Maintenance Phase
Fix reported errors, provide updates, add new features 

Retirement
Decision that software is no longer useful or too difficult to maintain. If functionality still required, then redesign entire product, starting with requirements phase again. 

Testing Phase : Testing should be done at every phase.