General approach : General approach risks and uncertainties
are requirement well understood?
are technologies to be used well understood?
type of application being built
information system? embedded system?
criticality? differences between target and development environments?
Clients’ own requirements
need to use a particular method 2
Choice of process models : Choice of process models ‘waterfall’ also known as ‘one-shot’, ‘once-through’
Also use of ‘agile methods’ e.g. extreme programming
Waterfall : Waterfall 4
Waterfall : Waterfall Requirements and definition – The system’s services and constraints are analyzed and defined as system specification.
System and software design – Partitions the requirements into either hardware or software systems.
Implementation and unit testing – Software design is implemeted and each software unit is tested.
Integration and system testing – Software units are integrated and tested as a complete system. Then the software system is delivered to the customer.
Operation and maintenace – Operation of software system starts. Errors are corrected, implementation is improved, and enhancements are made. Usually this is the longest phase. 5
Waterfall : Waterfall The first published model of the software development process was derived from more general system engineering process.
Because of the cascade from one phase to another, this model is known as the “waterfall”. 6
Waterfall : Waterfall Advantages
Testing is inherent to every phase of the waterfall model
It is an enforced disciplined approach
It is documentation driven, that is, documentation is produced at every stage 7
Waterfall : Waterfall Disadvantages
It only incorporates iteration indirectly, thus changes may cause considerable confusion as the project progresses.
As The client usually only has a vague idea of exactly what is required from the software product, this WM has difficulty accommodating the natural uncertainty that exists at the beginning of the project.
The customer only sees a working version of the product after it has been coded. This may result in disaster if any undetected problems are precipitated to this stage. 8
V-process model : V-process model 9