The application development lifecycle starts with a primary development phase in which the application is conceived, requirement analyzed, designed and developed. This is the first version of the application which enters in the real iterative development process after it passes the QA. The subsequent versions are developed in timeboxed releases of fixed durations (usually every month). Each monthly release starts with the release planning and identification of a realistic scope. The design and development activity is carried out and the application undergoes a QA cycle which is followed by the rollout to the production environment. A typical QA cycle includes sanity and regression testing. Some releases target only the non-functional enhancements (such as performance, load balancing etc.). The QA cycle for these releases also include load/stress testing exercises. The diagram below explains the whole process:

[Click to enlarge]
|