Support MES Model Examiner® (MXAM)

What is MXAM?

TÜV SÜD

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?

 

 

MXAM v.10.0

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

Integration of MES Model & Refactor® (MoRe)
MXAM Functional Safety Solution now includes MoRe in all user licenses. Integrated in the user context menu of the Simulink editor, MoRe automates layouting and simplifies model refactoring, making daily modeling tasks easier, faster, and less error-prone.

Easy Analysis of EmbeddedCoder AUTOSAR Runnables
MXAM's extended global parameter allows you to restrict the analysis to EmbeddedCoder AUTOSAR Runnables only i.e. ignore auto-generated frame.

New Functional Safety Guidelines and Checks
Focus on defensive implementation techniques in Simulink/Stateflow and Correct Usage of Reusable Components.

► Read about all new features in the release notes

MXAM v.9.3

Highlights of MES Model Examiner® (MXAM) v.9.3

Expedited Tool Installation and Distribution
The new installer offers extended options to roll out MXAM in your environment. A global license configuration can be set up to simplify the tool distribution in your organization.

Additional Checks Improve Signal Connections
Specific checks ensure consistent naming and align the naming of signals, ports, and blocks. This prevents erroneous signal connections and improves the traceability between model and code.

MXAM v.9.2

Highlights of MES Model Examiner® (MXAM) v.9.2

Identification of Duplicate Stateflow Code
Duplicate code shall be avoided because it is error-prone, hard to maintain, and inefficient. The new check mes_slsf_3800 screens your Stateflow charts to find identical or similar code segments.

Improved Handling of AUTOSAR Layers
A new global parameter ignores the model layers above the AUTOSAR Runnables to focus on the handwritten model parts.

Increased Robustness of Model Element Links
If small changes are made to the model, e.g. by repair actions or adaptations to the model structure, other links to model elements retain validity. This simplifies continued work with model repairs and reloaded reports.

MXAM v.9.1

Highlights of MES Model Examiner® (MXAM) v.9.1

Automatic Validation of the Model Before Analysis
In order to make sure that your model and setup is ready for a static analysis, MXAM now automatically pre-validates the Simulink® model.

Integrated Support for Model Variants
MXAM further supports the use of Variant blocks. The scope of the analysis can be configured by a global parameter to include either only active variants or all variants. This parameter is applied to all checks.

Extended Support for Assisted and Automated Safe Repair of Selected Findings

Additional Checks for MAB 5.0 Guidelines

Improved Support for the AUTOSAR Use-Case

MXAM v.9.0

Highlights of MES Model Examiner® (MXAM) v.9.0

Assisted and Automated Safe Repair of Selected Findings
MXAM streamlines modeling with a new repair function for individually selected findings. A new dialog shows detailed information about the model part, specific reason, and suggested repair action for each finding, allowing more control over repair activities.

New MES Checks for Modeling Best Practices in Stateflow

Increased Coverage of MAB Guidelines

Important Support Information

Updated Licenses for MES Model Examiner® (MXAM)
MXAM has released a new major version and thus requires a license update. License updates are available for all active customers, i.e. customers with a valid support and maintenance contract. For MXAM 9.0, the MES License Support team will contact all active customers within the next few days to provide updated license files. The updated licenses will remain compatible with older tool versions.

Update Required for Licensing Servers Running FlexNet Publisher Versions Older than FNP 11.19.
An update of the MES license module in the latest MES tool releases requires the update of the FNP license server to version 11.19.1 or above. It can be downloaded from this page.

MXAM v.8.2

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

Generic MXRAY Model Metric Check
Through a new check matlab_mxray_generic_0001, any numeric model metric can be assessed, by configuring an upper bound for its numeric value. A finding is created for each structural element with a metric exceeding the upper bound value.

Queuing of CI License Checkouts
MXAM now supports queuing license requests when there is no available license at the time of request. A timeout can configured. This feature requires the MXAM_CI_EXEC license.

Increased Coverage of MAB Guidelines (version 5.0)
Several new checks cover numerous best practices for good modeling style and configuration in Simulink and Stateflow.

MXAM v.8.1

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

