Vee Life Cycle Model
There are a large number of life cycle process models. These models fall into three major categories:
- Primarily Prespecified and Sequential Processes.
- Primarily Evolutionary and Concurrent Processes. Examples are the Rational Unified Process and various forms of the Vee and spiral models.
- Primarily Interpersonal and Unconstrained Processes. Examples are Agile development, Scrum, eXtreme Programming, Dynamic System Development Method, and innovation-based processes.
This article discusses the Vee model as the primary example of the first category. The second two are discussed in the article System Life Cycle Process Models: Iterative.
A Primarily Prespecified and Sequential Process Model: The Vee Model
The sequential version of the Vee model is shown in Figure 1. Its core involves a sequential progression of plans, specifications, and products that are baselined and put under configuration management. The vertical two-headed arrow enables projects to perform concurrent opportunity and risk analyses, and continuous in-process validation.
Figure 1 – Left side of the sequential Vee model (Forsberg, Mooz, and Cotterman 2005. Pg 111)
The Vee model endorses the INCOSE Systems Engineering Handbook 2011 definition of life cycle stages and their purposes or activities, as shown in Table 1.
Table 1 - Generic life cycle stages, their purposes, and decision gate options (INCOSE Systems Engineering Handbook 2011, p 25; also ISO/IEC 15288:2008)
Application of the Vee Model
Lawson (2010) elaborates on the activities in each life cycle stage, and notes it is useful to consider the structure of a generic life cycle stage model for any type of System-of-Interest as portrayed in Figure 2 (Lawson 2010). This (T) model indicates that one or more Definition stages precede a Production stage(s) where the implementation (acquisition, provisioning or development) of two or more system elements has been accomplished.
Figure 2 - Generic (T) Stage Structure of System Life Cycle Models (Lawson 2010, Figures 6-2 to 6-5)
The generic life cycle stages for a variety of different organizations, from standards (ISO/IEC) to commercial to government, are shown in Figure 3. Note that although different in detail, all have a similar sequential format that emphasizes the core activities as noted in Figure 2.
Figure 3 - Comparisons of life cycle models (Forsberg, Mooz, and Cotterman 2005, p. 87 updated)
Fundamentals of Life Cycle Stages and Program Management Phase
The notion of life cycle is related to the notion of program management that was presented in the previous section. Note that:
- The term "stage" refers to the different states of the system during its life cycle; some stages may overlap in time such as the Utilization stage and the Support stage. The term “stage” is used in ISO/IEC/IEEE 15288.
- The term "phase" refers to the different steps of the program that supports and manages the life of the system; the phases usually do not overlap. The term “Phase” is used in many well-established models as equivalent to “Stage.”
Program management employs phases, milestones, and decision gates during which the stages of the system evolve. The stages contain the activities performed to achieve their goals; the phases serve to the control and the management of the sequence of stages and the transitions from one stage to the others. For each project it is essential that the team define and publish the terms and related definitions used on their project to minimize confusion.
As an example, Figure 4 shows a typical program management sequence. This classical program is composed of the following phases:
- The pre-study phase
- The feasibility phase - This phase consists of studying the feasibility of alternative concepts to reach a second decision gate before initiating the execution stage. It is the “go-ahead decision” based on:
- Whether a concept is feasible and is considered able to counter an identified threat or exploit an opportunity.
- Whether a concept is sufficiently mature to warrant continued development of a new product or line of products.
- Whether to approve a proposal generated in response to an RFP (Request for Proposal).
During the feasibility phase stakeholders' requirements and system requirements are identified, viable solutions are designed and studied, virtual prototypes are engineered and can be implemented.
- The execution phase – This phase includes activities related to four stages of the system: development, production, utilization and support. Typically there are two decision gates and two milestones associated with execution activities. The first milestone provides the opportunity for management to review the plans for execution before giving the go-ahead. The second milestone provides the opportunity to review progress before the decision is made to initiate production. The decision gates during execution can be used to determine whether to produce the developed system-of-interest and whether to improve it or retire it.
These Program Management views apply not only to the system-of-interest but also to its elements and structure.
Figure 4 - Program Management and Engineering Views of the sequential System Life Cycle (ISO/IEC 19760:2003)
Life Cycle Stages
Exploratory Research Stage
The most important phase in the project cycle is the User Requirements Analysis and Agreement phase, which is part of the Exploratory Research Stage. First, define the user (and stakeholder) requirements and constraints.
A key part of this process is to establish the feasibility of meeting the user requirements.
Except for the first and last Decision Gates of a project, the two Gates are performed simultaneously. See Figure 5.
Figure 5 - Scheduling the Development Phases (Faisandier 2010)
Reviews
To control the progress of a project different types of Reviews are planned. The most commonly used are listed below but the names are not universal:
- System Requirements Review - SRR is planned to verify and validate the set of system requirements before starting the detailed design activities.
- Preliminary Design Review - PDR is planned to verify and validate the set of system requirements, the design artifacts and justification elements at the end of the first engineering loop. This review is sometimes called the “Design-to” gate.
- Critical Design Review – CDR is planned to verify and validate the set of system requirements, the design artifacts and justification elements at the end of the last engineering loop. The “Build-to” and “Code-to” design is released after this review.
- Integration, Verification, and Validation (IV&V) (glossary) Reviews – As the components are assembled into higher level subsystems and elements, a sequence of reviews are held to ensure that everything integrates properly and that there is objective evidence that all requirements have been met (I&V). There should also be an in-process validation that the system, as it is evolving, will meet the Stakeholders’ Requirements (see Figure 10).
- Final Validation Review – FVR is carried out at the end of the integration phase.
- Other Project Reviews related to management can be planned in order to control the correct progress of work, based on the type of system and associated risks.
Figure 6 - Right side of the Vee Model (Forsberg, Mooz, and Cotterman 2005, Pg. 115)
Production Stage
The Production Stage is where the system-of-interest is produced or manufactured. Product modifications may be required to resolve production problems, to reduce production costs, or to enhance product or system-of-interest capabilities. Any of these may influence system requirements and may require system re-qualification, re-verification, or re-validation. All such changes require SE assessment before changes are approved.
Utilization Stage
A significant aspect of Product Life Cycle Management is the provisioning of supporting systems that are vital in sustaining operation of the product. While the supplied product or service may be seen as the NSOI (Narrow System of Interest) for an acquirer, the acquirer also must incorporate the supporting systems into a WSOI (Wider System of Interest). These supporting systems should be seen as system assets that when needed are activated in responding to some situation that has arisen in respect to operation of the NSOI. The collective name for the set of supporting systems is the Integrated Logistics Support (ILS) System. Some typical types of ILS supporting systems are indicated in Figure 7.
The ILS portrayed in the figure identifies several typical elements of this ILS system. The elements are system assets for a supplying enterprise that are instantiated and put into operation in responding to logistics related situations.
As has been emphasized several times earlier, it is vital to have a holistic view when defining, producing and operating system products and services. In Figure 7 the relationship between system design and development and the ILS requirements is portrayed.
Figure 7 - Typical Integrated Logistics Support (ILS) Supporting Systems (Blanchard 2004)
Figure 8 - Relating ILS to the System Life Cycle (ASD-STAN, Fig 1, 2009 Products and Services S3000L, www.asd-stn.org.)
The requirements for reliability resulting in the need of maintainability and testability are driving factors.
Support Stage
In the Support Stage the system-of-interest is provided services that enable continued operation. Modifications may be proposed to resolve supportability problems, to reduce operational costs, or to extend the life of a system. These changes require SE assessment to avoid loss of system capabilities while under operation. The corresponding technical process is the Maintenance Process.
Retirement Stage
In the Retirement Stage the system-of-interest and its related services are removed from operation. SE activities in this stage are primarily focused on ensuring that disposal requirements are satisfied. In fact, planning for disposal is part of the system definition during the Concept Stage. Experience in the 20th century repeatedly demonstrated the consequences when system retirement and disposal are not considered from the outset. Early in the 21st century, many countries have changed their laws to hold the creator of a system-of-interest accountable for proper end-of-life disposal of the system.
References
Citations
Faisandier, A. 2011.Engineering and Architecting Multidisciplinary Systems (to be published)..
Forsberg, K., H. Mooz, H. Cotterman. 2005. Visualizing Project Management. 3rd Ed., J. Wiley & Sons.
INCOSE. 2011. Systems Engineering Handbook, version 3.2.1. INCOSE-TP-2003-002-03.2.1.
Lawson, Harold. 2010. A Journey Through the Systems Landscape, College Publications, Kings College, UK.
Primary References
Boehm, B., J. Lane, S. Koolmanojwong, and R, Turner. 2012 (planned publication date). Embracing the Spiral Model: Creating Successful Systems with the Incremental Commitment Spiral Model. New York, NY, USA:Addison Wesley.
Boehm, B., and R. Turner. 2004. Balancing Agility and Discipline. New York, NY, USA: Addison-Wesley.
Fairley, R. 2009. Managing and Leading Software Projects. New York, NY, USA: J. Wiley & Sons.
Forsberg, K., H. Mooz, H. Cotterman. 2005.Visualizing Project Management. 3rd Ed. New York, NY, USA: J. Wiley & Sons.
Faisandier, A. 2011. Engineering and Architecting Multidisciplinary Systems (to be published).
INCOSE. 2011. Systems Engineering Handbook, version 3.2.1. INCOSE-TP-2003-002-03.2.1.
Lawson, Harold. 2010. A Journey Through the Systems Landscape. London, UK: College Publications.
Pew, R., and A. Mavor (eds.) 2007. Human-System Integration in the System Development Process: A New Look. Washington, D.C., USA: The National Academies Press. http://www.nap.edu
“Principles behind the Agile Manifesto,” 15 Dec 2009, http://www.agilemanifesto.org/principles.html
Royce, W. E. 1998. Software Project Management. New York, NY, USA: Addison Wesley.
Additional References
Anderson, D., 2010. Kanban. Sequim, WA, USA: Blue Hole Press.
Baldwin, C., and K. Clark, 2000. Design Rules: The Power of Modularity. Cambridge, MA, USA: MIT Press.
Beck, K., 1999. Extreme Programming Explained. New York, NY, USA: Addison Wesley.
Biffl, S., A. Aurum, B. Boehm, H. Erdogmus, P. Gruenbacher (eds.), 2005. Value-Based Software Engineering. New York, NY, USA: Springer.
Boehm, B., May 1988. “A Spiral Model of Software Development,” Computer 21(5), pp. 61-72.
Boehm, B., 2006. “Some Future Trends and Implications for Systems and Software Engineering Processes”, Systems Engineering 9(1), pp. 1-19.
Boehm, B., A. Egyed, J. Kwan, D. Port, A. Shah, and R. Madachy, July 1998. “Using the WinWin Spiral Model: A Case Study,” IEEE Computer, 31(7): 33-44.
Checkland, P., 1981. Systems Thinking, Systems Practice. New York, NY, USA: Wiley.
CrossTalk, January 2002, July 2003, July 2004, September 2005. “Top Five Quality Software Projects,” www.stsc.hill.af.mil/crosstalk
Crosson, S., and B. Boehm, April 2009. “Adjusting Software Life cycle Anchorpoints: Lessons Learned in a System of Systems Context,” Proceedings, SSTC 2009.
Dingsoyr, T., T. Dyba. and N. Moe (eds.). 2010 "Agile Software Development: Current Research and Future Directions”; Chapter in Boehm, J. Lane, S. Koolmanjwong, and R, Turner, Architected Agile Solutions for Software-Reliant Systems. New York, NY, USA: Springer.
Dorner, D., 1996. The Logic of Failure. New York, NY, USA: Basic Books.
Forsberg, K. 1995. “’If I Could Do That, Then I Could…’ System Engineering in a Research and Development Environment,” Proceedings, Fifth INCOSE Summer Symposium.
Forsberg, K. 2010. “Projects Don’t Begin With Requirements.” IEEE Systems Conf. San Diego, CA. April.
Gilb, T., 2005. Competitive Engineering. Maryland Heights, MO, USA: Elsevier Butterworth Heinemann.
Goldratt, E., 1984. The Goal. Great Barrington, MA, USA: North River Press.
Hitchins, D., 2007. Systems Engineering: A 21st Century Systems Methodology. New York, NY, USA: Wiley.
Holland, J., 1998. Emergence. New York, NY, USA: Perseus Books.
ISO/IEC 15288:2008. Systems and software engineering – System life cycle processes.
ISO/IEC 19760:2003. A guide for application of ISO/IEC 15288 System Life Cycle Processes.
ISO/IEC 24748-1:2010. Systems and software engineering, Part 1: Guide for life cycle management
Kruchten, P., 1999. The Rational Unified Process. New York, NY, USA: Addison Wesley.
Landis, T. R. 2010. Lockheed Blackbird Family (A-12, YF-12, D-21/M-21 & SR-71). North Branch, MN, USA: Specialty Press.
Madachy, R., 2008. Software Process Dynamics. New York, NY, USA: Wiley.
Maranzano, J., et al., March/April 2005, “Architecture reviews: Practice and experience,” IEEE Software, pp. 34-43.
National Research Council of the National Academies (USA). 2008. Pre-Milestone A and Early-Phase Systems Engineering. Washington, D.C., USA: The National Academies Press. http://www.nap.edu
Osterweil, L. 1987. “Software Processes are Software Too,” Proceedings, ICSE 9.
Poppendeick, M. and T., 2003. Lean Software Development: an Agile Toolkit. New York, NY, USA: Addison Wesley.
“Principles behind the Agile Manifesto,” 15 Dec 2009, http://www.agilemanifesto.org/principles.html
Rechtin, E. 1991. System Architecting.: Creating and Building Complex Systems. Upper Saddle River, NY, USA: Prentice-Hall.
Rechtin, E., and M. Maier, 1997. The Art of System Architecting. Boca Raton, FL, USA: CRC Press.
Schwaber, K. and M. Beedle, 2002. Agile Software Development with Scrum. Upper Saddle River, NY, USA:Prentice Hall.
Warfield, J., 1976. Societal Systems: Planning, Policy, and Complexity. New York, NY, USA: Wiley.
Womack, J., and D. Jones, 1996. Lean Thinking. New York, NY, USA: Simon and Schuster.
Article Discussion
--Dholwell 17:17, 31 August 2011 (UTC) core edit, needs second look.