File Exchange

image thumbnail

Signature Tool

version 3.1 (1.06 MB) by

The Signature Tool extracts the interface of a Simulink subsystem.

5 Downloads

Updated

View License

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, see Signature_UserGuide.pdf in the source files.

For more about the theoretical background on signatures and how they can be used, an interested reader is referred to:
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:
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," Proceedings of 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2015), SCITEPRESS, 2015, 50-61. (Best Paper Award)

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, 1-23.

Comments and Ratings (0)

Updates

3.1

Fixed issues dealing with signature placement in the model.

3.0

Formatting of the description.

3.0

Fixed tool name.

3.0

Updating license.

3.0

- 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

2.0

- 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

1.3

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

1.2

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

1.1

Change the path issue; minor edit to the description.

MATLAB Release
MATLAB 9.2 (R2017a)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

src/

src/PositionUtil/

src/StrongSignature/

src/WeakSignature/