Simulation Toolkit Standards-based model execution framework No Magic is the first in the industry to provide extendable model execution framework based on OMG fUML and W3C SCXML standards. It extends MagicDraw capabilities and allows validating system behavior by executing, animating, and debugging UML 2.0 Statemachine and Activity models in the context of realistic mock-ups of the intended user interface. Why Simulation? The purpose of a simulation is to gain system understanding without manipulating the real system, either because it is not yet defined or available, or because it cannot be exercised directly due to cost, time, resources or risk constraints. Simulation is typically performed on a model of the system, by visualizing and identifying system defects in early development stages. fUML – the Foundation Language of Executable UML Models Key features: • UML Activity execution (OMG™ fUML standard) • UML State machine execution (W3C SCXML standard) • SysML parametrics solving (OMG SysML standard) • Multiple action languages (JSR 223: Scripting for the Java Platform) • Matlab® integration • Model debugger • Execution animation in diagrams • Quick UI prototyping • API for custom extensions • Runtime objects snapshots to Instance model • Execution trace recording • SCXML file export • Model-driven test cases and scenarios OMG fUML standard defines a basic virtual machine for the Unified Modeling Language, enabling compliant models to be transformed into various executable forms for verification. It supports structural and behavioral semantics of systems, mainly based on UML Activities. SCXML – State Chart XML The W3C SCXML fills the OMG fUML gaps by providing a generic state machine–based execution environment based on Harel state charts. Most things that can be represented as a UML state charts – control systems, view navigation bits, interaction or dialog management, and many more – can leverage the SCXML engine. SCXML file can be used for third-party platform specific code generation. SysML Parametrics SysML Constraint blocks are used to specify a network of reusable constraints that represent mathematical expressions, which constrain the physical properties of a system (e.g. according physics laws) or calculate system MoEs (measure of effectiveness), e.g. cost, risk, performance, reliability etc. Dynamic expressions evaluation in the context of full system simulation allows tracking and maintaining dependencies among critical parameters such as size, weight, speed, power, temperature and others throughout the system life cycle. Cameo Simulation Toolkit uses build-in math solver and/or interfaces to well-known external math solvers such as Matlab and OpenModelica. Action Language At some level of modeling, text based language is more convenient. Cameo Simulation Toolkit allows using any JSR233 based scripting language as action language for defining guards, decisions, default values, State’s entry/do/exit actions and other OpaqueBehaviors. Javascript, Ruby, Groovy and Python are supported by default, other languages can be added by user. Validation and Verification Various kinds of validation and verification options are available: model validation before execution, runtime values constraints, conditional breakpoints, and post-simulation analysis. Constraints can be defined by using OCL or other languages (see Action Languages). Debugging and Animation Simulation Toolkit includes an integrated debugger for setting graphical breakpoints, stepping through charts, browsing and editing runtime objects and values and evaluating custom expressions. The execution trace is highlighted in diagrams where user can quickly see tokens and values in a tooltip on activated element symbol. User Interface Prototyping While execution allows monitoring values and injecting signals by using debugger, far better is to connect the behavior of the system to the realistic mock-up of the intended UI. The Cameo Simulation Toolkit unleashes the power of MagicDraw User Interface Modeling Diagrams by constructing and running real Java Swing UI. As the UI definition itself is in the same model as system, it takes just seconds to drop classes on frames, parts on panels, signals on buttons, properties on labels, sliders or checkboxes to relate user interface components and system properties. Pictures can be dropped directly from web browser or file system and used as part of UI or for dynamic representation of the different system states. Additionally, Open API allows using dedicated third-party tools of your choice to create and plug realistic system mockups. Stopwatch Example No Magic, Inc. 7304 Alma Drive, Suite 600 Plano, Texas 75025 Phone 214.291.9100 [email protected] www.nomagic.com www.magicdraw.com No Magic Europe, UAB Savanoriu ave. 363 LT–49425, Kaunas, Lithuania Phone +370 37 324 032 Fax +370 37 320 670 [email protected] The Truth is in the Models™ Copyright © 2011 No Magic, Inc. MagicDraw is a registered trademark of No Magic, Inc. Matlab, omg and other trademarks belongs to their owners. No Magic Asia 719 KPN Tower, 22nd floor, Rama IX Road, Bangkapi, Huaykwang, Bangkok 10310, Thailand Phone +66 2717 0250 Fax +66 2717 0251 [email protected]
© Copyright 2026 Paperzz