Support MES Model Examiner® (MXAM)

What is MXAM?


MES Model Examiner® (MXAM) offers fast and reliable guideline compliance verification for Simulink®, Stateflow®, Embedded Coder®, TargetLink®, ASCET®, and Enterprise Architect® models, as well as Excel® data, using general and company-specific modeling guidelines and data rules.

Certified by TÜV SÜD for IEC 61508, ISO 25119, and ISO 26262

TÜV Certificate


What's New?

Highlights in latest versions of MES Model Examiner® (MXAM) v.7.1

Validation of Project Settings
Show validation details in pre-analysis validation in case of warnings/errors. Prevent execution of an analysis if there is any error detected.

New Checks for MAB
Additional MAB 5.0 guidelines are available.


MXAM v.7.0

Highlights in MES Model Examiner® (MXAM) v.7.0

dSPACE TargetLink users will benefit from significant runtime improvements of TargetLink checks and the support of TargetLink 5.1.

Newly available MAB 5.0 guidelines focus on the prevention of division by zero in Simulink and Stateflow.

MXAM v.6.5

Highlights in MES Model Examiner® (MXAM) v.6.5

A number of detailed improvements enhance the overall tool responsiveness and usability.

The coverage of MAB 5.0 guidelines is improved further.

MXAM v.6.4

Highlights in MES Model Examiner® (MXAM) v.6.4

Enjoy the new visualization of your software model architecture.You can gain a quick overview of your model via this graphical overview of the six main metric values in one diagram.

New MAB Guidelines (Version 5.0) available.The document contains the guidelines of the official Mathworks Advisory Board guidelines document in version 5.0.

MXAM v.6.3

Highlights in MES Model Examiner® (MXAM) v.6.3

Focusing on user experience, a number of detailed improvements in user feedback and tool behavior is dedicated to enhance the daily work with MXAM. They provide a stable basis for upcoming exciting features.

MXAM v.6.2

Highlights in MES Model Examiner® (MXAM) v.6.2

Clone group detection
The clone group metric identifies groups of subsystems that are almost identical. Such repetitive implementation, potentially created by copy/paste actions during modeling, increases the overall complexity of a model and thus should be avoided.

Screenshot MXAM 6.2 Clone Groups


Improved MATLAB batch execution
A new configuration option for the MATLAB API allows synchronous execution of batch tasks.

Compatibility with Matlab 2019b and TargetLink 5.0

MXAM v.6.1

Highlights in MES Model Examiner® (MXAM) v.6.1

Architectural metrics view

A new view in the report perspective of the MXAM Functional Safety Solution shows MXRAY metrics, supports sorting, and filtering. Tables and trees can be exported to Excel.

MXAM v.6.0

Highlights in MES Model Examiner® (MXAM) v.6.0

Enhance static model analysis with architectural aspects (BETA)

Static analysis of MATLAB models is complemented by MXRAY model metrics to evaluate adherence to architectural design principles. Useful functionalities of the MXAM analysis framework, such as use of parameters, annotations, ignore lists, and reporting options, are also available.

New MXRAY model metrics guidelines and checks (Functional Safety Solution)

MXRAY checks focus on Restricted Local Complexity, Restricted Number of Hierarchy Levels, Restricted Number of Inports and Outports, Restricted Cyclomatic Complexity, and Use of Effective Interfaces.



Manual Installation

  • Installer: Install MXAM by executing the setup file (.exe) and follow the setup instructions.
    • The startup of the installation process might take a while depending on the security settings of the client machine.
    • Installation to a write-protected directory: Right click the setup file and execute as administrator.
  • Zip archive: Unzip the archive into any directory

Automatic Headless Installation

  • Run the MXAM installation once on a machine and save your automatic installation data in the Finish Panel to auto-install.xml.
    With this data, you will be able to run the same installation on another similar machine.
  • Configure the auto-install.xml
  • Run the automatic installation: >>[installer-name].exe [ABSOLUTE-PATH/auto-install.xml]


Update to the Latest Version

  • If you added MXAM folders permanently to the MATLAB path, please remove all of these folders from the path.
  • If you installed the old version in a folder with a version postfix (e.g. x:\project\matlab\mxam_x_x), you can keep that directory as a backup.
  • If you installed without a version postfix, you could rename the old installation directory to one with a version postfix as a backup.

