V-Model

For the version specific to software development, see V-Model (software development).
The V-model of the systems engineering process.[1]
Software development process
Core activities
Paradigms and models
Methodologies and frameworks
Supporting disciplines
Tools
Standards and BOKs

The V-model is a term applied to a range of models, from a conceptual model designed to produce a simplified understanding of the complexity associated with systems development to detailed, rigorous development lifecycle models and project management models.

There are several radically different forms of the V-model, and this creates considerable confusion. The V-model falls into three broad categories.[2]

Firstly there is the German V-Model "Das V-Modell", the official project management methodology of the German government. It is roughly equivalent to PRINCE2, but more directly relevant to software development.[3] What is probably the earliest use of the V-Model as a basis for a standard is Software Development Standard for the German Federal Armed Forces, 1992. The key attribute of using a "V" representation was to require proof that the products on the right-side of the V were acceptable by the appropriate test and integration organization implementing the left-side of the V. <German Directive 250, Software Development Standard for the German Federal Armed Forces, V-Model, Software Lifecycle Process Model, August 1992>

In the UK, and throughout the testing community worldwide, the V-model is widely seen as a vaguer, illustrative depiction of the software development process, as described in the ISTQB Foundation Syllabus for software testers.[4] There is no single, accepted definition of this model, which is more directly covered in the alternative article on the V-Model (software development). There are therefore multiple variations of this version. This problem must be borne in mind when discussing the V-model.

Thirdly, like Germany, the US also has a government standard V-model, which dates back about 20 years, like its German counterpart. Its scope is rather narrower, being a systems development lifecycle model, but far more detailed and more rigorous than most UK practitioners and testers would understand by the V-model.[5][6][7][8]

Overview

The V-model is a graphical representation of the systems development lifecycle. It summarizes the main steps to be taken in conjunction with the corresponding deliverables within computerized system validation framework.

The V represents the sequence of steps in a project life cycle development. It describes the activities to be performed and the results that have to be produced during product development. The left side of the "V" represents the decomposition of requirements, and creation of system specifications. The right side of the V represents integration of parts and their validation.[7][8][9][10][11] However, Requirements need to be validated first against the higher level requirements or user needs. Furthermore, there is also something as validation of system models (e.g. FEM). This can partially be done at the left side also. To claim that validation only occurs at the right side may not be correct. The easiest way is to say that verification is always against the requirements (technical terms) and validation always against the real world or the user needs.

It is sometimes said that validation can be expressed by the query "Are you building the right thing?" and verification by "Are you building it right?"

In practice, the usage of these terms varies. Sometimes they are even used interchangeably.

The PMBOK guide, an IEEE standard (jointly maintained by INCOSE, the Systems engineering Research Council SERC, and IEEE Computer Society) defines them as follows in its 4th edition:[12]

Objectives

The V-model provides guidance for the planning and realization of projects. The following objectives are intended to be achieved by a project execution:

V-model topics

Systems engineering and verification.[13]

Systems engineering and verification

The systems engineering process (SEP) provides a path for improving the cost effectiveness of complex systems as experienced by the system owner over the entire life of the system, from conception to retirement.[1]

It involved early and comprehensive identification of goals, a concept of operations that describes user needs and the operating environment, thorough and testable system requirements, detailed design, implementation, rigorous acceptance testing of the implemented system to ensure it meets the stated requirements (system verification), measuring its effectiveness in addressing goals (system validation), on-going operation and maintenance, system upgrades over time, and eventual retirement.[1][7][8][11]

The process emphasizes requirements-driven design and testing. All design elements and acceptance tests must be traceable to one or more system requirements and every requirement must be addressed by at least one design element and acceptance test. Such rigor ensures nothing is done unnecessarily and everything that is necessary is accomplished.[1][7]

The two streams

Specification stream

The specification stream mainly consists of:

Testing stream

The testing stream generally consists of:

The development stream can consist (depending on the system type and the development scope) of customization, configuration or coding.

Applications

