Explain the main concepts of the Waterfall method:
What stage(s) of the Waterfall method are customers involved in?
Involved in the Analysis (beginning) but have little input until the Evaluation (end).
What is the origin of the waterfall method and how well is it used nowadays?
Taken from the manufacturing industry but ow superseded by more effective models.
Explain the main concepts of the Spiral method:
Uses the same structured steps of waterfall method but focuses on an overall iterative (repeating method) of development.
What happens at the start of the Spiral method?
Requirements are defined and developers work towards an initial prototype.
What does each ‘loop’ of the spiral process produce?
Each ‘loop’ generates a refined prototype.
What types of project is the Spiral method used for?
Large scale projects that may take a long time to deliver.
What are the stages of the Spiral development? Provide a definition for each one.
Explain the main concepts of the Agile Development method:
Why does Agile Development focus on iterative development?
Recognises that requirements may change during development.
What does Agile modelling depend on?
What is Extreme Programming?
XP is a form of Agile Development intended to improve software quality and responsiveness to changing user requirements.
Explain the main concepts of the Extreme Programming method:
- Customer has heavy involvement.
What often happens as a development method with Extreme Programming and what is this called?
An ‘Analyser’ (Overseer) and ‘driver’ (coder) develop the software, switching roles often. This is called Paired Programming.
What is the downside and advantage to Paired Programming?
It is expensive but allegedly produces higher quality results.
Explain the main concepts of the Rapid Application Development method:
What is the advantage of RAD and what does it stop?
RAD allows a major product to be developed very quickly over a short time period. It stops large projects being canceled at a late stage due to changes in user requirements.
Where is the Waterfall method used?
Suitable for very small projects that need careful supervision, eg student/trainee projects.
What is bad about the Waterfall method.
There is a lack of user involvement.
What is good about the Spiral and Agile development methods?
What is the XP and RAD methods suitable for?
Large projects with a danger of getting ‘bogged down’ or side tracked by suggested improvements.