Software Process Model
Software Process Model
In agile processes, planning is incremental and its easier to change the process to reflect
changing customer requirements.
In practice, most practical processes include elements of both plan-driven and agile
approaches.
The main difference between waterfall and incremental processes lies in their approach to
software development and project management. The waterfall process is a sequential and
linear approach with detailed upfront planning and limited customer involvement, while the
incremental process is iterative and adaptive with continuous customer involvement and an
emphasis on early detection and mitigation of issues.
The waterfall model - Plan-driven model. Separate and distinct phases of specification
and development.
Inflexible partitioning of the project into distinct stages makes it difficult to respond to
changing customer requirements. Therefore, this model is only appropriate when the
requirements are well-understood and changes will be fairly limited during the
design process.
1. Embedded systems where the software has to interface with hardware systems.
2. Critical systems where there is a need for extensive safety and security analysis of the
software specification and design.
3. Large software systems that are part of broader engineering systems developed by
several partner companies. The hardware in the systems may be developed using a
similar model, and companies find it easier to use a common model for hardware and
software.
Benefits
It is easier to get customer feedback on the development work that has been done. -
Customers can comment on demonstrations of the software and see how much has been
implemented.
More rapid delivery and deployment of useful software to the customer is possible. -
Customers are able to use and gain value from the software earlier than is possible with a
waterfall process.
Problems