Signature Tool

Version 3.3 (2.73 MB) by McSCert
The Signature Tool extracts the interface of a Simulink subsystem.
Updated 22 Jul 2020

Editor's Note: This file was selected as MATLAB Central Pick of the Week

The notion of subsystem is used in Simulink to represent systems inside systems in order to provide hierarchical modeling. A Simulink subsystem has inports (explicit links to the subsystem), and outports (explicit links from the subsystem). We view inports and outports as the explicit interface of the subsystem. However, there are hidden (implicit) data dependencies in Simulink’s subsystems. Hidden dependencies originate due to two Simulink data mechanisms: Data Store Memory/Read/Write and Goto/From blocks. The Signature Tool extracts the signature of a Simulink subsystem. A signature represents the interface of a Simulink subsystem, making the data flow into and out of the subsystem explicit. The tool identifies two useful signatures for a subsystem: strong signature and weak signature. The strong signature identifies the data mechanisms that are accessed by the subsystem or any of its children. The weak signature identifies the data mechanisms that a subsystem can access (those which are declared higher up in the hierarchy), but is not necessarily using. The Signature Tool can be used to either explicitly include the signatures in the model itself, or export the signatures into a text/tex/docx file.

• For instructions on installation and how to use the tool, please see the included user guide: Signature/doc/Signature_UserGuide.pdf.

• This tool relies on our Simulink Utility. Please download it here:

For more about the theoretical background on signatures and how they can be used, an interested reader is referred to:
[1] Marc Bender, Karen Laurin, Mark Lawford, Vera Pantelic, Alexandre Korobkine, Jeff Ong, Bennett Mackenzie, Monika Bialy, Steven Postma, “Signature required: Making Simulink data flow and interfaces explicit,” Science of Computer Programming, Elsevier, 2015, 113, Part 1, 29-50.

For more about the capabilities of the tool and how it can be used in model-based development with Simulink, see the two papers:
[2] Vera Pantelic, Steven Postma, Mark Lawford, Alexandre Korobkine, Bennett Mackenzie, Jeff Ong, Marc Bender, "A Toolset for Simulink: Improving Software Engineering Practices in Development with Simulink," In Proceedings of 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2015), SCITEPRESS, 2015, 50-61. DOI: (Best Paper Award)

[3] Vera Pantelic, Steven Postma, Mark Lawford, Monika Jaskolka, Bennett Mackenzie, Alexandre Korobkine, Marc Bender, Jeff Ong, Gordon Marks, Alan Wassyng, “Software engineering practices and Simulink: bridging the gap,” International Journal on Software Tools for Technology Transfer (STTT), 2017, 95–117. DOI:

Cite As

McSCert (2024). Signature Tool (, GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2017b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Verification, Validation, and Test in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

See release notes for this release on GitHub:


Fixed several bugs.

Fixed issues dealing with signature placement in the model.

- Updated the GUI to include more options
- Can generate the signature for only one subsystem, in addition to all
- Can generate the signature documentation as a Word document
Fixed tool name.
Formatting of the description.
Updating license.

- Added a new feature: Augment for Test Harness (see README for a detailed explanation)
- The tool now supports extraction of signatures to .tex files
- Data types have been added to signature’s data items

Slight modification of the example; corrected the extension of generated text files.

Fixed a documentation generation bug (the one with a data store GotoTag property).

Change the path issue; minor edit to the description.

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.