Model Validation
Moxie provides a model validation report to help you identify errors in your opaque expressions before you execute the entire simulation.
When you generate this report, Moxie runs a validation process against the state machines in your model and presents you with a list of detected
errors and warnings, including the IDs of the offending SysML elements.
You can then copy and paste those IDs into Moxie's element locator utility to highlight those elements in the
Containment Tree
of your No Magic modeling tool.
You can find both the Model Validation Report
and the Element Locator
utility in the
Moxie
menu in your modeling tool.
Example error
Consider the following block and state, which have an intentional error.
Figure 1: An error in a balloon operator model
Can you spot the error? Feel free to compare the block and state in Figure 1 to their correct versions in the hot air balloon ride example. With a bit of time and effort, you could find it for this small example, but what about for a much more complicated model? You can save yourself the time and effort of scouring your model, or of running a simulation only for it to fail part way through, by simply running a model validation report.
Figure 2: The model validation report for the balloon operator error
The report in Figure 2 shows that the author of the state machine made an error in the name for the
isOperating
property, incorrectly calling it isOperation
.
Typos like this, miscommunications between authors of different sections, or changes in design are all common sources of errors.
You should use the model validation report early and often to identify such errors, so you can alleviate them before they can cascade into larger
problems.