Systems Engineering Tools in Requirements Development
Last updated: February 24, 2024 Read in fullscreen view
- 02 Nov 2023 Differences between software walkthrough, review, and inspection
- 15 Feb 2024 What is a Cut-Over in Software Development?
- 06 Mar 2021 4 things you need to do before getting an accurate quote for your software development
- 01 Sep 2022 Facts Chart: Why Do Software Projects Fail?
- 16 Apr 2021 Insightful Business Technology Consulting at TIGO
System Engineering is all about dealing with complexity, as it helps avoid invalid assumptions and help to manage different issues - all for the purpose of producing the most effective and efficient solution. So, what are the main differences between traditional methods (DBSE) and modern methods (MBSE, FBSE, OOSE)? During this article, we will guide you through everything you need to know related to these methods.
Document-Based System Engineering (DBSE)
- Structured Documentation: Most organizations prefer the well defined and well-structured documents, to gather all the important and relevant information about the system that stakeholders are willing to develop and improve.
- Traceability links: DBSE is utilized in maintaining traceability links between various documents. Such traceability helps the organization tremendously with clarity, as it ensures that every decision, design choice or requirement is documented appropriately and could be traced all the way to its source effectively.
- Version management: It is important to get proper version management, to track changes and optimizations over time - ensuring that all parties involved are being updated regularly with relevant and up-to-date information.
Model-Based Systems Engineering (MBSE)
Model-based systems engineering (MBSE) is a methodology that focuses on creating and exploiting digital system and engineering domain models as the primary means of exchange of information, feedback, and requirements, as opposed to document-centric systems engineering.
This approach allows for a more holistic view of the system by considering not just individual components but also their interactions and dependencies. The goal of systems engineering within MBSE is to ensure that all stakeholders clearly understand how the different elements within a system interact with each other.
MBSE is defined as “the formalized application of [system] modeling to support system requirements, design, analysis, verification, and validation activities beginning in the conceptual design phase and continuing throughout development and later life cycle phases” (INCOSE). This approach is valued more than the traditional document based approach. This information becomes difficult to maintain and keep in sync as the system grows and becomes more complex. The MBSE approach “enhances the ability to capture, analyze, share, and manage the information associated with the specification of a product” (INCOSE). This results in improved communications, increased ability to manage system complexity, improved product quality, enhanced knowledge capture, and improved ability to teach and learn systems engineering fundamentals.
Functions-Based Systems Engineering (FBSE)
The functions-based systems engineering method (FBSE) is a middle-tier approach of function decomposition where “a function is an operation, task or action that must be performed to achieve a desired outcome. In other words, the FBSE describes what the system will do, without going into the details of how it will be done.
Some key outputs of this process are diagrams, behavior diagrams, control flow diagrams, data flow diagrams, entity relationship diagrams, functional flow block diagrams, data dictionaries, models, subfunctions and simulation results.
Object-Oriented Systems Engineering (OOSE)
The object-oriented systems engineering method (OOSE) “integrates object-oriented concepts with model-based and traditional SE methods to help architect flexible and extensible systems that accommodate evolving technologies and changing requirements”. The main objectives are to capture information throughout the life cycle to analyze, design, verify, and validate a system; integrate MBSE methods with object-oriented software/hardware; and support system-level reuse and design evolution.
Object-oriented development emphasizes the design phase of systems development, revealing system problems early in the design process.
OOSE focuses on the reuse and inheritance, with high-fidelity documents such as "mockups", "prototypes", "interactive screens" (i.e. HTML pages) and artifacts like Scaffolding Design, Database Specification etc.
Conclusion
Except the traditional method "DBSE", the remaining three main types of cross cutting requirements development tools are the modern methodologies to implement the complex projects in VUCA times.
These three methods play a role in the requirements development technical process. The MBSE process can be utilized to visually link needs to stakeholders and show relationships between different stakeholder needs. Once all of the requirements have been gathered, the FBSE method can be used to develop a functional architecture that shows what the system will do. The OOSE method can then be combined with the other processes to test the system and ensure that the stakeholder needs have been met and then be used to verify and validate the system.
FAQ: Questions you might ask
What is the difference between DBSE and MBSE?
- MBSE uses graphical models to provide dynamic and visual representations while DBSE relies on written data. Therefore MBSE is also known as a "static document", "frozen document" or "dead document".
- MBSE enhances teamwork and collaboration through shared platforms that enable real-time updates, whereas DBSE frequently requires managing several documents, which presents version control problems. Therefore MBSE is also known as a "living document".
Why is MBSE so popular?
MBSE is becoming increasingly popular in the engineering world due to its ability to improve communication, collaboration, and efficiency in the design process.
What is the difference between Agile and MBSE?
MBSE places a greater emphasis on using models to capture and communicate system information, whereas Agile prioritizes working software as the primary measure of progress.