Constructing True Model-Based Requirements in SysML
Abstract
:1. Introduction
2. Background
- is the set of products described;
- is the set of applications (with );
- is the set of subsystems;
- is the set of features;
- is the set of constraints;
- is the set of constraint numeric descriptors; and
- is the set of relationships on these sets describing the model [27].
3. True Model-Based Requirements
3.1. Theoretical Framework
- Functional requirements inherently describe input/output transformations. Mathematically, a function is necessarily defined as a mapping between a domain and codomain. From a General Systems Theory perspective, engineered systems are necessarily open [36].
- Performance requirements are, as defined, necessary characteristics, properties, or attributes associated with the inputs and outputs of the transformations that the system shall perform. In fact, this condition is necessary because any attribute transparent to the interaction between the system and external systems should not be considered a requirement due to unnecessarily constraining the solution space [10,28].
- Resource requirements define limits on resources that the system may consume. It is obvious that a resource must therefore be inputted to the system and that it is consumed for producing something. Hence, any limitation imposed on resource consumption is in fact part of a functional exchange and can be modeled in such a way.
- An environment for the system is an abstraction of boundaries between the system and external systems. The environment provides certain conditions under which the system must operate and imposes certain limitations on how the system may affect the environment. In other words, the environment provides certain inputs under which the system must operate and imposes certain limitations on the outputs the system may yield to the environment.
3.2. Basic Model of a Requirement
- Properties that are related to the meaning of the exchange (e.g., packet configuration of a message, performance of a signal, etc.) must be modeled in the logical domain (i.e., signals). As previously stated, one such property is the transformation function, which is allocated to output signals.
- Properties that are related to the specific vehicle through which meaning is conveyed (e.g., electrical properties of a signal through which a message is sent) must be modeled in the physical domain (i.e., ports). These properties include aspects related to transport layer (such as data structure) and physical layer (such as voltage levels).
3.3. Adding Richness to the Requirement Model
- Alternative behavior: This interaction operator can be used to capture a requirement to the system to exhibit different behaviors depending on certain conditions. No limitations are imposed in the conditions. They may refer to operational modes, historical actions, or external conditions (e.g., outside temperature). Figure 5a shows an example of a requirement model, where the system is required to react to external commands only if it is in On mode; if in Off mode, the system is required to accept the command but to not react to it (which is a different requirement from stating that the system will not receive commands when in Off mode).
- Parallel behavior: This interaction operator can be used to capture a requirement to perform two or more transformations in parallel. No limitations are imposed on the type of elements that need to be executed in parallel. For example, they may refer to completely independent transformations that are performed in parallel, to the provision of several outputs simultaneously, or to the reception of inputs simultaneously. Figure 5b shows an example of a requirement model, where the system must perform a background health monitoring exchange while also responding to other operational requests.
- Loop: This interaction operator can be used to capture a requirement to execute a transformation repeatedly until a condition is met.
3.4. Modeling Simultaneity of Requirements Applicability
3.5. Non-Functional Requirements are Always Related to Functional Requirements
3.6. Meta-Model
- Signals are linked to Interfaces, which makes the Sequence Diagram elements be connected to the Internal Block Diagram elements. This means that the logical and physical domains aspects of the requirement are connected.
- Modes are linked to Sequence Diagrams, which makes the Sequence Diagram elements be linked to the Mode requirement elements. This means that that every required input/output exchange is contextualized within the overall requirement set for the system.
- As a result of the previous two points, the Internal Block Diagram elements are also linked to mode requirements. This means that every required external interface is also contextualized within the overall requirement set for the system.
4. Case Study
4.1. Methodology
4.2. Problem Statement
4.3. Formulation Strategy
4.4. Model-Based Requirements
- continuously be exposed to the incoming light from the Earth’s surface, during which
- the instrument will receive a continuous stream of electrical power and thermal energy, and
- will receive commands and be expected to provide image data, and
- is expected to provide telemetry data periodically.
5. Conclusions
- (1).
- An extended sequence diagram captures the required logical transformation.
- (2).
- Signals capture logical inputs and outputs with their required attributes.
- (3).
- Ports in block elements capture the physical interfaces and their required properties through which inputs and outputs are conveyed.
- (4).
- An extended state machine diagram is used to capture mode requirements, which capture the simultaneity aspects of requirements applicability.
Author Contributions
Funding
Conflicts of Interest
References
- Buede, D.M. The Engineering Design of Systems: Models and Methods; Wiley: Hoboken, NJ, USA, 2009. [Google Scholar]
- Schneidera, F.; Naughtona, H.; Berenbach, B. New Challenges in Systems Engineering and Architecting. In Proceedings of the Conference on Systems Engineering Research (CSER) 2012, St. Louis, MO, USA, 19–22 March 2012. [Google Scholar]
- Helming, J.; Koegel, M.; Schneider, F.; Haeger, M.; Kaminski, C.; Bruegge, B.; Berenbach, B. Towards a unified Requirements Modeling Language. In Proceedings of the 2010 Fifth International Workshop on Requirements Engineering Visualization, Sydney, Australia, 28 September 2010. [Google Scholar]
- Mordecai, Y.; Dori, D. Model-based requirements engineering: Architecting for system requirements with stakeholders in mind. In Proceedings of the 2017 IEEE International Systems Engineering Symposium (ISSE), Vienna, Austria, 11–13 October 2017; pp. 1–8. [Google Scholar]
- Fockel, M.; Holtmann, J. A requirements engineering methodology combining models and controlled natural language. In Proceedings of the 2014 IEEE 4th International Model-Driven Requirements Engineering Workshop (MoDRE), Karlskrona, Sweden, 25 August 2014; pp. 67–76. [Google Scholar]
- dos Santos Soares, M.; Vrancken, J. Model-driven user requirements specification using SysML. J. Softw. 2008, 3, 57–68. [Google Scholar] [CrossRef]
- Adedjouma, M.; Dubois, H.; Terrier, F. Requirements Exchange: From Specification Documents to Models. In Proceedings of the 16th IEEE International Conference on Engineering of Complex Computer Systems, Las Vegas, NV, USA, 27–29 April 2011; pp. 350–354. [Google Scholar]
- Friedenthal, S.; Moore, A.; Steiner, R. A Practical Guide to SysML—The Systems Modeling Language, 3rd ed.; Morgan Kaufman: Waltham, MA, USA, 2015. [Google Scholar]
- Pandian, M.K.S.; Suri, K.; Cadavid, J.; Barosan, I.; Brand, M.; Alférez, M.; Gérard, S. Towards Industry 4.0: Gap Analysis between Current Automotive MES and Industry Standards Using Model-Based Requirement Engineering. In Proceedings of the 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), Gothenburg, Sweden, 3–7 April 2017; pp. 29–35. [Google Scholar]
- Salado, A.; Nilchiani, R.; Verma, D. A contribution to the scientific foundations of systems engineering: Solution spaces and requirements. J. Syst. Sci. Syst. Eng. 2017, 26, 549–589. [Google Scholar] [CrossRef]
- Wymore, A.W. Model-Based Systems Engineering; CRC Press: Boca Raton, FL, USA, 1993. [Google Scholar]
- Salado, A.; Nilchiani, R. A Categorization Model of Requirements Based on Max-Neef’s Model of Human Needs. Syst. Eng. 2014, 17, 348–360. [Google Scholar] [CrossRef]
- Kossiakoff, A.; Sweet, W.N.; Seymour, S.J.; Biemer, S.M. Systems Engineering Principles and Practice, 2nd ed.; John Wiley & Sons, Inc.: Hoboken, NJ, USA, 2011. [Google Scholar]
- Salado, A.; Nilchiani, R. Reducing Excess Requirements through Orthogonal Categorizations during Problem Formulation: Results of a Factorial Experiment. IEEE Trans. Syst. Man Cybern. Syst. 2017, 47, 405–415. [Google Scholar] [CrossRef]
- Badreddin, O.; Sturm, A.; Lethbridge, T.C. Requirement traceability: A model-based approach. In Proceedings of the 2014 IEEE 4th International Model-Driven Requirements Engineering Workshop (MoDRE), Karlskrona, Sweden, 25 August 2014. [Google Scholar]
- Borgne, A.L.; Belloir, N.; Bruel, J.; Nguyen, T. Formal Requirements Engineering for Smart Industries: Toward a Model-Based Graphical Language. In Proceedings of the 2016 IEEE Conferences on Ubiquitous Intelligence & Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud and Big Data Computing, Internet of People, and Smart World Congress (UIC/ATC/ScalCom/CBDCom/IoP/SmartWorld), Toulouse, France, 18–21 July 2016; pp. 1028–1032. [Google Scholar]
- Schmitz, D.; Nissen, H.W.; Jarke, M.; Rose, T. Relating domain model based requirements management and situational method engineering. In Proceedings of the 2010 Third International Workshop on Managing Requirements Knowledge, Sydney, Australia, 27 September 2010; pp. 7–15. [Google Scholar]
- Holt, J.; Perry, S.; Brownsword, M.; Cancila, D.; Hallerstede, S.; Hansen, F.O. Model-based requirements engineering for system of systems. In Proceedings of the 2012 7th International Conference on System of Systems Engineering (SoSE), Genova, Italy, 16–19 July 2012; pp. 561–566. [Google Scholar]
- Holder, K.; Zech, A.; Ramsaier, M.; Stetter, R.; Niedermeier, H.-P.; Rudolph, S.; Till, M. Model-Based Requirements Management in Gear Systems Design Based on Graph-Based Design Languages. Appl. Sci. 2017, 7, 1112. [Google Scholar] [CrossRef]
- Ribeiro, F.G.C.; Pereira, C.E.; Rettberg, A.; Soares, M.S. Model-based requirements specification of real-time systems with UML, SysML and MARTE. Softw. Syst. Model. 2018, 17, 343–361. [Google Scholar] [CrossRef]
- Marschall, F.; Schoemnakers, M. Towards model-based requirements engineering for web-enabled B2B applications. In Proceedings of the 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, Huntsville, AL, USA, 7–10 April 2003; pp. 312–320. [Google Scholar]
- Holt, J.; Perry, S.; Payne, R.; Bryans, J.; Hallerstede, S.; Hansen, F.O. A Model-Based Approach for Requirements Engineering for Systems of Systems. IEEE Syst. J. 2015, 9, 252–262. [Google Scholar] [CrossRef] [Green Version]
- Saadatmand, M.; Cicchetti, A.; Sjödin, M. Toward Model-Based Trade-off Analysis of Non-functional Requirements. In Proceedings of the 2012 38th Euromicro Conference on Software Engineering and Advanced Applications, Izmir, Turkey, 5–8 September 2012; pp. 142–149. [Google Scholar]
- Reza, H.; Sehgal, R.; Straub, J.; Alexander, N. Toward model-based requirement engineering tool support. In Proceedings of the 2017 IEEE Aerospace Conference, Big Sky, MT, USA, 4–11 March 2017. [Google Scholar]
- Lu, C.; Chang, C.; Chu, W.C.; Cheng, Y.; Chang, H. A Requirement Tool to Support Model-Based Requirement Engineering. In Proceedings of the 2008 32nd Annual IEEE International Computer Software and Applications Conference, Turku, Finland, 28 July–1 August 2008; pp. 712–717. [Google Scholar]
- Wanderley, F.; Silva, A.; Araujo, J.; Silveira, D.S. SnapMind: A framework to support consistency and validation of model-based requirements in agile development. In Proceedings of the 2014 IEEE 4th International Model-Driven Requirements Engineering Workshop (MoDRE), Karlskrona, Sweden, 25 August 2014; pp. 47–56. [Google Scholar]
- Cardei, I.; Fonoage, M.; Shankar, R. Model Based Requirements Specification and Validation for Component Architectures. In Proceedings of the 2008 2nd Annual IEEE Systems Conference, Montreal, QC, Canada, 7–10 April 2008; pp. 1–8. [Google Scholar]
- The International Council of Systems Engineering (INCOSE). Guide for Writing Requirements. Available online: https://tcsd.instructure.com/files/99427/download?download_frd=1 (accessed on 13 January 2019).
- Micouin, P. Toward a property based requirements theory: System requirements structured as a semilattice. Syst. Eng. 2008, 11, 235–245. [Google Scholar] [CrossRef]
- Aceituna, D.; Walia, G.; Do, H.; Lee, S.-W. Model-based requirements verification method: Conclusions from two controlled experiments. Inf. Softw. Technol. 2014, 56, 321–334. [Google Scholar] [CrossRef] [Green Version]
- Aceituna, D.; Do, H.; Walia, G.S.; Lee, S. Evaluating the use of model-based requirements verification method: A feasibility study. In Proceedings of the Workshop on Empirical Requirements Engineering (EmpiRE 2011), Trento, Italy, 30 August 2011; pp. 13–20. [Google Scholar]
- Siegl, S.; Hielscher, K.S.; German, R. Model Based Requirements Analysis and Testing of Automotive Systems with Timed Usage Models. In Proceedings of the 2010 18th IEEE International Requirements Engineering Conference, Sydney, Australia, 27 September–1 October 2010; pp. 345–350. [Google Scholar]
- Wach, P.; Salado, A. Can Wymore’s Mathematical Framework Underspin SysML? An Investigation of State Machines. In Proceedings of the Conference on Systems Engineering Research (CSER), Washington, DC, USA, 3–4 April 2019. [Google Scholar]
- Teufl, S.; Mou, D.; Ratiu, D. MIRA: A Tooling-Framework to Experiment with Model-Based Requirements Engineering. In Proceedings of the 2013 21st IEEE International Requirements Engineering Conference (RE), Rio de Janeiro, Brazil, 15–19 July 2013; pp. 330–331. [Google Scholar]
- London, B.; Miotto, P. Model-based requirement generation. In Proceedings of the 2014 IEEE Aerospace Conference, Big Sky, MT, USA, 1–8 March 2014. [Google Scholar]
- von Bertalanffy, L. General Systems Theory—Foundations, Development, Applications; George Braziller, Inc.: New York, NY, USA, 1969. [Google Scholar]
- Tjong, S.F.; Hallam, N.; Hartley, M. Improving the Quality of Natural Language Requirements Specifications through Natural Language Requirements Patterns. In Proceedings of the Sixth IEEE International Conference on Computer and Information Technology, Seoul, Korea, 20–22 September 2006. [Google Scholar]
Req Type | Description | Examples |
---|---|---|
Functional | What the system must do | The system shall image the Earth surface in UV spectral range. The system shall transmit image data according to Interface XYZ. |
Performance | How well the system must perform its functions | The system shall have a resolution better than 1 m. The system shall have a field of view larger than 2°. |
Resource | What the system may consume to perform its functions at the required performance | The system shall consume less than 200 W. The system shall have a mass lower than 900 kg. |
Environment | Settings or contexts in which the system must perform its functions | The system shall operate in vacuum. The system shall withstand shock levels higher than ABC. |
Req ID | Description |
---|---|
R1 | The instrument shall image a target at 600–650 km according to IF-1. |
R2 | The instrument shall image a target with spectral radiance of ABC (*plot) according to IF-1. |
R3 | The instrument shall accept Command A according to IF-2. |
R4 | The instrument shall transmit image data according to IF-2 in less than 0.2 s after receiving Command A. |
R5 | The instrument shall have a resolution better than 1 unit. |
R6 | The instrument shall have a FOV greater than 2°. |
R7 | The instrument shall provide telemetry data every 1 s according to IF-2. |
R8 | The instrument shall accept power according to IF-3. |
R9 | The instrument shall consume less than 600 W of electrical power. |
R10 | The instrument shall withstand a mechanical load of 5 g in any direction on IF-4. |
R11 | The instrument shall fulfill its performance when subjected to a temperature between −10 °C and +45 °C at IF-4. |
R12 | The instrument shall have a lifetime of at least 7 years. |
Note 1 | R10 only applies during launch. All other requirements only apply once the instrument is powered on through IF-3. |
Property | Value |
---|---|
Physical layer | |
Pressure | <3 × 10−15 |
Property | Value |
---|---|
Transport layer | |
Protocol | MIL-STD-1553B 1 |
Data structure | *Complex definition of packet structures, etc. |
Data map: Command A | ID: 11 |
Messages: | |
110011: Send current image data | |
110101: Resend last image data | |
Data map: Image data | ID: 01 |
Messages: | |
xxyyyy: xx is a time stamp and yyyy parts that form the image data | |
Data map: Telemetry | ID: 00 |
Messages: | |
01xxxx: No error found, followed by xxxx detailed status data | |
11xxxx: Critical error found, followed by xxxx detailed status data | |
Physical layer | |
Electrical Properties | |
Voltage range | [0, 5] V |
Impedance | 78 ohm ±2% |
Conducted emissions | *A plot |
Conducted susceptibility | *A plot |
Thermal properties | |
Conductivity | ≤ 200 W/K |
Connector | |
Type | D9F |
Pin allocation | 1: GND |
2: Data+ | |
3: Data− | |
… |
Property | Value |
---|---|
Physical layer | |
Electrical Properties | |
Voltage range | [22, 28] V, nominal 24V |
Impedance | >1 Mohm |
Conducted emissions | *A plot |
Conducted susceptibility | *A plot |
Thermal properties | |
Conductivity | ≤ 200 W/K |
Connector | |
Type | D9M |
Pin allocation | 1: GND |
2: GND | |
3: Power | |
… |
Property | Value |
---|---|
Physical layer | |
Thermal properties | |
Conductivity | ≤ 5 W/K |
Contact surface | [2.0, 2.5] cm2 |
Mechanical properties | |
Footprint | *Mechanical drawing |
Req ID | Strategy |
---|---|
R1 | This requirement defines an input that the system must accept. It will be modeled directly as an input signal. |
R2 | This requirement defines a characteristic of the required input defined in R1. It will be modeled as a property of the signal modeled to capture R1. |
R3 | This requirement defines an input that the system must accept. It will be modeled directly as an input signal. |
R4 | The requirement defines an output that the system must provide, as well as the conditions under which the output must be provided. It will be modeled as an output signal and a time dependency with the signal modeled to capture R3. |
R5 | This requirement defines a characteristic of the required output defined in R4. It will be modeled as a property of the signal modeled to capture R4. |
R6 | This requirement defines a characteristic of the required output defined in R4. It will be modeled as a property of the signal modeled to capture R4. |
R7 | This requirement defines an output that the system must provide, as well as the conditions under which the output must be provided. It will be modeled as an output signal occurring in parallel to the exchanges required by R1 through R4. |
R8 | This requirement defines an input that the system must accept. It will be modeled directly as an input signal. In addition, it will be modeled as a starting event that needs to occur before the exchanges required by R1, R2, R3, R4, and R7 can be executed (since the instrument must be powered in order to fulfill those requirements), and which remains active in parallel with the other exchanges defined in the corresponding mode of operation. |
R9 | This requirement defines a resource limitation that the system must fulfill, in relation to the required input defined in R8. It will be modeled as a property of the signal modeled to capture R8. |
R10 | This requirement defines an external environment in which the system needs to operate. It will be modeled as an input signal (mechanical energy) to the system. |
R11 | This requirement defines an external environment in which the system needs to operate. It will be modeled as an input signal (thermal energy) to the system. |
R12 | This requirement defines a constraint on how long the system needs to fulfill its requirements. It will be modeled as a duration constraint that describes for how long each transformation needs to be executed. |
Note 1 | This note defines modes of operation for the system, for which different sets of requirements apply. It leads to define a specific mode (launch) in which R10 applies and another set of modes in which the rest of the requirements apply, as well as the transitions between the modes. |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Salado, A.; Wach, P. Constructing True Model-Based Requirements in SysML. Systems 2019, 7, 19. https://doi.org/10.3390/systems7020019
Salado A, Wach P. Constructing True Model-Based Requirements in SysML. Systems. 2019; 7(2):19. https://doi.org/10.3390/systems7020019
Chicago/Turabian StyleSalado, Alejandro, and Paul Wach. 2019. "Constructing True Model-Based Requirements in SysML" Systems 7, no. 2: 19. https://doi.org/10.3390/systems7020019
APA StyleSalado, A., & Wach, P. (2019). Constructing True Model-Based Requirements in SysML. Systems, 7(2), 19. https://doi.org/10.3390/systems7020019