Automatic return of unused licenses
When licensed instances of the MXAM application remain idle for more than 6 hours, their licenses are automatically returned to the license server. This allows a more effective license usage and avoids unused licensed tool instances. The affected idle MXAM instances are blocked until user input requests a new license checkout.

Support of Linux operating systems (BETA)

New Guidelines for Targetlink (Versions 5.0, 5.1, and 5.2)
Six new guidelines focus on optimizing Targetlink code generation and MISRA C compliance.

MXAM v.8.0

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

Extended Reporting Details
Finding messages referencing additional model elements now include footnotes with link details when model links are not resolvable (e.g. in xlsx or PDF reports).
Report details are consolidated among report formats, adding the architectural metrics table to html and PDF reports, and parameter configuration details to xlsx reports.

Additional Guidelines
New guidelines are added focusing on implicit data type conversions, saturation settings of Integrator blocks, and layouts in Stateflow.

 

Installation

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.
    • Caution: If your installation path contains a special symbol from the following list, MXAM will fail to start and issue an error dialog: #, %, ;. Avoid having these symbols in your MXAM path.
  • Zip archive: Unzip the archive into any directory

Command Line Usage and Silent Installation

  • The MXAM installer has four flags you can set in the Command Line: /D, /S, /lic and /conf. These flags are all optional. Only when using the /S silent flag is it strongly recommended to also specify the installation directory using the /D flag.
  • /D: Specifies the installation directory. Note that this flag always needs to be set at the end of the cmd usage. Not placing it last will result in errors.
  • /S: Enables a silent installation, e.g.

    mxam-installer.exe /S /D=D:\path\to\mxam

  • /lic: Used to set a default license file for your MXAM installation. The file you specify will be copied to the license folder of your MXAM installation, e.g.

    mxam-installer.exe /S /lic=D:\path\to\license.lic /D=D:\path\to\mxam

  • /conf: Used to set a customized configuration for your installation. The flag expects a folder with the following specific folder structure:

    my-config
    |-- com.modelengineers.mxam.core.prefs
    |-- com.modelengineers.mxam.ui.common.prefs
    |-- com.modelengineers.mxam.ui.jiraSupport.prefs
    |-- lismo.config
    |-- adapters
    |   |-- com.modelengineers.mxam.tooladapter.ascet6.ini
    |   |-- com.modelengineers.mxam.tooladapter.file.ini
    |   |-- com.modelengineers.mxam.tooladapter.matlab.ini
    |   |-- com.modelengineers.mxam.tooladapter.mxamreport.ini

    You can find a template folder of the configuration under doc/MXAM_X_Y_Z_config_template.zip in your MXAM installation folder. Simply copy the template folder and start editing the preferences and configs relevant to you. For specific explanations regarding each config property, please consult the MXAM Help Contents (in MXAM under Help > Help Contents), e.g.

    mxam-installer.exe /S /conf=D:\path\to\config\folder /D=D:\path\to\mxam

Command Line Usage and Automatic Headless Installation (MXAM <= 9.2)

  • 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 sales@model-engineers.com.

System Requirements

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

  • Windows 7, Windows 10 (64-bit versions), Windows 11 or
  • Linux (64-bit versions), tested with Ubuntu 20.04.1 Desktop.
  • Java Version 11 to 21 (64-bit versions) needs to be installed on your system (the tested version to work with MXAM is Adoptium OpenJDK 11).
  • System requirements when using MXAM with MATLAB®/Simulink®/Stateflow®:
    • MATLAB® version see table below
    • System requirements when additionally using TargetLink®: TargetLink® (base suite) version see table below
  • System requirements when using MXAM with ASCET: ASCET 6.1 to 6.4.7

Compatibility of each MXAM release with MATLAB and TargetLink releases

