The ongoing transformation in the industry from a document-based systems engineering to a model-based systems engineering approach reveals a need for new methods of verifying and validating systems. Traditional methods of testing the actual system are getting more and more expensive. A model-based environment could significantly reduce testing and, most importantly, verification and validation processes costs. It allows testing on the system model by applying various techniques, such as simulation, analysis, review, mock-ups, etc. There are, however, very few approaches today detailing how verification and validation of the entire system (taking into count its components and subsystems) could be performed. This paper proposes an approach to perform verification and validation of a system using system models developed with Systems Modeling Language (SysML) and in accordance with the MagicGrid (formerly known as MBSE Grid) framework. The approach covers system testing activities beginning with verification of the lowest modeled system elements against system requirements and finishing with validation of the system as a whole, against stakeholder needs.IBM Rational Harmony for Systems Engineering. The IBM methodology covers a verification part related to real-time embedded systems and software. In a model-driven system development environment, the key artifact of the hand-off from systems engineering to subsystem development is executable models. The Harmony/SE Deskbook recommends an interactive verification using model execution, including model animation, and a visual comparison of the "as-is" behavior regarding the expected behavior. Integration test scenarios will be part of each composed subsystem hand-off package. These test scenarios can be used to verify a developed subsystem against the requirements (Hoffman, 2015).The Harmony approach turns out to be very much tool-oriented and the exact modeling language constructs used to perform V&V are not clearly described. Moreover, the approach is embedded systems-oriented and does not describe how testing could be carried out in the higher levels of system hierarchy and with different types of systems.
UML Testing Profile (UTP).UTP is a part of the UML ecosystem and as such, it can be combined with other profiles of that ecosystem in order to associate test-related artifacts with other relevant system artifacts, e.g., requirements, risks, use cases, business processes, system specifications etc. This enables requirements engineers, system engineers and test engineers to bridge the communication gap among different engineering disciplines (OMG, 2019b). UTP provides a set of concepts to describe test planning, test architecture, test behavior, and data. In contrast, SysML has the only concept used for testing called Test Case. In SysML, a Test Case is defined as "a method for verifying a requirement is satisfied" (OMG, 2019a). It has a single return parameter named verdict which is typed by the enumeration Verdict Kind. It is important to note this is consistent with...