Visualizations for Models

As of now, almost all of our C extensions and DSLs are (semi-)textual, because graphical notations will be supported by MPS only starting from 2013. However, for many abstractions, graphical representations are useful to gain an overview over their structure. Examples include module dependencies, the relationships between components and interfaces as well as among components, or state machines with their transitions and guard conditions.

We have been generating graphviz files for a long time. Users had to open an external viewer to look at the pictures. More recently, however, we have directly integrated a viewer into MPS. It is based on ZGRViewer. Click on the screenshot to see it in full size.

The viewer has three interesting features beyond the fact that it renders graphviz images. The first one is that the diagrams support zoom and pan, thanks to ZGRViewer. The second one is that a click on a node or an edge selects the underlying element in the MPS editor. And third, the tree view at the top of the viewer shows all graphviz files in a solution, so users can quickly find the relevant graphs.

One thought on “Visualizations for Models

  1. Pingback: mbeddr.core code is at github! «

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s