Model-driven Engineering for Machine Learning Components: A Systematic Literature Review

Context: Machine Learning (ML) has become widely adopted as a component in many modern software applications. Due to the large volumes of data available, organizations want to increasingly leverage their data to extract meaningful insights and enhance business profitability. ML components enable predictive capabilities, anomaly detection, recommendation, accurate image and text processing, and informed decision-making. However, developing systems with ML components is not trivial; it requires time, effort, knowledge, and expertise in ML, data processing, and software engineering. There have been several studies on the use of model-driven engineering (MDE) techniques to address these challenges when developing traditional software and cyber-physical systems. Recently, there has been a growing interest in applying MDE for systems with ML components. Objective: The goal of this study is to further explore the promising intersection of MDE with ML (MDE4ML) through a systematic literature review (SLR). Through this SLR, we wanted to analyze existing studies, including their motivations, MDE solutions, evaluation techniques, key benefits and limitations. Results: We analyzed selected studies with respect to several areas of interest and identified the following: 1) the key motivations behind using MDE4ML; 2) a variety of MDE solutions applied, such as modeling languages, model transformations, tool support, targeted ML aspects, contributions and more; 3) the evaluation techniques and metrics used; and 4) the limitations and directions for future work. We also discuss the gaps in existing literature and provide recommendations for future research. Conclusion: This SLR highlights current trends, gaps and future research directions in the field of MDE4ML, benefiting both researchers and practitioners

[1]  John C. Grundy,et al.  Advancing Requirements Engineering through Generative AI: Assessing the Role of LLMs , 2023, ArXiv.

[2]  S. Rinderle-Ma,et al.  Bridging MDE and AI: A Systematic Review of Domain-Specific Languages and Model-Driven Practices in AI Software Systems Engineering , 2023, 2307.04599.

[3]  N. Guelfi,et al.  SEMKIS-DSL: A Domain-Specific Language to Support Requirements Engineering of Datasets and Neural Network Recognition , 2023, Inf..

[4]  John C. Grundy,et al.  Requirements Engineering for Artificial Intelligence Systems: A Systematic Mapping Study , 2022, Inf. Softw. Technol..

[5]  Evgeny Kusmenko,et al.  Dynamic data management for continuous retraining , 2022, MoDELS.

[6]  D. Kolovos,et al.  Towards model-based bias mitigation in machine learning , 2022, MoDELS.

[7]  Muhammad Waseem Anwar,et al.  MoDLF: a model-driven deep learning framework for autonomous vehicle perception (AVP) , 2022, MoDELS.

[8]  Jordi Cabot,et al.  A domain-specific language for describing machine learning datasets , 2022, J. Comput. Lang..

[9]  Li Li,et al.  Developing Mobile Applications Via Model Driven Development: A Systematic Literature Review , 2021, Inf. Softw. Technol..

[10]  Bernhard Rumpe,et al.  Artifact and reference models for generative machine learning frameworks and build systems , 2021, GPCE.

[11]  Dimitrios S. Kolovos,et al.  A Model-Driven Engineering Approach for Monitoring Machine Learning Models , 2021, 2021 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[12]  Philip K. McKinley,et al.  MoDALAS: Model-Driven Assurance for Learning-Enabled Autonomous Systems , 2021, 2021 ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[13]  Weng Marc Lim,et al.  Artificial intelligence and machine learning in finance: Identifying foundations, themes, and research clusters from bibliometric analysis , 2021, Journal of Behavioral and Experimental Finance.

[14]  E. Guerra,et al.  Recommender systems in model-driven engineering , 2021, Software and Systems Modeling.

[15]  Suzanne A. Pierce,et al.  Artificial Intelligence for Modeling Complex Systems: Taming the Complexity of Expert Models to Improve Decision Making , 2021, ACM Trans. Interact. Intell. Syst..

[16]  A. Badii,et al.  Supporting AI Engineering on the IoT Edge through Model-Driven TinyML , 2021, 2022 IEEE 46th Annual Computers, Software, and Applications Conference (COMPSAC).

[17]  Liming Zhu,et al.  AI and Ethics - Operationalising Responsible AI , 2021, ArXiv.

[18]  John Grundy,et al.  The Effects of Human Aspects on the Requirements Engineering Process: A Systematic Literature Review , 2021, IEEE Transactions on Software Engineering.

[19]  Huu-Thanh Duong,et al.  A review: preprocessing techniques and data augmentation for sentiment analysis , 2021, Computational Social Networks.

[20]  Alexander D'Amour,et al.  Underspecification Presents Challenges for Credibility in Modern Machine Learning , 2020, J. Mach. Learn. Res..

[21]  Gunter Mussbacher,et al.  Towards a better understanding of interactions with a domain modeling assistant , 2020, MoDELS.

[22]  Jordi Cabot,et al.  Positioning of the low-code movement within the field of model-driven engineering , 2020, MoDELS.

[23]  John Hosking,et al.  An end-to-end model-based approach to support big data analytics development , 2020, J. Comput. Lang..

[24]  In Lee,et al.  Machine learning for enterprises: Applications, algorithm selection, and challenges , 2020 .

[25]  Richard F. Paige,et al.  Grand challenges in model-driven engineering: an analysis of the state of the research , 2020, Software and Systems Modeling.