MXAM Release MATLAB Release TargetLink Release Compatible Java Versions
10.0 R2019b - R2023b TL 5.0 - TL 2023b 11 - 21 (64bit)
9.3 R2015b - R2022b TL 4.1 - TL 2022b 8 - 15 (64bit)
9.2 R2015b - R2022b TL 4.1 - TL 2022b 8 - 15 (64bit)
9.1 R2015b - R2022b TL 4.1 - TL 2022b 8 - 15 (64bit)
9.0 R2015b - R2022b TL 4.1 - TL 2022b 8 - 15 (64bit)
8.2 R2015b - R2022a TL 4.1 - TL 5.2 8 - 15 (64bit)
8.1 R2015b - R2021b TL 4.1 - TL 5.2 8 - 15 (64bit)
8.0 R2015b - R2021b TL 4.1 - TL 5.2 8 - 15 (64bit)
7.3 R2013b - R2021b TL 3.5 - TL 5.2 8 - 12 (64bit)
7.2 R2013b - R2020b TL 3.5 - TL 5.1 8 - 12 (64bit)
7.1 R2013b - R2020b TL 3.5 - TL 5.1 8 - 12 (64bit)
7.0 R2013b - R2020b TL 3.5 - TL 5.1 8 - 12 (64bit)
6.5 R2011b - R2020b TL 3.3 - TL 5.0 8 - 12 (64bit)
6.4 R2011b - R2019b TL 3.3 - TL 5.0 8 - 12 (64bit)
6.3 R2011b - R2019b TL 3.3 - TL 5.0 8 - 12 (64bit)
6.2 R2011b - R2019b TL 3.3 - TL 5.0 8 - 12 (64bit)
6.1 R2011b - R2019a TL 3.3 - TL 4.4 8 - 12 (64bit)
6.0 R2011b - R2019a TL 3.3 - TL 4.4 8 - 12 (64bit)

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"

For ASCET:

  • Press "Analyze" in MXAM
  • Press "Open ASCET" 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"

Guidelines

  • 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.

Suggestions

If you have any suggestions to help us improve the MES Model Examiner®, please do not hesitate to contact us:
Email: mxam@model-engineers.com

User Instruction

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

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.10.0 (January 2024)

Tool Framework

MoRe integrated in Functional Safety Editions

  • MES Model & Refactor® (MoRe) is now integrated into every MXAM Functional Safety edition.
  • The tool is activated by default and can be configured in the MATLAB Adapter Settings in the MXAM Preferences.
  • Use MoRe to your advantage to simplify and accelerate model creation and refactoring.

Updated Java Compatibility to version Java 21

  • MXAM is now Java 21 compatible.
  • The minimum Java version required is Java 11. See the compatibility table in the README_Installation for more information.

Improvements

  • The full-text search feature (Lucene package) was updated to version 6.6.6.
  • Added a help page to the installer to guide the user if they wish to initialize MXAM at every MATLAB startup.

