# Converging Telco-Grade Solutions 5G and beyond to Support Production in Industry 4.0
## 3 Modeling Approaches and Frameworks in the Field of Industrial IoT
### MDE-to-IoT Approaches in a Nutshell
#### 3.1.1 Fully-Fledged MDE Tools and Frameworks for IoT Papyrus  
Papyrus for IoT [27] is an Eclipse-based framework for managing heterogeneous IoT applications, development environments, devices, and communication technologies. Papyrus supports real-time models, which allow for run-time manipulation of the system's behavior in response to changes in the IoT system.  
The IoT industry is shifting away from centralized systems and toward a more distributed paradigm. Large systems with a centralized intelligence in charge of everything are being transformed into distributed systems. Individual parts in a distributed system have intelligence and can communicate with one another smoothly, so the system functions as a whole. The IEC61499 standard [28] defines function blocks that can be used to develop distributed control applications, as well as how these are interpreted and executed. Its functionality and dynamic reconfiguration support provide the necessary infrastructure for Industry 4.0 and industrial IoT applications. Many implementations [29] of the IEC61499 standard have appeared in the literature over the last decade. Eclipse 4 diac [30] is one of the most influential IEC61499 tools. In the following sections, we will look at Eclipse 4 diac as the primary representative of IEC61499. Based on the IEC61499 standard, Eclipse 4 diac is an open source framework for distributed industrial process measurement and control systems. For users, Eclipse 4 diac provides an IEC61499 compliant development environment, a runtime environment, and a function block library.  
Eclipse Vorto [31] provides an easy-to-use domain-specific language for describing IoT device capabilities. As an Information Model, this language can be used to describe the functionality of an IoT device. Vorto also offers the Vorto Repository, which is an open platform for sharing and managing device descriptions.  
FRASAD  
FRASAD (Framework for Sensor Application Development), a model-driven approach for improving the reusability and flexibility of sensor software systems, has been proposed in [32]. The system is described using a rule-based model and a Domain Specific Language (DSL) in this approach. The FRASAD tool includes a graphical user interface, code generation components, and supporting tools to assist developers in modeling, implementing, and testing an IoT system.  
ThingML  
ThingML [33; 34] is a framework that includes a modeling language, a set of tools, and a methodology. The language of ThingML combines well-proven UML-aligned software-modeling constructs (statecharts and components), an imperative platform-independent action language, and IoT-specific constructs. ThingML has several industrial applications, including [35; 36].  
IoTA-MD  
IoTA-MD [37] is a modeling tool that helps with the design and maintenance of complex IoT systems. IoTA-MD addresses IoT system development complexity issues from both vertical and horizontal perspectives. Handling quality attributes separately from the domain and information models addresses the horizontal issue. The vertical issue is addressed by designing system models with the appropriate abstraction level using Model-Driven Architecture (MDA) [38].  
AutoIoT  
AutoIoT [39] is a framework for developing IoT applications that is based on a user-driven MDE approach. AutoIoT allows users to model their IoT systems using a JSON description and then generates a ready-to-use IoT server-side application using internal model-to-model and model-to-text transformations.  
MagicDraw  
MagicDraw [40] is a popular modeling tool for business process, software, and system modeling. Several MDE approaches in the literature are based on the MagicDraw ecosystem. In [41], the authors introduce an abstract SysML profile for the Arrowhead System of Systems (SoS) design, which is implemented as a MagicDraw plugin, focusing on the relationship between MDE and IoT. The plugin allows you to create high-level functional models of the specific Arrowhead SoS application and then import them into the Arrowhead Management Tool.