Waterfall model
Requirements analysis
System design
Implementation
System testing
System deployment
System maintenence
Waterfall model advantages and disadvantages
adva
- Easy to understand, simple to use. Good for management control as each phase is completed before
- Provides structure for inexperienced staff
- Project milestones are well understood
- good when quality more important than cost
disad
- All requirements known upfront (deliverables for each phase are frozen)
- Can give a false impression of progress (different stages take different amounts of time)
- does not reflect problem-solving nature of software development (cannot change core features or functions)
- integration is done all at once at the end
- no customer input during process
Iterative ‘Prototyping’ methodologies
Sits between predictive and adaptive approaches
- characterised by building multiple prototypes
- can be RAD (Rapid application development), RP (Rapid prototyping) or IIM (iterative incremental model)
Rapid Application development
Iterative incremental model
Similar to RAD but instead you create one piece of the project at a time
Prioritise requirements at start, begin by only completing the high priority requirements
incremental vs iterative
incremental - complete one piece at a time
iterative - start with a rough product and refine over time
Agile methodology
A modern version of incremental and iterative approaches
- based on concept of MVP (minimum viable product)
- focus on production of product in a short period with rapid release timescales
- different to iterative models as you are creating a series of products instead of prototypes
- less focused on documentation
- promotes collaboration between team and client
- reacts better to changing requirements
Agile manifesto
individuals and interactions over processes and tools
working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Readmore about
agile