[26]  Shunxing Bao,et al.  STRATUM: A BigData-as-a-Service for Lifecycle Management of IoT Analytics Applications , 2019, 2019 IEEE International Conference on Big Data (Big Data).

[27]  G. Antoniol,et al.  The Road Ahead , 2019, Choosing for Changing Selves.

[28]  Mireille Blay-Fornarino,et al.  When DevOps Meets Meta-Learning: A Portfolio to Rule them all , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[29]  Evgeny Kusmenko,et al.  Modeling and Training of Neural Processing Systems , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems (MODELS).

[30]  Evgeny Kusmenko,et al.  Modeling Deep Reinforcement Learning Based Architectures for Cyber-Physical Systems , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[31]  Gunter Mussbacher,et al.  Teaching Modelling Literacy: An Artificial Intelligence Approach , 2019, 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C).

[32]  Ivica Crnkovic,et al.  A Taxonomy of Software Engineering Challenges for Machine Learning Systems: An Empirical Investigation , 2019, XP.

[33]  Sotiris Karabetsos,et al.  A Review of Machine Learning and IoT in Smart Transportation , 2019, Future Internet.

[34]  Hirotoshi Yasuoka,et al.  Engineering problems in machine learning systems , 2019, Machine Learning.

[35]  Xiaobing Huang,et al.  Design and implementation of DeepDSL: A DSL for deep learning , 2018, Comput. Lang. Syst. Struct..

[36]  R. Ranganath,et al.  A Review of Challenges and Opportunities in Machine Learning for Health. , 2018, AMIA Joint Summits on Translational Science proceedings. AMIA Joint Summits on Translational Science.

[37]  Bran Selic,et al.  Execution of UML models: a systematic review of research and practice , 2018, Software & Systems Modeling.

[38]  I. Kohane,et al.  Big Data and Machine Learning in Health Care. , 2018, JAMA.

[39]  Farooque Azam,et al.  A Systematic Review of Big Data Analytics Using Model Driven Engineering , 2017, ICCBDC.

[40]  Paulo S. C. Alencar,et al.  A Preliminary Survey on Domain-Specific Languages for Machine Learning in Big Data , 2016, 2016 IEEE International Conference on Software Science, Technology and Engineering (SWSTE).

[41]  Paulo S. C. Alencar,et al.  A Survey on Domain-Specific Languages for Machine Learning in Big Data , 2016, ArXiv.

[42]  Claes Wohlin,et al.  Guidelines for snowballing in systematic literature studies and a replication in software engineering , 2014, EASE '14.

[43]  Cheng Soon Ong,et al.  Open science in machine learning , 2014, ArXiv.

[44]  Alin Stefanescu,et al.  An empirical study of the state of the practice and acceptance of model-driven engineering in four industrial cases , 2013, Empirical Software Engineering.

[45]  Mark Rouncefield,et al.  Empirical assessment of MDE in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[46]  Miguel A. Fernández,et al.  MDE Adoption in Industry: Challenges and Success Criteria , 2009, MoDELS.

[47]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[48]  Parastoo Mohagheghi,et al.  Where Is the Proof? - A Review of Experiences from Applying MDE in Industry , 2008, ECMDA-FA.

[49]  Darryl Charles,et al.  Machine learning in digital games: a survey , 2008, Artificial Intelligence Review.

[50]  Juha-Pekka Tolvanen,et al.  Domain-Specific Modeling: Enabling Full Code Generation , 2008 .

[51]  Jean-Marc Jézéquel,et al.  Model-driven engineering for software migration in a large industrial context , 2007, MODELS'07.

[52]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[53]  M. Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[54]  Hans-Erik Eriksson,et al.  UML 2 Toolkit , 2003 .

[55]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[56]  Jeffrey J. P. Tsai,et al.  Machine Learning and Software Engineering , 2002, 14th IEEE International Conference on Tools with Artificial Intelligence, 2002. (ICTAI 2002). Proceedings..

[57]  James L. Peterson,et al.  Petri Nets , 1977, CSUR.

[58]  Paulis F. Barzdins,et al.  Metamodel Specialisation based Tool Extension , 2022, Balt. J. Mod. Comput..

[59]  Zhanwei Wu,et al.  How Can No/Low Code Platforms Help End-Users Develop ML Applications? - A Systematic Review , 2022, HCI.

[60]  Matthew Stephan,et al.  Realization of a Machine Learning Domain Specific Modeling Language: A Baseball Analytics Case Study , 2019, MODELSWARD.

[61]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2012, Synthesis Lectures on Software Engineering.

[62]  D. Meslati,et al.  MODELING BIO INSPIRED SYSTEMS: TOWARD A NEW VIEW BASED ON MDA , 2012 .

[63]  James Bennett,et al.  The Netflix Prize , 2007 .

[64]  Douglas C. Schmidt,et al.  Model-Driven Engineering , 2006 .

[65]  Rüdiger Wirth,et al.  CRISP-DM: Towards a Standard Process Model for Data Mining , 2000 .

[66]  Magnus C. Ohlsson,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[67]  Dave R. Stikkolorum,et al.  The Relevance of Model-Driven Engineering Thirty Years from Now , 2015 .