Update from MXAM 1 to a Current Version of MXAM

A migration kit to migrate customer-specific checksets and checks is available upon request.
Please contact

System Requirements

The following system requirements must be in place to use MXAM:

  • Windows Vista, Windows 7, Windows 8, Windows 10 (64-bit versions)
  • Java 8 or higher needs to be installed on your system (the tested version to work with MXAM is AdoptOpenJDK 8).
  • Webservice Port 10117 (default) must be accessible. Can be changed in tool preferences.
  • System requirements when using MXAM with MATLAB®/Simulink®/Stateflow®, and TargetLink®:
    • MATLAB® version see table below
    • TargetLink® (base suite) version see table below
    • Port 5564 (default) must be accessible
  • System requirements when using MXAM with ASCET: ASCET 6.1 to 6.4.5 Beta
  • System requirements when using MXAM with EXCEL: Excel 2003 and higher

Compatibility of each MXAM release with MATLAB and TargetLink releases

MXAM Release MATLAB Release TargetLink Release
7.1 R2013b - R2020b TL 3.5 - TL 5.1
7.0 R2013b - R2020b TL 3.5 - TL 5.1
6.5 R2011b - R2020b TL 3.3 - TL 5.0
6.4 R2011b - R2019b TL 3.3 - TL 5.0
6.3 R2011b - R2019b TL 3.3 - TL 5.0
6.2 R2011b - R2019b TL 3.3 - TL 5.0
6.1 R2011b - R2019a TL 3.3 - TL 4.4
6.0 R2011b - R2019a TL 3.3 - TL 4.4
5.3 R2011b - R2018b TL 3.3 - TL 4.4
5.2 R2011b - R2018b TL 3.3 - TL 4.3
5.1 R2011b - R2018b TL 3.3 - TL 4.3
5.0 R2011b - R2018a TL 3.3 - TL 4.3
4.7 R2009b - R2017b TL 3.2 - TL 4.3
4.6 R2009b - R2017b TL 3.2 - TL 4.2
4.5 R2009b - R2017a TL 3.2 - TL 4.2
4.4 R2009b - R2017a TL 3.2 - TL 4.2
4.3 R2009b - R2016b TL 3.2 - TL 4.2
4.2 R2009b - R2016b TL 3.2 - TL 4.2
4.1 R2007b - R2016b TL 2.2 - TL 4.1
4.0 R2007b - R2016a TL 2.2 - TL 4.1
3.9 R2007b - R2015b TL 2.2 - TL 4.1

Quick Start

Starting MXAM

  • For MATLAB platform: Open MATLAB, navigate to the MXAM installation directory, and execute >>mxam
  • For other platforms: Start MXAM using the program shortcut or go to the MXAM installation directory and execute mxam.exe

Starting an Analysis

For MATLAB platform:

  • Open a model in MATLAB
  • Press "Analyze" in MXAM
  • Select the model in the artifact dialog
  • Press "Finish"


  • Press "Analyze" in MXAM
  • Press "Open ASCET 6" in the artifact dialog if it is not yet open
  • Press "Refresh" to fetch models from the database
  • Press "Finish"

For Others:

  • In the Project perspective, press "Add..." in the Artifact Section to add an artifact
  • Select the artifact and press "Finish"
  • Press "Analyze"


  • Go to the "Project Guidelines" perspective to see which guidelines will be checked during the analysis.
  • To see the pool of all available guidelines, go to the "Library Browser" perspective and select the "Guidelines" view.


If you have any suggestions to help us improve the MES Model Examiner®, please do not hesitate to contact us:

User Instruction

MXAM User Guide

User Guide

The MES User Guide presents clear instructions on how to work with the MES Model Examiner® (MXAM). It provides users with information about getting started and working with MXAM. You can easily call the User Guide by clicking on "Help > Help Contents" in the menu (see image).

MXAM Videos

In this video, Model Engineering Solutions (MES) will demonstrate how to set up an MXAM project as an mxmp-file. You will learn how to create and configure an MXAM project and how to save and load a project. Since this video is focused on the first step of the MXAM workflow, basic knowledge of the workflow is needed in order to watch this video.

In this video MES will explain how to understand reports and demonstrate how to work with them in order to make your model guideline compliant. You will need to have basic knowledge about the MXAM workflow to watch this video.


