a diagram showing the stages of application development