Off-Core alternatives (illustrating upward and downward iterations and Time and Maturity dimension). Source - K. Forsberg and H. Mooz 2004[7][11]

The V-model is used to regulate the software development process within the German federal administration. Nowadays it is still the standard for German federal administration and defense projects, as well as software developers within the region.

The concept of the V-model was developed simultaneously, but independently, in Germany and in the United States in the late 1980s:

It has now found widespread application in commercial as well as defense programs. Its primary use is in project management[7][8] and throughout the project lifecycle.

One fundamental characteristic of the US V-model is that time and maturity move from left to right and one cannot move back in time. All iteration is along a vertical line to higher or lower levels in the system hierarchy, as shown in the figure.[7][8][11] This has proven to be an important aspect of the model. The expansion of the model to a dual-Vee concept is treated in reference.[7]

As the V-model is publicly available many companies also use it. In project management it is a method comparable to PRINCE2 and describes methods for project management as well as methods for system development. The V-Model while rigid in process, can be very flexible in application, especially as it pertains to the scope outside of the realm of the System Development Lifecycle normal parameters.

Advantages

These are the advantages V-model offers in front of other systems development models:

Limits

The following aspects are not covered by the V-model, they must be regulated in addition, or the V-Model must be adapted accordingly:[19][20]

See also

References

  1. 1 2 3 4 Clarus Concept of Operations. Publication No. FHWA-JPO-05-072, Federal Highway Administration (FHWA), 2005
  2. "The Dangerous & Seductive V Model", accessed January 9, 2013.
  3. "Das V-Modell site (in German)", accessed January 9, 2013.
  4. "International Software Testing Qualifications Board – Foundation Level Syllabus", accessed January 9, 2013.
  5. "Systems Engineering for Intelligent Transportation Systems" (PDF). US Dept. of Transportation. p. 10. Retrieved June 9, 2007.
  6. "US Dept of Transportation, Federal Highway Administration. Systems Engineering Guidebook for ITS", accessed January 9, 2013.
  7. 1 2 3 4 5 6 7 8 Forsberg, K., Mooz, H., Cotterman, H. Visualizing Project Management, 3rd edition, John Wiley and Sons, New York, NY, 2005. Pages 108-116, 242-248, 341-360.
  8. 1 2 3 4 5 International Council On Systems Engineering (INCOSE), Systems Engineering Handbook Version 3.1, August 2007, pages 3.3 to 3.8
  9. Forsberg, K., Mooz, H. (1998). "System Engineering for Faster, Cheaper, Better" (PDF). Center of Systems Management. Archived from the original (PDF) on April 20, 2003.
  10. "The SE VEE". SEOR, George Mason University. Retrieved May 26, 2007.
  11. 1 2 3 4 5 Forsberg, K. and Mooz, H., "The Relationship of Systems Engineering to the Project Cycle," First Annual Symposium of the National Council On Systems Engineering (NCOSE), October 1991
  12. IEEE. "IEEE Guide--Adoption of the Project Management Institute (PMI) Standard A Guide to the Project Management Body of Knowledge (PMBOK Guide)--Fourth Edition". p. 452. doi:10.1109/IEEESTD.2011.6086685. Retrieved December 7, 2012.
  13. Systems Engineering Fundamentals. Defense Acquisition University Press, 2001.
  14. "V-Model Lifecycle Process Model". v-modell.iabg.de. Retrieved December 24, 2015.
  15. "Sequential Thematic Organization of Publications (STOP)". web.archive.org. Retrieved December 24, 2015.
  16. "Sustainable Development Possible with Creative System Engineering". ISBN 0615216307.
  17. "Further Development of the V-Modell". v-modell.iabg.de. Retrieved December 24, 2015.
  18. "Overview of the Activity Model of the V-Modell". v-modell.iabg.de. Retrieved December 24, 2015.
  19. "Limits of the VModel". v-modell.iabg.de. Retrieved December 24, 2015.
  20. Christian Bucanac, The V-Model

External links

Wikimedia Commons has media related to V-models.
This article is issued from Wikipedia - version of the Thursday, December 24, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.