The MoMuT family of test case generation tools supports the following modeling languages:
- UML State Machines
- Timed Automata
- Requirement Interfaces
- Action Systems
- Event-B
- (Other Domain Specific Languages)
The following table sums up the main differences between these languages.
Modeling Language | Graphical/Textual Model | Synchronous/Asynchronous | Event/State-based Testing | Time |
UML | Graphical | Async. | Events | Discrete |
Timed Automata | Graphical | Async. | Events | Real-Time |
Requirement Interfaces | Textual | Sync. | State | Discrete |
Action Systems | Textual | Async. | Events |
Discrete |
Event-B | Textual | Async | Events |
Discrete |
Unified Modelling Language – UML
MoMuT::UML (pronounced as “MoMuT for UML”) is responsible for creating test cases from UML statecharts. The supported set of UML state machine language elements is quite complete as MoMuT::UML supports orthogonal regions, nesting, time triggers, change triggers, signal triggers, call triggers, completion triggers, choices, junctions, and OSLC expressions. MoMuT::UML uses AGSL as a simple action language. The few limitations concern state-machine inheritance, late-binding, and overloading of methods. The tool has been used with models in excess of 2800 live statecharts. More…
Timed Automata
MoMuT::TA supports test case generation for systems having real-time requirements and uses the excellent UPPAAL tool as model editor. More…
Requirement Interfaces
MoMuT::REQS is the tool of choice when it comes to test case generation from written requirements. In difference to UML, the REQS tool is text-based and supports an easy to learn language for expressing individual requirements as a set of assume-guarantee (“if-then”) pairs. All these pairs taken together form the synchronous model of the system. MoMuT::REQS allows for consistency checks and very sophisticated test-requirement mapping. Typical models are in excess of 500 requirements. More…
Action Systems
MoMuT::OOAS is the MoMuT version for text-based modeling of asynchronous systems. It also forms the basis of MoMuT::UML as each UML model is turned into an object oriented action system for test-case generation. Hence MoMuT::UML can be seen as a front-end to MoMuT::OOAS. The syntax of the action system language was – in parts – inspired by VDM and supports types like tuples, lists, enums, bools, integers, and action systems (“classes”). A custom scheduler for all active action system instances can be specified. MoMuT::OOAS has been used with object oriented action systems in excess of 25000 statements and more than 2800 parallel running instances. More…
Event-B
Event-B is a formal method for system-level modelling and analysis. Key features of Event-B are the use of set theory as a modelling notation, the use of refinement to represent systems at different abstraction levels and the use of mathematical proof to verify consistency between refinement levels. More…