Refactoring of Simulink Diagrams via Composition of Transformation Steps
Quang Tran Minh, Benjamin Wilmes, Christian Dziobek · 2013
Abstract—Model-based design has been increasingly adopted by the industry, especially the automotive industry, for the development of embedded software. Today, Matlab/Simulink by The MathWorks is widely employed as a modeling tool in which embedded software is modeled as data flow diagrams consisting of blocks and signals. While refactoring has be-come an established technique for improving the structure of code in textual programming languages, refactoring Simulink diagrams is relatively unexplored. This paper introduces a technique for specifying and implementing refactoring oper-ations for Simulink diagrams by composing elementary and composite transformation steps. How the transformation steps can be leveraged to specify and implement complex refactoring operations is demonstrated based on the two refactoring examples Replace Goto/From With Explicit Signals and Merge Subsystems. Our prototypical implementation of a refactoring extension for Simulink is also briefly described. Keywords-Simulink; Refactoring; Transformation I.