Mannequin-based techniques engineering (MBSE) as a strategy doesn’t straight handle capabilities, which describes the talents of a system to attain or carry out a activity or a mission. As part of an issue description, capabilities have a powerful connection to system necessities, and could be modeled utilizing comparable approaches. Within the SEI Weblog put up Necessities in Mannequin-Based mostly Techniques Engineering (MBSE), I mentioned the necessities area. On this put up, I contemplate the function of capabilities in system engineering—their goal, how they’re modeled and analyzed utilizing MBSE and SysML, and the way they are often related to enterprise necessities.
Functionality is an overloaded time period. There are enterprise capabilities and technical capabilities from the enterprise structure area, resolution capabilities from the techniques growth course of area, akin to scaled agile framework (SAFe), and simply capabilities from the Unified Profile for DoDAF/MODAF (UPDM) or Unified Architectural Framework (UAF). These definitions basically fall into two sorts: (1) a high-level idea describing a capability of a system to attain or carry out a activity or a mission and (2) a technical idea describing an answer for a selected enterprise downside. On this weblog put up, I give attention to the primary kind of functionality, a high-level idea that I’ll check with as simply functionality.
Product or challenge managers usually contemplate the capabilities of a future or present system when contemplating the system’s imaginative and prescient and roadmap. Capabilities present a complete image within the absence of implementation particulars. Like necessities, capabilities are parts of the issue description. Capabilities and necessities are tightly related, and so they inform and refine one another. Enterprise consultants usually outline levels of the enterprise course of by first answering the query, What ought to the system be capable to do? From there, the capabilities emerge.
For instance, M. Maier in his 1998 article, “Architecting Rules for System-of-Techniques” described clever transport techniques (ITS) for instance of a system of techniques. as Based on Maier, the enterprise imaginative and prescient for such techniques is to
- present “real-time info on graphic situations and transportation choices to vacationers in any location”
- “enable a traveler to scan visitors situations and select the transportation mode with predicted least journey time”
- “enable a variety of visitors management methods to be utilized throughout metropolitan areas utilizing methods optimized from the data out there”
- use info that “might embrace real-time and predictive estimation of hyperlink occasions all through the visitors community”
- use info that would embrace “real-time statistics on driver begin–vacation spot factors and deliberate route”
From this enterprise imaginative and prescient, a number of capabilities could possibly be extracted, together with
- traveler administration
- travel-condition administration
- traffic-controls administration
- info administration
- route administration
- traffic-control methods administration and optimization
- communication administration
MBSE explicitly affords a way to mannequin necessities, however doesn’t present capabilities as a component kind. There’s a enterprise requirement ingredient (see my put up Necessities in Mannequin-Based mostly Techniques Engineering) that can be utilized to mannequin the system’s capabilities, as proven in Determine 1 beneath.
Determine 1: Instance of Enterprise Necessities as Capabilities
As with many high-level parts in techniques engineering, capabilities require decomposition. Articles in Trendy Analyst, Capstera, and the Enterprise Know-how Structure Physique of Knoweldge state that there could be as much as 5 ranges of capabilities, with the variety of ranges relying on the scale and complexity of the system. Advanced techniques of techniques could require all 5 ranges plus one sub-level, able to. The instance in Determine 2 makes use of solely three ranges of functionality decomposition and calls these ranges classes. Capabilities could be organized primarily based on different ideas, akin to useful areas or enterprise construction. Utilizing package deal construction, customized stereotypes, and coloration coding might help techniques engineers and enterprise or enterprise architects higher set up functionality decomposition.
Determine 2: Instance of Functionality Group by Bundle
If package deal construction is used to prepare a system’s capabilities, the derive relationship exhibits decomposition of the capabilities from completely different packages representing ranges as proven in Determine 3. For visually tagging capabilities from completely different classes, customized stereotypes could be useful.
Determine 3: Instance of Functionality Decomposition with Customized Stereotype
As proven in Determine 4, a mixture of customized stereotype, coloration coding, and little one–mother or father relationship also can set up capabilities with out separating them into completely different packages.
Determine 4: Instance of Functionality Decomposition with Colour Coding
One function of capabilities is to cowl what an enterprise or a system does with out requiring decomposition into the main points. Particulars that embrace a consumer view of the performance or constraints come from necessities. An excellent mannequin ought to provide a connection between capabilities and necessities. As an alternative of deriving the connection between capabilities represented as enterprise necessities and different necessities (as I confirmed within the SEI weblog put up Necessities in Mannequin-Based mostly Techniques Engineering (MBSE)), the looser hint relationship can be utilized, as proven in Determine 5.
Determine 5: Instance of Functionality-to-Necessities Traceability
Connecting capabilities to necessities creates an important linkage between two several types of conceptual downside description that helps handle the complexity of the system. By staying at a excessive degree of abstraction, capabilities enable an architect to plan phases of the system evolution with out the necessity to maintain many particulars in thoughts. These particulars won’t be misplaced if they’re captured as necessities and traced to a corresponding functionality.
There may be one key distinction between capabilities and necessities: Necessities come from completely different sources, sponsored by completely different stakeholders, and are normally captured at completely different ranges of abstraction. In distinction, capabilities ought to at all times characterize a coherent and consolidated view of the system or enterprise.
After they’re captured and decomposed, capabilities should be analyzed. One kind of research is to determine dependencies between capabilities. Although two capabilities can belong to 2 completely different areas of the system, one can rely upon one other, as proven in Determine 6 beneath. The character of the dependencies also can differ. A functionality can rely upon one other functionality functionally due to a enterprise course of, order of operations, or knowledge passing.
Determine 6: Instance of Functionality Dependency Relationship
Then again, one functionality could be an extension of one other functionality utilizing an already present performance of the system. Such capabilities needs to be developed in an applicable order, as proven in Determine 7 beneath. The dependency relationship captures this basic info within the mannequin and ensures that it will likely be delivered to the subsequent part of the system-development lifecycle.
Determine 7: Instance of Functionality Dependency Relationship Used to Seize Growth Dependency
Capabilities by themselves are usually not enough for an understanding of how a system or enterprise will operate. They should be augmented by an evidence of how a system will behave when it reveals these capabilities. Even once we keep at a excessive degree of abstraction, we have to analyze the conduct of the system or enterprise at that degree. A Techniques Modeling Language (SysML) exercise diagram is a option to seize conduct within the type of a course of. A relationship to make use of for associating functionality and exercise is refine, as proven in Determine 8 beneath.
Determine 8: Instance of Relationship Between Functionality and Exercise
As part of functionality evaluation, an architect usually begins to consider part of a system or modules that may carry out the capabilities underneath evaluation in addition to customers and the roles that people will play whereas interacting with the system or as part of the enterprise. Right here the exercise and block SysML parts might assist, as proven in Determine 9 beneath.
Determine 9: Instance of Functionality with Performer, Function, and Course of
When an enterprise architect finishes decomposition and evaluation of the capabilities, the subsequent logical step is to create a roadmap for capabilities growth and a launch together with phasing for capabilities. For this, SysML doesn’t present any specialised software. All relationships captured by the mannequin together with normal evaluation will assist an architect discover a vital path for delivering a functionality and defining the roadmap, as proven by the instance in Determine 10 beneath.
Determine 10: Instance of Roadmap Evaluation
Observations and Conclusions
SysML has just a few deficiencies in its assist of the enterprise and portfolio structure that may be overcome with assist of architectural frameworks:
- SysML doesn’t assist capabilities by default.
- An architect might want to create further stereotypes and an enforcement mechanism to accommodate capabilities.
- SysML doesn’t assist creation of a roadmap for the capabilities, together with planning over time.
In concept, it might be potential for an skilled enterprise architect to create a customized meta-model to implement to some extent one of many normal architectural frameworks, akin to The Open Group Structure Framework (TOGAF) or DoD Structure Framework (DoDAF)/Unified Structure Framework (UAF) utilizing simply SysML. Doing so, nevertheless, can be time-consuming and yield a barely usable end result. Such a meta-model can be complicated, laborious to implement and comply with, and laborious to implement with out sophisticated model-verification guidelines that will be difficult to create. A greater choice can be to have a look at present extensions of SysML that implement an architectural framework of alternative. All main suppliers of MBSE/SysML modeling environments assist the most well-liked architectural frameworks.
Modeling capabilities that use MBSE handle a number of vital features of constructing a system of techniques. Functionality modeling helps techniques engineers handle the complexity and quantity of necessities by abstracting particular traits of the system. This degree of abstraction additionally facilitates communication amongst stakeholders and helps create the challenge roadmap. By serving to to provide properly analyzed and understood capabilities, modeling helps the creation of a greater system and enterprise structure. MBSE practices assist traceability of capabilities to necessities in addition to traceability of capabilities to operational and logical structure transitively to resolution structure. Elevated traceability improves the standard of the system and ensures confidence that the system can be constructed in response to necessities.