Release Notes - MXAM v.7.1 (July 2021)

Tool Framework

Support for automatic port selection when MXAM is used with the MES Plugin for Jenkins

  • The port for the MXAM web server and the port for the connection to MATLAB can now (by default) be automatically determined with the MES Plugin for Jenkins (since version 2.0). This facilitates the configuration of parallel job executions where each execution needs distinct ports.


  • Improved performance for adding/removing annotations if there are many existing annotations.
  • Improved error handling when creating new annotations in case of corrupted annotation definition files.
  • Improved handling for guidelines with multiple versions in the ‘new document wizard’:
    • The latest suggested guideline version is shown.
    • If no guideline version is suggested, the latest version that has a referenced check is shown.
    • If no guideline version is suggested and if no guideline version has a referenced check, the latest version is shown.
  • Validation markers are generated when library items cannot be loaded correctly.
  • Added more information about the progress displayed during an analysis.
  • Show validation details in pre-analysis validation in case of warnings/errors. Prevent execution of an analysis if there is any error detected.
  • Added information to the metrics view in case metrics could not be computed, and if global metrics omitted some child values.

Bug fixes

  • Several fixes for the report export wizard:
    • Show progress of export.
    • Fixed detection of an existing Excel file to show a warning when the user is about to overwrite this file. (#8669)
    • Do not delete a folder with the same name as the report name when exporting HTML reports that overwrite existing files. (#8756)

Guidelines, Checks, and Documents

New MAB Guidelines (Version 5.0) available

  • mcheck_jm_0011: Pointer variables shall not be used in Stateflow. (#8390)
  • mcheck_jm_0012: Event Broadcasts. (#8941)
  • mcheck_db_0137: States in State Machines. (#8388)
  • mcheck_jc_0621: The icon shape for Logical Operators shall be set to “rectangular”. (#9093)
  • mcheck_jc_0802: Prohibited use of implicit type casting in Stateflow. (#9053)


  • For TargetLink AUTOSAR models, the treatment of interface blocks (TL Ports, TL Bus Ports, TL DataStores) configured for AUTOSAR has been refined. (#9029)
  • mcheck_sdt_sc001, mcheck_sdt_sc007_a and mcheck_sdt_sc007_b: Runnable ports in TargetLink AUTOSAR models are not analyzed. (#9029)
  • mcheck_ds_0079_c: The check now fully supports Simulink’s hide automatic names feature. (#8929)
  • mcheck_misra_slsf_027_a: The check now fully supports Simulink’s hide automatic names feature. (#8697)
  • mcheck_jc_0201, mcheck_jc_0231: The shared parameter MAB.UsableCharacters.IgnoreHiddenNames has been introduced to ignore hidden subsystem and block names. (#9059)
  • mcheck_misra_slsf_026_a, mcheck_misra_slsf_026_b: The check implementation was rearranged for improved performance. (#8697)
  • mcheck_sdt_sc004_c: The check now supports the range checking of Gain blocks. (#8997)
  • mcheck_ds_0098: The check now has improved failed finding messages. (#9054)


  • mcheck_sdt_sc005: Legacy entries in the default value of the check parameter ‘UserSourceBlocks’ have been removed. (#9061)

Bug fixes

  • mcheck_misra_slsf_027_ab: For nonempty check parameter ‘LibrariesToCheck’ the check implementation caused an abort if executed on a compiled model. This was fixed. (#9013)
  • mcheck_misra_slsf_030_ab, mcheck_misra_slsf_030_c: The checks may have aborted for certain customized settings of the parameter ‘IgnoredBlocks’. This was fixed. (#9035)
  • mcheck_misra_tl_7_9: The check did not support the option ‘UtilizeBitwiseShiftOperations’ that was introduced with TargetLink 5.0. This has been fixed. (#9044)
  • mes_sl_generic_0001: The configuration of the check with the parameter MES.mes_sl_generic_0001.FindSystemConfiguration did not work properly for multiple definitions of find_system-calls. In particular, this occurred when using different amounts of empty elements in separate rows. This was fixed. (#9098)
  • mcheck_mes_slsf_9001: The result of the repair action for numeric Configuration Parameters was not shown correctly. This was fixed. (#9109)