Sequential Development Approach: Difference between revisions
m (Text replacement - "SEBoK v. 2.11, released 25 November 2024" to "SEBoK v. 2.12, released 20 May 2025") |
|||
Line 39: | Line 39: | ||
==References== | ==References== | ||
===Works Cited=== | ===Works Cited=== | ||
Forsberg, K., H. Mooz, and H. Cotterman. 2005. ''Visualizing Project Management.'' 3rd ed. New York, NY, USA: J. Wiley & Sons. | |||
INCOSE. 2023. "Chapter 2.2.1" in ''Systems Engineering Handbook: A Guide for System Life Cycle Processes and Activities,'' 5th Edition. Ed(s): D. Walden, T.M. Shortell, G.J. Roedler, B.A. Delicado, O. Mornas, Y. Yew-Seng, D. Endler. San Diego, CA: International Council on Systems Engineering (INCOSE). Available at [https://www.incose.org/publications/se-handbook-v5 https://www.incose.org/publications/se-handbook-v5]. | |||
ISO/IEC/IEEE 24748-1. 2024. ''Systems and software engineering — Life cycle management, Part 1: Guidelines for life cycle management.'' Geneva, Switzerland: International Organization for Standardization (ISO), International Electrotechnical Commission, and Institute of Electrical and Electronics Engineers. Available at [https://www.iso.org/standard/84709.html https://www.iso.org/standard/84709.html]. | |||
Winston W. Royce (1970). "Managing the Development of Large Software Systems" in: Technical Papers of Western Electronic Show and Convention (WesCon) August 25–28, 1970, Los Angeles, USA. | Winston W. Royce (1970). "Managing the Development of Large Software Systems" in: Technical Papers of Western Electronic Show and Convention (WesCon) August 25–28, 1970, Los Angeles, USA. |
Revision as of 00:28, 19 May 2025
Lead Authors: David Endler Contributing Authors: Mike Yokell, Garry Roedler
Sequential development approaches are commonly used in complex system development projects. Emphasizing a linear process with some iteration, this approach is particularly suited for large-scale, multi-organization efforts and safety-critical systems. It provides a clear framework for managing system development through distinct, well-defined stages. The article also introduces the Vee model as an example for the sequential development approach. The Vee model is a widely recognized variant that highlights the importance of validation, verification, and stakeholder engagement throughout the development lifecycle. By understanding these models, readers can appreciate the benefits of predictability, repeatability, and high assurance in systems engineering.
Concepts
The sequential development approach is a traditional methodology used in systems engineering, characterized by a structured, phase-based process. One of the earliest and most influential models of this approach is the waterfall model, introduced by Dr. Winston W. Royce in 1970. Interestingly, Royce initially presented the model not as a recommendation, but as a cautionary example of what could go wrong without incorporating feedback and iteration. Nevertheless, it became widely adopted in its linear form.
Royce’s waterfall model outlines a series of distinct phases: requirements analysis, system design, implementation (or construction), integration and testing, deployment, and maintenance. Each phase is completed before the next begins, and typically, there is limited overlap or feedback between them. Although Royce advocated for some iteration, particularly early in the process, this aspect was often overlooked in practice.
In systems engineering, sequential development approaches provide structured methods to manage complex projects with well-defined requirements and deliverables. Among the most prominent models are the Waterfall and Vee models. Both offer a clear, phase-driven framework, but they differ in how they handle verification and validation.
The sequential approach is best suited for systems where requirements are well-defined, stable, and unlikely to change during development. It offers a clear structure, thorough documentation, and straightforward progress tracking, making it ideal for projects with strict regulatory, safety, or contractual obligations. This is often the case in industries such as aerospace, healthcare, defense, and civil engineering, where precision, predictability, and traceability are critical.
However, the sequential nature of this approach can make it difficult to accommodate changes once development is underway. Late modifications can be costly and time-consuming, particularly when early decisions are locked in by earlier phases. As a result, this model is most effective in environments with low uncertainty and minimal need for flexibility.
Practical considerations
In systems engineering projects that follow a sequential development approach, especially as originally envisioned by Winston Royce, engineers work within a structured, phase-driven process that incorporates planned iterations, particularly in early phases. While the overall development flow remains sequential, iterations are used to refine requirements and validate early design decisions before full-scale implementation begins.
For systems engineers, this means that early engagement in requirement analysis and system design is critical. Iterative feedback loops during these phases allow for stakeholder input, simulations, and feasibility assessments to inform more accurate and reliable specifications. Engineers must be prepared to revisit and revise these specifications multiple times before moving forward, which requires openness to feedback and strong communication skills.
Once the design is finalized, implementation and integration follow a more linear path. Engineers are expected to execute their tasks based on agreed specifications, with little room for ad hoc changes later in the process. Precision and adherence to documented requirements are essential, as late modifications can affect multiple subsystems and introduce costly rework.
Verification and validation typically occur after integration, so systems engineers must anticipate how subsystems will interact. This demands thorough interface definitions and systems thinking during earlier phases. While iterations are encouraged early on, they are less common in later phases unless major issues arise – underscoring the importance of getting the architecture right before committing to detailed development.
In practical terms, engineers must rely heavily on documentation, formal communication, and system models. Collaboration tends to follow the project structure, with different roles becoming more involved at different points in time. Systems engineers may lead early analysis and design efforts, then shift to supporting roles as implementation and verification proceed.
Ultimately, working within this approach requires a disciplined mindset, a proactive attitude during early iterations, and a strong focus on requirements traceability and design integrity throughout the project lifecycle.
Example development approach
The Vee model was developed as an extension of the Waterfall model to address the concerns that late discovery of defects or requirement mismatches can be costly. The Vee model retains a sequential flow but integrates system verification and validation more explicitly. As shown in Figure 1, it visualizes development in a “V” shape.
Note that because the Vee Model only covers the development stage, and not the full life cycle, it is not a life cycle model. There are other forms of the Vee model that show feedback from the right side of the Vee to the left side of the Vee for validation and verification.
The Vee model is used to visualize key areas for SE focus, associating each development stage with corresponding verification. The Vee highlights the need for continuous validation with the stakeholders, the need to define verification plans during requirements development, and the importance of continuous risk and opportunity assessment.
There are several variations of the Vee model. Typically, the “left” side of the Vee is called system definition and the “bottom” and “right” side of the Vee are called system realization. In the Vee model, time and system maturity conceptually proceed from left to right (down the left side of the Vee and up the right side of the Vee). However, all the system life cycle processes are performed concurrently and iteratively at each level of the system hierarchy and all the system life cycle processes are recursively applied at each level of the system hierarchy. One of the strengths of the Vee model is its depiction of the relationships between the left and right sides of the Vee.
The Vee model is widely used in systems engineering because it makes the relationship between development, verification, and validation more explicit. It encourages engineers to think ahead about how each part of the system will be verified, helping to reduce the risk of late failures.
References
Works Cited
Forsberg, K., H. Mooz, and H. Cotterman. 2005. Visualizing Project Management. 3rd ed. New York, NY, USA: J. Wiley & Sons.
INCOSE. 2023. "Chapter 2.2.1" in Systems Engineering Handbook: A Guide for System Life Cycle Processes and Activities, 5th Edition. Ed(s): D. Walden, T.M. Shortell, G.J. Roedler, B.A. Delicado, O. Mornas, Y. Yew-Seng, D. Endler. San Diego, CA: International Council on Systems Engineering (INCOSE). Available at https://www.incose.org/publications/se-handbook-v5.
ISO/IEC/IEEE 24748-1. 2024. Systems and software engineering — Life cycle management, Part 1: Guidelines for life cycle management. Geneva, Switzerland: International Organization for Standardization (ISO), International Electrotechnical Commission, and Institute of Electrical and Electronics Engineers. Available at https://www.iso.org/standard/84709.html.
Winston W. Royce (1970). "Managing the Development of Large Software Systems" in: Technical Papers of Western Electronic Show and Convention (WesCon) August 25–28, 1970, Los Angeles, USA.
Primary References
None.
Additional References
None.