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
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.
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
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.
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.
The following system requirements must be in place to use MXAM v.6.2:
- 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.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|
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 email@example.com.
- 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]
- 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"
- 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:
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.
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).
Release Notes - MXAM v.6.2 (April 2020)
Synchronous Matlab batch execution
- It is now possible to execute the Matlab batch analysis synchronously. Use the configuration option ‘b_synchronousExecution’ to enable this for your Matlab batch analysis.
- The API call will return the analysis results as a Matlab struct to the calling script.
Clone group detection for Matlab artifacts
- The clone groups metric recognizes groups of almost identical subsystems within the model. These groups are potentially created by copy/paste and unnecessarily increase the complexity of a model.
- An additional column in the metrics view shows the membership of subsystems in clone groups.
- Several layout improvements including a new splash screen, naming of menu entries, and new icons.
- Added a new column in the Excel report export format showing the objectives of the guidelines.
- Improved the performance of the Matlab artifact structure analysis when MXRAY metrics are used.
- Added new commandline parameters to configure license files and servers.
- Improved the artifact configuration table to include a search field and make the columns sortable.
- Included the image information of HTML reports within the HTML file itself. Reports in the HTML format now only consist of one file and do not create image files anymore.
- Added support for Atomic Subcharts and Atomic Boxes in the artifact structure. (#7503, #7504)
- Fixed handling for creating annotations of not yet saved artifacts. (#7731)
- Fixed the behavior of views in the report perspective if a colored cell in the metrics view is selected. (#7588)
- Fixed a problem with the uninstaller. (#7823)
- Decreased memory comsumption when loading annotations that were saved using an older MXAM version. (#7794)
- Fixed a problem that occurred when images were dragged and dropped out of the detail view. (#8008)
Guidelines, Checks, and Documents
Compatibility with MATLAB 2019b
- Minor adjustments to ensure compatibility of framework and checks with MATLAB 2019b.
Compatibility with TargetLink 5.0
- Minor adjustments to ensure compatibility of framework and checks with TargetLink 5.0.
- mcheck_mes_cgtl_9002: Updated TL_ParameterList.xlsx according to TargetLink 5.0.
- Update of TargetLink Known Problems checks (available in the Functional Safety Solution).
- The MXAM Developer Guide for developing MATLAB checks has been updated and improved. For further information, see Developing M-Checks.
- mcheck_sdt_sc001, mcheck_sdt_sc007_a/b: The robustness of the data flow analysis has been significantly improved.
- mcheck_misra_slsf_013_a: The check parameter “MISRA_SL_SF.misra_slsf_013_a.MinimumInputNumberOfMultiport” has been removed. Now the check analyzes each Multiport Switch block and gives a review finding if the number of its switch inputs equals one.(#6522)
- Charts in linked subsystems may have caused failed model compilation or non-identification of TargetLink models. This has been fixed. In addition, data flow analysis was improved.
- mcheck_ds_0028: The check gave a failed finding for the Matrix Concatenate block, although it was contained in the check parameter “dSPACE.checkds0028.AllowedBlocks_4”. This issue has been fixed. (#7319)
- mcheck_ds_0041: The check gave a failed finding for the Matrix Concatenate block, although it was not contained in the check parameter “dSPACE.checkds0041.ProhibitedBlocks”. This issue has been fixed. (#7319)
- mcheck_sdt_sc004_c: The check aborted while evaluating the range of a multidimensional signal going through a Gain block. This issue has been fixed. (#7643)
- mcheck_misra_slsf_009_d: The parameter ‘followlinks’ was used incorrectly so that library blocks were ignored independently of the MXAM setting of ‘followlinks’. Now, library blocks are evaluated correctly. (#7668)
- mcheck_ds_0100: Specifying a vector, a cell array or a string list for the ‘Number of inputs’ parameter of a Mux block may have caused aborts. This has been fixed. (#7725)
- mcheck_misra_tl_7_7: The check aborted when an empty .c file was specified in the Custom Code block. This has been fixed and the check now gives a passed finding. (#7818)
- mcheck_misra_slsf_008_b: Using data type casts in block properties, such as ‘uint32(…)’, may have caused an internal processing error. This issue has been fixed. (#7325)
- mcheck_misra_slsf_006_b: The check gave false negative findings because of an incorrect analysis of some TargetLink blocks. This has been fixed. (#7589)