V-model (software development)

Instead of moving down linearly, the process steps are bent upwards after the coding phase, to form the typical V shape.

The user requirements document will typically describe the system's functional, interface, performance, data, security, etc.

There are different methods for gathering requirements of both soft and hard methodologies including; interviews, questionnaires, document analysis, observation, throw-away prototypes, use case, and static and dynamic views with users.

The software specification document which serves as a blueprint for the development phase is generated.

The designed system is broken up into smaller units or modules and each of them is explained so that the programmer can start coding directly.

In the V-Model, Unit Test Plans (UTPs) are developed during the module design phase.

Unit testing verifies that the smallest entity can function correctly when isolated from the rest of the codes/units.

User Acceptance Test (UAT) Plans are developed during the Requirements Analysis phase.

The V-Model has been criticized by Agile advocates and others as an inadequate model of software development for numerous reasons.

[8] They argue that in addition to being a highly disciplined approach, it promotes meticulous design, development, and documentation necessary to build stable software products.

The V-model of the Systems Engineering Process [ 1 ]