Efficient Model-Driven Prototyping for Edge Analytics
Abstract
:1. Introduction
2. Related Work
2.1. General Purpose Low-Code Platforms
2.2. Model-Driven Development
2.3. DIME
- Data Model: To describe the database layer.
- Process Model: This model type defines the business logic of the application. It uses control and data flow together to give a detailed view of the described logic.
- UI Model: A WYSIWYG editor for the web user interface.
2.4. Pyrus
2.5. Node-RED
2.6. Embedded Hardware Platforms
3. The Software Platforms
3.1. The Two LC/NC Integrated Modeling Environments
3.2. The External Software Platforms and Applications
3.3. The Native SIBs and SIBs Palettes
4. The Use Case: Stable Storage Facility
4.1. The SSF IoT Architecture
4.2. Data Acquisition Process Model
4.3. The SSF Control Application in DIME
4.4. The Reporting Dashboards in DIME and Pyrus
5. Results and Discussion
5.1. Platform Extension through New DSLs
5.2. Benchmarking Code Generation
5.3. Effects on Reuse
6. Conclusions and Future Work
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
DSL | Domain Specific Language |
DTP | Digital Thread Platform |
CPS | Cyber-Physical Systems |
IoT | Internet of Things |
JSON | Java Script Object Notation |
MDD | Model Driven Development |
SIB | Service Independent Building Block |
SSF | Stable Storage Facility |
XMDD | eXtreme Model-Driven Design |
References
- Irmak, E.; Bozdal, M. Internet of Things (IoT): The Most Up-To-Date Challenges, Architectures, Emerging Trends and Potential Opportunities. Int. J. Comput. Appl. 2017, 975, 8887. [Google Scholar] [CrossRef]
- Margaria, T.; Chaudhary, H.A.A.; Guevara, I.; Ryan, S.; Schieweck, A. The interoperability challenge: Building a model-driven digital thread platform for CPS. In Proceedings of the International Symposium on Leveraging Applications of Formal Methods, Rhodes, Greece, 17–29 October 2021; Volume 13036, pp. 393–413. [Google Scholar]
- Siemens. Creating a Digital Thread Using Low-Code to Enable Digital Twins. Available online: https://www.plm.automation.siemens.com/media/global/en/CIMdata%20Commentary-%20Creating%20a%20Digital%20Thread%20Using%20Low-Code%20to%20Enable%20Digital%20Twins%20%281%29_tcm27-109430.pdf (accessed on 3 August 2023).
- Siemens. Low-Code Platforms Assist in the Creation and Maintenance of Digital Threads and Digital Twins. Available online: https://resources.sw.siemens.com/en-US/article-mendix-low-code-platforms-assist-digital-thread-digital-twin (accessed on 3 August 2023).
- Boßelmann, S.; Frohme, M.; Kopetzki, D.; Lybecait, M.; Naujokat, S.; Neubauer, J.; Wirkner, D.; Zweihoff, P.; Steffen, B. DIME: A Programming-Less Modeling Environment for Web Applications. In Proceedings of the ISoLA 2016, Corfu, Greece, 10–14 October 2016; Margaria, T., Steffen, B., Eds.; Lecture Notes in Computer Science. Springer International Publishing: Cham, Switzerland, 2016; Volume 9953, pp. 809–832. [Google Scholar]
- Zweihoff, P.; Steffen, B. Pyrus: An online modeling environment for no-code data-analytics service composition. In Proceedings of the ISoLA 2021, Rhodes, Greece, 17–29 October 2021; Springer: Berlin/Heidelberg, Germany, 2021; Volume 13036, pp. 18–40. [Google Scholar]
- Statista. How Much Faster is Low-Code Development Comparing to Traditional Development? Available online: https://www.statista.com/statistics/1254662/low-code-development-speed-compared-traditional-it/ (accessed on 3 November 2022).
- Statista. Low-Code Development Global Platform Market Revenue. Available online: https://www.statista.com/statistics/1226179/low-code-development-platform-market-revenue-global/ (accessed on 3 May 2022).
- Tines-No-Code Automation for Security Teams. Available online: https://www.tines.com/lessons/storyboard/ (accessed on 3 May 2022).
- PTC. Thingworx. Available online: https://www.ptc.com/en/products/thingworx (accessed on 3 May 2022).
- AWS. Amazon Web Services IoT. Available online: https://aws.amazon.com/iot/ (accessed on 1 June 2022).
- Microsoft. Azure IoT. Available online: https://www.microsoft.com/ (accessed on 3 May 2022).
- H2o.ai. Democratizing Generative AI. Available online: https://www.h2o.ai/ (accessed on 3 May 2022).
- Moin, A.; Challenger, M.; Badii, A.; Günnemann, S. Supporting AI engineering on the IoT edge through model-driven TinyML. In Proceedings of the 2022 IEEE 46th Annual Computers, Software, and Applications Conference (COMPSAC), Los Alamitos, CA, USA, 27 June–1 July 2022; pp. 884–893. [Google Scholar]
- Iyenghar, P.; Pulvermueller, E. A model-driven workflow for energy-aware scheduling analysis of IoT-enabled use cases. IEEE Internet Things J. 2018, 5, 4914–4925. [Google Scholar] [CrossRef]
- Steinberg, D.; Budinsky, F.; Merks, E.; Paternostro, M. EMF: Eclipse Modeling Framework; Pearson Education: Harlow, UK, 2008. [Google Scholar]
- Jörges, S. Construction and Evolution of Code Generators: A Model-Driven and Service-Oriented Approach; Springer: Berlin/Heidelberg, Germany, 2013; Volume 7747. [Google Scholar]
- Barriga, J.A.; Clemente, P.J.; Sosa-Sánchez, E.; Prieto, Á.E. SimulateIoT: Domain Specific Language to design, code generation and execute IoT simulation environments. IEEE Access 2021, 9, 92531–92552. [Google Scholar] [CrossRef]
- Gamboa, M.; Syriani, E. Improving user productivity in modeling tools by explicitly modeling workflows. Softw. Syst. Model. 2019, 18, 2441–2463. [Google Scholar] [CrossRef]
- Syriani, E.; Vangheluwe, H.; Mannadiar, R.; Hansen, C.; Van Mierlo, S.; Ergin, H. AToMPM: A web-based modeling environment. In Proceedings of the Joint Proceedings of MODELS’13 Invited Talks, Demonstration Session, Poster Session, and ACM Student Research Competition co-Located with the 16th International Conference on Model Driven Engineering Languages and Systems (MODELS 2013), Miami, FL, USA, 29 September–4 October 2013; pp. 21–25. [Google Scholar]
- Heineman, G.T.; Councill, W.T. Component-based software engineering. Putt. Pieces Together-Addison-Westley 2001, 5, 1. [Google Scholar]
- Crnkovic, I.; Sentilles, S.; Vulgarakis, A.; Chaudron, M.R. A classification framework for software component models. IEEE Trans. Softw. Eng. 2010, 37, 593–615. [Google Scholar] [CrossRef]
- Becker, S.; Koziolek, H.; Reussner, R. Model-based performance prediction with the palladio component model. In Proceedings of the 6th International Workshop on Software and Performance, Buenes Aires, Argentina, 5–8 February 2007; pp. 54–65. [Google Scholar]
- Contieri, A.C.; Correia, G.G.; Colanzi, T.E.; Gimenes, I.M.; Oliveira, E.A.; Ferrari, S.; Masiero, P.C.; Garcia, A.F. Extending UML components to develop software product-line architectures: Lessons learned. In Proceedings of the Software Architecture: 5th European Conference (ECSA 2011), Essen, Germany, 13–16 September 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 130–138. [Google Scholar]
- Sentilles, S.; Vulgarakis, A.; Bureš, T.; Carlson, J.; Crnković, I. A component model for control-intensive distributed embedded systems. In Proceedings of the International Symposium on Component-Based Software Engineering, Karlsruhe, Germany, 14–17 October 2008; Springer: Berlin/Heidelberg, Germany, 2008; pp. 310–317. [Google Scholar]
- Seceleanu, C.; Vulgarakis, A.; Pettersson, P. Remes: A resource model for embedded systems. In Proceedings of the 2009 14th IEEE International Conference on Engineering of Complex Computer Systems, Potsdam, Germany, 2–4 June 2009; pp. 84–94. [Google Scholar]
- OutSystems: High-Performance Low-Code for App Development. Available online: https://www.outsystems.com/ (accessed on 3 May 2022).
- Mendix: Low-Code Application Development Platform. Available online: https://www.mendix.com/ (accessed on 3 May 2022).
- Appian Platform for Process Automation. Available online: https://appian.com/ (accessed on 3 May 2022).
- Naujokat, S.; Lybecait, M.; Kopetzki, D.; Steffen, B. CINCO: A simplicity-driven approach to full generation of domain-specific graphical modeling tools. Int. J. Softw. Tools Technol. Transf. 2018, 20, 1–28. [Google Scholar] [CrossRef]
- Nikolov, N.; Dessalk, Y.D.; Khan, A.Q.; Soylu, A.; Matskin, M.; Payberah, A.H.; Roman, D. Conceptualization and scalable execution of big data workflows using domain-specific languages and software containers. Internet Things 2021, 16, 100440. [Google Scholar] [CrossRef]
- Boßelmann, S. Evolution of Ecosystems for Language-Driven Engineering. Ph.D. Thesis, Technical University Dortmund, Dortmund, Germany, 2023. Available online: https://eldorado.tu-dortmund.de/handle/2003/41375 (accessed on 3 May 2022).
- Margaria, T.; Steffen, B. Business process modeling in the jABC: The one-thing approach. In Handbook of Research on Business Process Modeling; IGI Global: Hershey, PA, USA, 2009; pp. 1–26. [Google Scholar]
- Margaria, T.; Steffen, B. eXtreme Model-Driven Development (XMDD) Technologies as a Hands-On Approach to Software Development Without Coding. Encycl. Educ. Inf. Technol. 2020, 732–750. [Google Scholar] [CrossRef]
- Node-RED. Low-Code Programming for Event-Driven Applications. Available online: https://nodered.org/ (accessed on 3 May 2022).
- Jung, G.; Hong, Y.; Hong, S.; Jang, D.; Jeong, Y.; Shin, W.; Park, J.; Kim, D.; Jeong, C.B.; Kim, D.U.; et al. A low-power embedded poly-Si micro-heater for gas sensor platform based on a FET transducer and its application for NO2 sensing. Sens. Actuators Chem. 2021, 334, 129642. [Google Scholar] [CrossRef]
- Shadrin, D.; Menshchikov, A.; Ermilov, D.; Somov, A. Designing future precision agriculture: Detection of seeds germination using artificial intelligence on a low-power embedded system. IEEE Sens. J. 2019, 19, 11573–11582. [Google Scholar] [CrossRef]
- Karray, F.; Jmal, M.W.; Garcia-Ortiz, A.; Abid, M.A.A.M. A comprehensive survey on wireless sensor node hardware platforms. Comput. Netw. 2018, 144, 89–110. [Google Scholar] [CrossRef]
- Foundry, E. The Preferred Edge IoT Plug and Play Ecosystem-Eabled Open Source Software Platform. Available online: https://www.edgexfoundry.org/ (accessed on 3 May 2022).
- John, J.; Ghosal, A.; Margaria, T.; Pesch, D. DSLs and Middleware Platforms in a Model-Driven Development Approach for Secure Predictive Maintenance Systems in Smart Factories. In Proceedings of the ISoLA 2021, Rhodes, Greece, 17–29 October 2021; Lecture Notes in Computer Science. Volume 13036, pp. 146–161. [Google Scholar]
- John, J.; Ghosal, A.; Margaria, T.; Pesch, D. DSLs for Model Driven Development of Secure Interoperable Automation Systems with EdgeX Foundry. In Proceedings of the 2021 Forum on Specification & Design Languages (FDL), Antibes, France, 8–10 September 2021; pp. 1–8. [Google Scholar]
- MongoDB Atlas Database. Multi-Cloud Database Service. Available online: https://www.mongodb.com/atlas/database (accessed on 3 May 2022).
- R. The R Project for Statistical Computing. Available online: https://www.r-project.org/ (accessed on 3 March 2022).
- Docker Inc. Docker. Available online: https://www.docker.com/ (accessed on 3 May 2022).
- Chaudhary, H.A.A.; Guevara, I.; John, J.; Singh, A.; Margaria, T.; Pesch, D. Low-code internet of things application development for edge analytics. In Proceedings of the IFIP International Internet of Things Conference, Amsterdam, The Netherlands, 27–28 October 2022; pp. 293–312. [Google Scholar]
- Chaudhary, H.A.A.; Margaria, T. DSL-based interoperability and integration in the smart manufacturing digital thread. Electron. Commun. EASST 2022, 81. [Google Scholar] [CrossRef]
- Margaria, T.; Floyd, B.D.; Steffen, B. IT simply works: Simplicity and embedded systems design. In Proceedings of the 2011 IEEE 35th Annual Computer Software and Applications Conference Workshops, Munich, Germany, 18–22 July 2011; pp. 194–199. [Google Scholar]
- Margaria, T.; Steffen, B. Lightweight coarse-grained coordination: A scalable system-level approach. Int. J. Softw. Tools Technol. Transf. 2004, 5, 107–123. [Google Scholar] [CrossRef]
- Steffen, B.; Margaria, T.; Classen, A. Heterogeneous analysis and verification for distributed systems. Softw. Concepts Tools 1996, 17, 13–25. [Google Scholar]
- Bakera, M.; Margaria, T.; Renner, C.D.; Steffen, B. Tool-supported enhancement of diagnosis in model-driven verification. Innov. Syst. Softw. Eng. 2009, 5, 211–228. [Google Scholar] [CrossRef]
- Lamprecht, A.L.; Naujokat, S.; Margaria, T.; Steffen, B. Synthesis-based loose programming. In Proceedings of the 2010 Seventh International Conference on the Quality of Information and Communications Technology, Porto, Portugal, 29 September–2 October 2010; pp. 262–267. [Google Scholar]
- Niese, O.; Steffen, B.; Margaria, T.; Hagerer, A.; Brune, G.; Ide, H.D. Library-based design and consistency checking of system-level industrial test cases. In Proceedings of the International Conference on Fundamental Approaches to Software Engineering, Genova, Italy, 2–6 April 2001; pp. 233–248. [Google Scholar]
- Tegeler, T.; Teumert, S.; Schürmann, J.; Bainczyk, A.; Busch, D.; Steffen, B. An introduction to graphical modeling of CI/CD workflows with rig. In Proceedings of the Leveraging Applications of Formal Methods, Verification and Validation: 10th International Symposium on Leveraging Applications of Formal Methods (ISoLA 2021), Rhodes, Greece, 17–29 October 2021; pp. 3–17. [Google Scholar]
- Margaria, T.; Steffen, B. Continuous model-driven engineering. Computer 2009, 42, 106–109. [Google Scholar] [CrossRef]
Predictive Maintenance | Stable Storage Facility | |||||
Dart | Java | HTML | Dart | Java | HTML | |
Total lines of code generated | 11,250 | 11,096 | 943 | 12,037 | 10,889 | 1006 |
Total lines of code implemented | 1517 | 1533 | 190 | 2304 | 1326 | 253 |
Percentage of code implemented manually | 13.48% | 13.82% | 20.15% | 19.14% | 12.18% | 25.15% |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Chaudhary, H.A.A.; Guevara, I.; Singh, A.; Schieweck, A.; John, J.; Margaria, T.; Pesch, D. Efficient Model-Driven Prototyping for Edge Analytics. Electronics 2023, 12, 3881. https://doi.org/10.3390/electronics12183881
Chaudhary HAA, Guevara I, Singh A, Schieweck A, John J, Margaria T, Pesch D. Efficient Model-Driven Prototyping for Edge Analytics. Electronics. 2023; 12(18):3881. https://doi.org/10.3390/electronics12183881
Chicago/Turabian StyleChaudhary, Hafiz Ahmad Awais, Ivan Guevara, Amandeep Singh, Alexander Schieweck, Jobish John, Tiziana Margaria, and Dirk Pesch. 2023. "Efficient Model-Driven Prototyping for Edge Analytics" Electronics 12, no. 18: 3881. https://doi.org/10.3390/electronics12183881
APA StyleChaudhary, H. A. A., Guevara, I., Singh, A., Schieweck, A., John, J., Margaria, T., & Pesch, D. (2023). Efficient Model-Driven Prototyping for Edge Analytics. Electronics, 12(18), 3881. https://doi.org/10.3390/electronics12183881