Bug Fixes

  • Fixed an issue where MXAM would freeze if the model consisted of a high number of components and the user switched between document and artifact navigation in the report perspective. (#11531)
  • Fixed a dialog freezing issue that occurred if over 5000 findings were repaired in one go. (#11241)
  • Added warning if the installation directory contains special characters like #, % and ; which will cause issues. (#11450)
  • Fixed an issue where MXAM wouldn’t properly log in a custom user directory. (#11487)
  • Fixed an issue where TargetLink Data Dictionary objects could not be highlighted during the interactive repair dialog. (#11564)
  • Fixed an issue where Stateflow Charts could not be highlighted during the interactive repair dialog if the identification feature was set to ‘Path’. (#11577)

Guidelines, Checks, and Documents

Easy Analysis of EmbeddedCoder AUTOSAR Runnables

  • Ignore Embedded Coder AUTOSAR frames for SWCs using the global parameter ‘Global.AnalyzeAutosarRunnableSubsystemsOnly’
    • The global parameter was extended so that only model elements inside Embedded Coder AUTOSAR Runnables are analyzed if the parameter is enabled.
    • The auto-generated SWC frames are ignored if the parameter is enabled.
    • Runnable Subsystems can be either Function-call Subsystems/Simulink Functions or Atomic Subsystems and Event Listener Subsystems.

Compatibility with MATLAB R2023b and TargetLink 2023-B (23.1)

  • MXAM now supports MATLAB releases from R2019b to R2023b and TargetLink releases from 5.0 to 2023-B (23.1).

New Functional Safety Guidelines and Checks

  • Prohibit the usage of user-defined events in Stateflow charts with guideline mes_slsf_3500
  • Ensure that re-usable model components have a resolved and enabled link with guideline mes_slsf_1500.
  • Ensure the usage of allowed rounding modes set in parameter ‘MES.mes_slsf_2200.allowedRoundingModes’ with guidelines mes_slsf_2200 and misra_slsf_008_b.
  • The chapter structure of the guideline document “Functional Safety Modeling Guidelines” was refined.

New dSPACE Guidelines for TargetLink (Versions 5.0, 5.1 and 5.2) available

  • Ensure the usage of user-defined variable and function classes in the TargetLink Data Dictionary with mcheck_mes_cgtl_4307 covering guideline TL_RULE_SWDESIGN_USER_VARCLASS_FUNCCLASS. (#9965)

Extended the Assisted and Automated Safe Repair of Findings

  • New repair functionality has been added to checks for the following topics:
    • Usage of Conditional Control blocks: mcheck_jc_0656, mcheck_misra_slsf_011_b.
    • Usage of Lookup and Prelookup Table blocks: mcheck_jc_0626, mcheck_mes_slsf_0626.
    • Comments in Block Properties: The guideline ds_0082 now references misra_tl_1_2_a and misra_tl_1_2_b.

Improvements

  • Allow block name numbering for blocks with indentically-named constants with new check parameter ‘MISRA_SL_SF.misra_slsf_026_b.AllowBlockNumbering’ with guideline misra_slsf_026_b. (#11426, #11459)
  • The guideline mes_cgtl_4113 “Consistent Usage of Output Variables for Model and Code” and the associated check have been refined for better traceability between model, TargetLink data dictionary, and generated code. The default parametrization has been adapted to cover the main use cases. (#11525)
  • The check mcheck_db_0125_d now analyzes Stateflow atomic subcharts separately from the parent chart. (#6843)

Changes

  • The following guideline documents including their guidelines and checks are not part of the release anymore:
    • dSPACE - Modeling Guidelines for MATLAB®/Simulink®/Stateflow® and TargetLink® (dspace_tl_3_0)
    • Modeling Guidelines for dSPACE TargetLink - Version 4.0.3 (dspace_tl_4_0)
    • MISRA AC TL Modelling Style Guidelines for the Application of TargetLink in the Context of Automatic Code Generation (misra_ac_tl_1_0)
    • If you have any of these guideline in your guideline documents, the removed guidelines will be marked in red. Please refer to the new dSpace documents to add the new versions of the guidelines. You can find a mapping list in doc/MATLAB/dSpaceGuidelineMapping/dSpaceGuidelineMapping.xlsx
  • TargetLink Known Problems that are related to TargetLink versions older than 5.0 were removed from the document dSPACE TargetLink Known Problems

Bug Fixes

  • Some checks may have aborted when MXAM tried to evaluate a parameter of a block located in a library. This has been fixed. (#11427)
  • Fixed an issue where mcheck_na_0001 created false positive findings for charts with ‘ActionLanguage’ set to ‘MATLAB’ and ‘EnableBitOps’ set to false. (#11449, #11426)
  • Fixed an issue in mcheck_na_0039 where atomic subcharts were incorrectiy reported instead of Simulink Functions embedded in Stateflow Charts. (#6843)
  • Improved handling of syntax errors for checks mcheck_misra_slsf_038_a and mcheck_misra_slsf_038_b to now give a review. (#11352)
  • Fixed an issue where sdt_sc008 was not filtering out library blocks according to project global setting. (#11546)
  • Fixed an issue where mcheck_mes_cgtl_4306 aborted the analysis of Stateflow data items with the scope ‘Local’ or ‘Output’. (#11548)
  • Fixed an issue on Linux, where mcheck_ar_0001, mcheck_ar_0002, and mcheck_jc_0242 aborted because they failed to segment the MATLAB path. (#11593)
  • Fixed an issue where mcheck_jc_0773 reported a false positive for the execution order of unconditional inner state transitions when there are also existing outgoing transitions. (#11395)
  • Fixed an issue where mcheck_mes_mc_0011 and mcheck_mes_mc_0012 would abort on Simulink models that are not compilable. (#11608)