The Behavior-Interaction-Priority (BIP) framework -rooted in rigorous semantics -allows the construction of systems that are correct-by-design. BIP has been effectively used for the construction and analysis of large systems such as robot controllers and satellite on-board software. Nevertheless, the specification of BIP models is done in a purely textual manner without any code editor support. To facilitate the specification of BIP models, we present DesignBIP, a web-based, collaborative, version-controlled design studio. To promote model scaling and reusability of BIP models, we use a graphical language for modeling parameterized BIP models with rigorous semantics. We present the various services provided by the design studio, including model editors, code editors, consistency checking mechanisms, code generators, and integration with the JavaBIP tool-set.
DesignBIP
BIP Design Studio13 Design Studio Metamodel Model/Code Editors, Visualizations Consistency, Conformance Checking Model Transformation, Code Generation Integrated Tools Model repositories 1 2 3 4 Figure 1: Main design studio components and work-flow integrated, into the design studio, third party tools. The output of the tools is then collected and sent back to the model editors (step 4) for visualization of analysis or execution results.We present the DesignBIP studio for modeling and generating systems with the BIP [2] framework. BIP comprises a language with rigorous operational semantics and a dedicated tool-set including code generators, run-time support tools, i.e., BIP engines, and verification tools [5,7]. Depending on the application domain, BIP offers several compilation chains, targeting different execution platforms and programming languages such as C++ [2] Java [8] Haskell, and Scala [14].The specification of models in the BIP framework is done by using the BIP language in a textual manner [1] without offering any dedicated code editors. Thus, developing large systems with the BIP toolset can be challenging and error prone. In DesignBIP we have opted for a graphical language to enhance readability and easiness of expression. DesignBIP offers a complete modeling solution, in which we have integrated the tools offered by JavaBIP, the Java-based implementation of BIP [8]. Relying on the observation that systems are usually built from multiple instances of the same component type, we propose a parameterized graphical language for BIP that enhances scalability and reduces the model size.DesignBIP is a web-based, collaborative, version controlled design studio based on WebGME [21]. DesignBIP allows real-time collaboration between multiple developers. Project changes are committed and versioned, which enables branching, merging and viewing the history of a project. DesignBIP 1 is easily accessed through a web interface and is open source 2 . Our contributions are as follows:• We extend architecture diagrams [22], a graphical parameterized language, to accommodate the specification of BIP parameterized models. • We prove a set of necessary and s...