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 MES Model Examiner® (MXAM) v.6.1

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.

► Read about all new features in the Release Notes

System Requirements

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

  • Windows Vista, Windows 7, Windows 8, Windows 10 (64-bit versions)
  • Web service Port 10117 (default) must be accessible and can be changed in the tool preferences.
  • System requirements when using MXAM with MATLAB®/Simulink®/Stateflow®, and TargetLink®:
    • Java 8 or higher needs to be installed on your system. The tested version to work with MXAM is 'AdoptOpenJDK 8'.
    • 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.4-0133
  • 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
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
3.8 and 1.9.0 R2007b - R2015b TL 2.2 - TL 4.1

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


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]

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 Guide

MXAM 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).

How to 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 6.1 (January 2020)

Tool Framework

View for MXRAY Metrics

  • A new view showing MXRAY metrics for selected elements is available in the report perspective.
  • Sorting, filtering, and color-coded metric values if a corresponding check reports a finding for the model element ease the identification of architectural problems.

Export of tables and trees to Excel files

  • Tables and trees displayed in MXAM can be exported to Excel files.
  • Sorting and filtering are applied to the exported data.

Support to edit tags of library items

  • Tags for checks, guidelines, and guideline documents can be edited in the library browser and the corresponding editors (assuming that the user has the necessary permission).


  • Collecting additional MXRAY metrics, such as global MXRAY complexity metrics and block counts.
  • Added report validation markers to exported reports.
  • Moved recent project history to the file menu. Introduced preference setting for the number of recent projects to show.
  • Separated preferences for preconfiguration of network installations into different files.

Bug fixes

  • Fixed persistence of UI state which could prevent opening the report perspective. (#7232)
  • Fixed excel report design to prevent unwanted page breaks. (#7321)
  • Fixed a communication issue between MATLAB and MXAM for Java versions >8. (#7421)
  • Fixed an issue which prevented the connection between MATLAB and MXAM. (#7456)
  • Fixed the serialization of the mxmr-reports so that all artifact structure information is available when loading the reports in read-only mode. (#7223)
  • Fixed the customize check parameters wizard to filter global parameters by default. (#7352)
  • Fixed initial selections in the report perspective after a first analysis. (#7353)
  • Fixed the support for installing additional features into MXAM installation. (#7498)
  • Fixed control and dataflow analysis in the ASCET adapter. (#7234)
  • Adapted splash screen for correct DPI scaling. (#7260)

Guidelines, Checks, and Documents

New guideline and check for Embedded Coder (only available in the Functional Safety Solution)

  • mes_cgec_2201: The input signal of an Abs block should not be of an unsigned integer data type, since this most likely indicates functional errors. (Guideline referenced in documents MES Functional Safety Modeling Guidelines for Implementation with Embedded Coder and MES Guidelines - Collection of Best Practices)

New guideline and check for handling forbidden blocks (only available in the Functional Safety Solution)

  • mes_slsf_1700: Depending on the scope of the model or the development phase, certain Simulink, Embedded Coder or TargetLink blocks should not be used. This check allows a user-defined parametrization for these forbidden blocks. (Guideline referenced in document MES Guidelines - Collection of Best Practices)

New guidelines and check for subcharted and parallel states in Stateflow

  • misra_slsf_039_b: Subcharted states hide information, so that the comprehension of the state machine may be reduced. Avoid this by using subcharted states only if the state machine would otherwise be too difficult to view on screen or on printout.
  • misra_slsf_040_c: Reduces implicit delays in data processing by setting the execution order of the parallel states appropriately.
  • misra_slsf_040_d: Avoid erroneous changes of critical execution orders by documenting them appropriately.
  • All guidelines use the check mcheck_mes_sf_generic_0001 and they are referenced in the document MISRA AC SLSF - Modelling Design and Style Guidelines for the Application of Simulink and Stateflow.


  • Checks could not read Excel sheets when executed in a Jenkins environment. This issue has been fixed for Matlab Versions newer than 2013b. For older versions a workaround exists. (#7488)
  • misra_slsf_016_b: The example picture of the guideline has been improved. (#7406)


  • mcheck_misra_slsf_016_a: The check gave a failed finding for Signal Conversion blocks. Now Signal Conversion blocks are also allowed to create bus signals. (#7343)
  • mcheck_jm_0002_a: The check no longer analyzes custom masked blocks, i.e. blocks whose property ‘MaskDisplay’ is not empty and ‘MaskIconOpaque’ is set to either ‘Opaque’ or ‘On’ (depending on the Matlab Version). (#7294, #7330)

Bug fixes

  • Charts in linked subsystems may have caused failed model compilation or non-identification of TargetLink models. This has been fixed. (#6646, #7315, #7383, #7536)
  • mcheck_mes_slsf_3109: Inner transitions do not cause a review finding anymore. (#6849)
  • mcheck_ds_0064: The check now also returns a failed finding if Matlab functionality is used through ‘matlab()’ in a condition/transition/state action in Stateflow. Before, only function calls through ‘ml’ were considered. (#7305, #7542)
  • mcheck_ds_0038: In case the check gave an overall info finding, this finding could not be mapped to a ‘passed’ with the use of the global parameter Global.CheckItemResultMappings. This has been fixed. (#7324)
  • mcheck_mes_sf_004: The check returned false failed findings for multiple broadcasts of a function-call output event. This has been fixed. (#7300)