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?

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.

 

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

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.4 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
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.1 - TL 4.4
5.3 R2011b - R2018b TL 3.1 - TL 4.4
5.2 R2011b - R2018b TL 3.1 - TL 4.3
5.1 R2011b - R2018b TL 3.1 - TL 4.3
5.0 R2011b - R2018a TL 3.1 - TL 4.3
4.7 R2009b - R2017b TL 3.1 - TL 4.3
4.6 R2009b - R2017b TL 3.1 - TL 4.2
4.5 R2009b - R2017a TL 3.1 - TL 4.2
4.4 R2009b - R2017a TL 3.1 - TL 4.2
4.3 R2009b - R2016b TL 3.1 - TL 4.2
4.2 R2009b - R2016b TL 3.1 - 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

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 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"

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

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.6.5 (January 2021)

Tool Framework

Extended Webservice API

  • Added API to query the current MXAM version and applied patches.
  • Added API to query the current project.

Performance improvements

  • Improved UI responsiveness when listing artifacts in the artifacts selection wizard.
  • Improved the performance for fetching ASCET tool artifacts and file artifacts. (#8329)
  • User can decide if list of presented artifacts is structured or flat.
  • Filter for classes is already applied during fetching.
  • Improved the performance of MATLAB check execution in UI and batch execution.
  • Improved UI responsiveness in report perspective when changing the focus in the report navigation views.

Other Improvements

  • For checks that require a compilable model the finding type for models that are not compilable has been changed from ‘Aborted’ to ‘Review’.
  • Improved logging in headless execution. (#8573)
  • Added more detailed information to progress shown in MATLAB during analysis.
  • Simplified preferences for MATLAB executable selection. (#8547)
  • Stabilized order of additional report information added with MATLAB hook. (#8700)
  • Updated support for communication with JIRA ticket system. (Optional plugin on request)

Bug fixes

  • Prevent MXAM from hanging non-deterministically during UI update after an analysis is finished. (#8731)
  • Fixed batch execution of multiple configured analyses. (#8728)
  • Fixed ASCET model parsing for differences in Java Runtime versions. (#8640)
  • Fixed ASCET picture export for embedded pictures in findings. (#8464)
  • Fixed validation for configuration of multiple license files/directories in the License Manager. (#8631)

Guidelines, Checks, and Documents

Compatibility with MATLAB 2020a and 2020b

  • Made minor adjustments to ensure compatibility of framework and checks with MATLAB 2020a and 2020b.
  • Updated EC_ParameterList.xlsx of mes_cgec_9004 and the list of prohibited blocks in mes_cgec_2001 to ensure Embedded Coder compatibility.

New MAB Guidelines (Version 5.0) available

  • jc_0702: The parameters or constants used in Stateflow shall not contain numeric literals except 0 for initial value and 1 for increment or decrement.
  • jc_0721: The substates of parallel states shall not be parallel states.
  • jc_0775: In a Stateflow flowchart only one terminating junction with a single unconditional transition as input shall be used.
  • na_0003: The {If} and {Elseif} expressions of the If block shall be used only to define input signals as condition.

Improvements

  • mcheck_misra_slsf_006_b: A new check parameter to ignore blocks by their block type and/or their mask type was added to improve the usability of the check and the transparency of the check behavior. The default parameter setting is chosen to maintain the check behavior from the preceding MXAM version. (#8404)
  • Specific checks aborted while analyzing the data types of the TargetLink blocks TL_BitSet or TL_BitClear. This has been fixed. (#8606, #8656)
  • Certain modeling patterns involving TargetLink functions in library models may have caused the determination of TargetLink block properties to fail. This has been fixed (#8541)
  • mcheck_misra_slsf_053_j: The finding message of the check has been changed slightly for readability purposes. (#8588)

Bug fixes

  • mcheck_jc_0221, mcheck_jc_0222, mcheck_na_0030: The checks may have aborted for certain modeling patterns where bus port sources are contained in referenced models. This has been fixed. (#8512)
  • mcheck_misra_slsf_036_c: In specific cases the check may have given false negative findings for Stateflow port names that do not match the label of the connected signal. This has been fixed. (#8584)
  • mcheck_ds_0098: The check may have aborted in cases involving a range analysis of vector signals. Now, the check is robust in this respect. (#8639)
  • mcheck_mes_slsf_9103: The check wrongly detected identical block names with same the library reference. This has been fixed. (#8497)
  • mcheck_mes_cgtl_4204: The check aborted due to an internal processing error, where variables have not been correctly initialized. This has been fixed. (#8662)
  • mcheck_misra_tl_5_9: The check aborted when analyzing Gain blocks where the gain value was a matrix. This has been fixed. (#8662)
  • mcheck_na_0008: The TargetLink block TL_ExtractBits has been excluded from the analysis, because it is no Subsystem in the original sense. Before, the block has caused the check to abort. (#8662)
  • mcheck_sdt_sc001: The check gave false failed findings for TargetLink port blocks, if their connected source block did not have scaling properties. This has been fixed. (#8704)
  • mcheck_misra_slsf_048_g: The check gave false negative findings if there was an operation in a Stateflow chart with a number other than 1 or 0 and a variable inside round brackets. This has been fixed. (#8726)