Ads
  

The V-Shaped Software Development Life Cycle Model

The V-Shaped Software Development Life Cycle Model

The V-shaped model was developed to help the project team in planning and designing for the testability of a system. The model places a strong emphasis on the verification and validation activities of the product. It demonstrates that the testing of the product is discussed, designed, and planned in the early phases of the development life cycle. The customer acceptance test plan is built-up during the planning phase, the system integration test plan is built-up during the analysis and design phases, and so on. This test plan development activity is represented by the dotted lines between the rectangles of the V.

The V-shaped model, shown in the following figure, was designed as a variation of the waterfall model; therefore, it has inherited the same sequence structure. Each subsequent phase is begun at the completion of the deliverables of the current phase. It is representative of a comprehensive approach to defining the phases of the software development process. It emphasizes the relationship between the analytical and design phases that precede coding with the testing phases that follow coding. The dotted lines indicate that these phases should be considered in parallel.

The V-Shaped Software Development Life Cycle Model

Phases in the V-Shaped Model


The following list includes a brief description of each phase of the V-shaped model, from project and requirements planning through acceptance testing:

■    Project and requirements planning - Determines the system requirements and how the resources
      of the organization will be allocated to meet them. (Where appropriate, this phase allocates
      functions to hardware and software.)
■    Product requirements and specification analysis - Includes analysis of the software problem at
      hand and concludes with a complete specification of the expected external behavior of the software
      system to be built.
■    Architecture or high-level design - Defines how the software functions are to implement the design.
■    Detailed design - Defines and documents algorithms for each component that was defined
      during the architecture phase. These algorithms will be translated into code.
■    Coding - Transforms the algorithms defined during the detailed design phase into software.
■    Unit testing - Checks each coded module for errors.
■    Integration and testing - Interconnects the sets of previously unit-tested modules to ensure
      that the sets behave as well as the independently tested modules did during the unit-testing phase.
■    System and acceptance testing - Checks whether the entire software system (fully integrated)
      embedded in its actual hardware environment behaves according to the software requirements
      specification.
■    Production, operation, and maintenance - Puts software into production and provides for
      enhancements and corrections.
■    Acceptance testing (not shown) - Allows the user to test the functionality of the system against the
      original requirements. After final testing, the software and its surrounding hardware become
      operational. Maintenance of the system follows.

Strengths of the V-Shaped Model


When applied to a project for which it is well suited, the V-shaped model offers various strengths:

■    The model emphasizes planning for verification and validation of the product in the early stages
      of product development. Emphasis is placed on testing by matching the test phase or process
      with the development process. The unit testing phase validates detailed design. The integration
      and testing phases validate architectural or high-level design. The system testing phase
      validates the product requirements and specification phase.
■    The model encourages verification and validation of all internal and external deliverables,
      not just the software product.
■    The V-shaped model encourages definition of the requirements before designing the system,
     and it encourages designing the software before building the components.
■    It defines the products that the development process should generate; each deliverable must
      be testable.
■    It enables project management to track progress accurately; the progress of the project
      follows a timeline, and the completion of each phase is a milestone.
■    It is easy to use (when applied to a project for which it is suited).

Weaknesses of the V-Shaped Model


When applied to a project for which it is not well suited, the weaknesses of the V-shaped model are evident:

■    It does not easily handle concurrent events.
■    It does not handle iterations of phases.
■    The model is not equipped to handle dynamic changes in requirements throughout the life cycle.
■    The requirements are tested too late in the cycle to make changes without affecting the
      schedule for the project.
■    The model does not contain risk analysis activities.

It is sometimes graphically shown (as in above figure) without the integral tasks. This is an easily remedied issue, mentioned here only to remind the reader that integral tasks are present with the use of all life cycle models.

The V-shaped model may be modified to overcome these weaknesses by including iteration loops to manage the changing of requirements beyond the analysis phase.

When to Use the V-Shaped Model


Like its ancestor, the waterfall model, the V-shaped model works best when all knowledge of requirements is available up-front. A common alteration to the V-shaped model, to overcome weaknesses, contains the addition of iteration loops to manage the changing of requirements beyond the analysis phase.

It works well when knowledge of how to implement the solution is available, technology is available, and staff have proficiency and experience with the technology.

The V-shaped model is an extremely good choice for systems that need high reliability, such as hospital patient control applications and embedded software for air-bag chip controllers in automobiles.

Tags

software development, milestones, project management
The contents available on this website are copyrighted by TechPlus unless otherwise indicated. All rights are reserved by TechPlus, and content may not be reproduced, published, or transferred in any form or by any means, except with the prior written permission of TechPlus.
© Copyright 2017 SPMInfoBlog.
Designed by TechPlus