Studies in Systems, Decision and Control 295
Mostafa Al-Emran Khaled Shaalan
Aboul Ella Hassanien Editors
Recent Advances in Intelligent
Systems
and Smart
Applications
Studies in Systems, Decision and Control
Volume 295
Series Editor
Janusz Kacprzyk, Systems Research Institute, Polish Academy of Sciences, Warsaw, Poland
The series “Studies in Systems, Decision and Control”(SSDC) covers both new developments and advances, as well as the state of the art, in the various areas of broadly perceived systems, decision making and control–quickly, up to date and with a high quality. The intent is to cover the theory, applications, and perspectives on the state of the art and future developments relevant to systems, decision making, control, complex processes and related areas, as embedded in thefields of engineering, computer science, physics, economics, social and life sciences, as well as the paradigms and methodologies behind them. The series contains monographs, textbooks, lecture notes and edited volumes in systems, decision making and control spanning the areas of Cyber-Physical Systems, Autonomous Systems, Sensor Networks, Control Systems, Energy Systems, Automotive Systems, Biological Systems, Vehicular Networking and Connected Vehicles, Aerospace Systems, Automation, Manufacturing, Smart Grids, Nonlinear Systems, Power Systems, Robotics, Social Systems, Economic Systems and other. Of particular value to both the contributors and the readership are the short publication timeframe and the world-wide distribution and exposure which enable both a wide and rapid dissemination of research output.
** Indexing: The books of this series are submitted to ISI, SCOPUS, DBLP, Ulrichs, MathSciNet, Current Mathematical Publications, Mathematical Reviews, Zentralblatt Math: MetaPress and Springerlink.
More information about this series athttp://www.springer.com/series/13304
Mostafa Al-Emran
•Khaled Shaalan
•Aboul Ella Hassanien
Editors
Recent Advances
in Intelligent Systems and Smart Applications
123
Editors
Mostafa Al-Emran
Department of Information Technology Al Buraimi University College Al Buraimi, Oman
Khaled Shaalan
Faculty of Engineering and IT The British University in Dubai Dubai, United Arab Emirates Aboul Ella Hassanien
Faculty of Computers and Artificial Intelligence
Cairo University Giza, Egypt
ISSN 2198-4182 ISSN 2198-4190 (electronic) Studies in Systems, Decision and Control
ISBN 978-3-030-47410-2 ISBN 978-3-030-47411-9 (eBook) https://doi.org/10.1007/978-3-030-47411-9
©Springer Nature Switzerland AG 2021
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This Springer imprint is published by the registered company Springer Nature Switzerland AG The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
Thefield of intelligent systems and smart applications has extremely evolved with new trends during the last decade. Several practical and theoretical findings are growing enormously due to the increasing number of successful applications and new theories derived from numerous diverse issues. The applications of these trends have been applied to various domains, including education, travel and tourism, health care, among others. This book is dedicated to the intelligent systems and smart applications area in several ways. First, it aims to provide and highlight the current research trends in intelligent systems and smart applications. Second, it attempts to concentrate on the recent design, developments, and modifications of intelligent systems and smart applications. Third, it aims to provide a holistic view of the factors affecting the adoption, acceptance, or continued use of intelligent systems and smart applications. It is important to understand these issues in order to determine future needs and research directions. Fourth, this edited book aims to bring scientists, researchers, practitioners, and students from academia and industry to present the recent and ongoing research activities about the recent advances, techniques, and smart applications and to allow the exchange of new ideas and application experiences.
This book is intended to present the state of the art in research on intelligent systems, smart applications, and other related areas. The edited book was able to attract 60 submissions from different countries across the world. From the 60 submissions, we accepted 35 submissions, which represents an acceptance rate of 58.3%. The accepted papers were categorized underfive different themes, including information systems and software engineering, knowledge management, technol- ogy in education, emerging technologies, and social networks. Each submission is reviewed by at least two reviewers, who are considered specialized in the related submitted paper. The evaluation criteria include several issues, such as correctness, originality, technical strength, significance, quality of presentation, and interest and relevance to the book scope. The chapters of this book provide a collection of high-quality research works that address broad challenges in both theoretical and application aspects of intelligent systems and smart applications. The chapters of
v
this book are published in Studies in Systems, Decision and Control Series by Springer, which has a high SJR impact.
We acknowledge all those who contributed to the staging of this edited book.
We would also like to express our gratitude to the reviewers for their valuable feedback and suggestions. Without them, it would not be possible for us to maintain the high quality and the success of theRecent Advances in Intelligent Systems and Smart Applicationsedited book. Therefore, on the next page, we list the reviewers along with their affiliations as a recognition of their efforts.
Al Buraimi, Oman Mostafa Al-Emran
Dubai, United Arab Emirates Khaled Shaalan
Giza, Egypt April 2020
Aboul Ella Hassanien
vi Preface
List of Reviewers
Andrina Granić, University of Split, Croatia Garry Wei-Han Tan, Taylor’s University, Malaysia Gonçalo Marques, Universidade da Beira Interior, Portugal Hussam S. Alhadawi, Ton Duc Thang University, Vietnam Ibrahim Arpaci, Tokat Gaziosmanpasa University, Turkey Lee Voon Hsien, Universiti Tunku Abdul Rahman, Malaysia Leong Lai Ying, Universiti Tunku Abdul Rahman, Malaysia Luigi Benedicenti, University of New Brunswick, Canada Mohammed Al-Sharafi, Universiti Malaysia Pahang, Malaysia Mohammed N. Al-Kabi, Al Buraimi University College, Oman Mohanaad Shakir, Al Buraimi University College, Oman Mona Mohamed Zaki, The University of Manchester, UK Noor Al-Qaysi, Universiti Pendidikan Sultan Idris, Malaysia Reham Marzouk, Alexandria University, Egypt
Tariq Rahim Soomro, Institute of Business Management, Pakistan
Vitaliy Mezhuyev, FH JOANNEUM University of Applied Sciences, Austria
vii
Contents
Information Systems and Software Engineering
A Systematic Review of Metamodelling in Software Engineering. . . 3 Murni Fatehah, Vitaliy Mezhuyev, and Mostafa Al-Emran
A Systematic Review of the Technological Factors Affecting the Adoption of Advanced IT with Specific Emphasis on Building
Information Modeling . . . 29 Mohamed Ghayth Elghdban, Nurhidayah Binti Azmy,
Adnan Bin Zulkiple, and Mohammed A. Al-Sharafi
A Study on Software Testing Standard Using ISO/IEC/IEEE 29119-2:
2013 . . . 43 Cristiano Patrício, Rui Pinto, and Gonçalo Marques
Towards the Development of a Comprehensive Theoretical Model for Examining the Cloud Computing Adoption at the Organizational
Level . . . 63 Yousef A. M. Qasem, Rusli Abdullah, Yusmadi Yah, Rodziah Atan,
Mohammed A. Al-Sharafi, and Mostafa Al-Emran
Factors Affecting Online Shopping Intention Through Verified
Webpages: A Case Study from the Gulf Region. . . 75 Mohammed Alnaseri, MügeÖrs, Mustefa Sheker, Mohanaad Shakir,
and Ahmed KH. Muttar Knowledge Management
Critical Review of Knowledge Management in Healthcare. . . 99 Afrah Almansoori, Mohammed AlShamsi, Said A. Salloum,
and Khaled Shaalan
ix
Knowledge Sharing Challenges and Solutions Within Software
Development Team: A Systematic Review . . . 121 Orabi Habeh, Firas Thekrallah, Said A. Salloum, and Khaled Shaalan
The Role of Knowledge Management Processes for Enhancing
and Supporting Innovative Organizations: A Systematic Review. . . 143 Sufyan Areed, Said A. Salloum, and Khaled Shaalan
The Impact of Artificial Intelligence and Information Technologies on the Efficiency of Knowledge Management at Modern
Organizations: A Systematic Review . . . 163 Saeed Al Mansoori, Said A. Salloum, and Khaled Shaalan
Technology in Education
A Novel Approach for Predicting the Adoption of Smartwatches
Using Machine Learning Algorithms . . . 185 Ibrahim Arpaci, Mostafa Al-Emran, Mohammed A. Al-Sharafi,
and Khaled Shaalan
Vocabulary Improvement by Using Smart Mobile
Application—A Pilot Study . . . 197 Petra Poláková, Blanka Klímová, and Pavel Pražák
Examining the Acceptance of WhatsApp Stickers Through Machine
Learning Algorithms . . . 209 Rana A. Al-Maroof, Ibrahim Arpaci, Mostafa Al-Emran, Said A. Salloum,
and Khaled Shaalan
Exploring the Effects of Flipped Classroom Model Implementation
on EFL Learners’Self-confidence in English Speaking Performance. . . 223 Mohamad Yahya Abdullah, Supyan Hussin, Zahraa Mukhlif Hammad,
and Kemboja Ismail
Developing an Educational Framework for Using WhatsApp Based
on Social Constructivism Theory . . . 243 Noor Al-Qaysi, Norhisham Mohamad-Nordin, and Mostafa Al-Emran
Research Trends in Flipped Classroom: A Systematic Review. . . 253 Rana A. Al-Maroof and Mostafa Al-Emran
Perceptions and Barriers to the Adoption of Blended Learning
at a Research-Based University in the United Arab Emirates . . . 277 Rawy Thabet, Christopher Hill, and Eman Gaad
Applying a Flipped Approach Via Moodle: New Perspectives
for the Teaching of English Literature. . . 295 Emira Derbel
x Contents
An Integrated Model of Continuous Intention to Use of Google
Classroom . . . 311 Rana Saeed Al-Maroof and Said A. Salloum
A Game-Based Learning for Teaching Arabic Letters to Dyslexic
and Deaf Children . . . 337 Sahar A. EL_Rahman
Information Communication Technology Infrastructure in Sudanese
Governmental Universities. . . 363 Abdalla Eldow, Rawan A. Alsharida, Maytham Hammood,
Mohanaad Shakir, Sohail Iqbal Malik, Ahmed Kh. Muttar, and Kais A. Kadhim
Emerging Technologies
Internet of Things and Cyber Physical Systems: An Insight . . . 379 Charu Virmani and Anuradha Pillai
Web Services Security Using Semantic Technology . . . 403 Firoz Khan and Lakshmana Kumar Ramasamy
DistSNNMF: Solving Large-Scale Semantic Topic Model Problems
on HPC for Streaming Texts . . . 429 Fatma S. Gadelrab, Rowayda A. Sadek, and Mohamed H. Haggag
Predicting MIRA Patients’Performance Using Virtual Rehabilitation
Programme by Decision Tree Modelling . . . 451 Nurezayana Zainal, Ismail Ahmed Al-Qasem Al-Hadi, Safwan M. Ghaleb,
Hafiz Hussain, Waidah Ismail, and Ali Y. Aldailamy Segmentation of Images Using Watershed and MSER:
A State-of-the-Art Review . . . 463 M. Leena Silvoster and R. Mathusoothana S. Kumar
Block Chain Technology: The Future of Tourism . . . 481 Aashiek Cheriyan and S. Tamilarasi
Biomedical Corpora and Natural Language Processing on Clinical
Text in Languages Other Than English: A Systematic Review . . . 491 Mohamed AlShuweihi, Said A. Salloum, and Khaled Shaalan
A Proposed Context-Awareness Taxonomy for Multi-data Fusion
in Smart Environments: Types, Properties, and Challenges. . . 511 Doaa Mohey El-Din, Aboul Ella Hassanein, and Ehab E. Hassanien
Systematic Review on Fully Homomorphic Encryption Scheme
and Its Application. . . 537 Hana Yousuf, Michael Lahzi, Said A. Salloum, and Khaled Shaalan
Contents xi
Ridology: An Ontology Model for Exploring Human Behavior
Trajectories in Ridesharing Applications . . . 553 Heba M. Wagih and Hoda M. O. Mokhtar
Social Networks
Factors Affecting the Adoption of Social Media in Higher Education:
A Systematic Review of the Technology Acceptance Model . . . 571 Noor Al-Qaysi, Norhisham Mohamad-Nordin, and Mostafa Al-Emran
Online Social Network Analysis for Cybersecurity Awareness. . . 585 Mazen Juma and Khaled Shaalan
Mining Dubai Government Tweets to Analyze Citizens’
Engagement . . . 615 Zainab Alkashri, Omar Alqaryouti, Nur Siyam, and Khaled Shaalan
The Impact of WhatsApp on Employees in Higher
Education. . . 639 Jasiya Jabbar, Sohail Iqbal Malik, Ghaliya AlFarsi, and Ragad M. Tawafak
Effects of Facebook Personal News Sharing on Building Social Capital
in Jordanian Universities . . . 653 Mohammed Habes, Mahmoud Alghizzawi, Said A. Salloum,
and Chaker Mhamdi
xii Contents
Information Systems and Software
Engineering
A Systematic Review of Metamodelling in Software Engineering
Murni Fatehah, Vitaliy Mezhuyev, and Mostafa Al-Emran
Abstract Metamodelling has become a crucial technique to handle the complex- ity issues in the software development industry. This paper critically reviews and systematically classifies the recent metamodelling approaches to show their current status, limitations, and future trends. This systematic review retrieved and analyzed a total of 1157 research studies published on the topic of metamodelling. The retrieved studies were then critically examined to meet the inclusion and exclusion criteria, in which 69 studies were finally nominated for further critical analysis. The results showed that the main application domains of metamodelling are the cyber-physical and safety-critical systems development. Moreover, the majority of used approaches include metamodels formalization, adding spatial and time semantics, and consider- ing nonfunctional properties. Further, the main trends of metamodelling development include the support of complex systems, behavior modeling, and multilevel model- ing. The results of this systematic review would provide insights for scholars and software engineering practitioners looking into the state-of-the-art of metamodelling and assist them in improving their approaches.
Keywords Metamodelling
·
Software engineering·
Systematic reviewM. Fatehah
Faculty of Computing, Universiti Malaysia Pahang, Gambang, Malaysia e-mail:[email protected]
V. Mezhuyev
Institute of Industrial Management, FH JOANNEUM University of Applied Sciences, Werk-VI-Straße 46, 8605 Kapfenberg, Austria
e-mail:[email protected] M. Al-Emran (
B
)Department of Information Technology, Al Buraimi University College, Al Buraimi, Oman e-mail:[email protected]
© Springer Nature Switzerland AG 2021
M. Al-Emran et al. (eds.),Recent Advances in Intelligent Systems and Smart Applications, Studies in Systems, Decision and Control 295, https://doi.org/10.1007/978-3-030-47411-9_1
3
4 M. Fatehah et al.
1 Introduction
Extensive applications of software in daily life help users to save time, money, and energy. However, the development of modern tools requires more and more efforts from the side of software specialists and companies. Safety, security, interoperability are just a few issues that arise during the software development process. To address the complexity of modern software, the resources needed for its development should be multiplied.
Model-Driven Engineering (MDE) is an assuring practice in addressing soft- ware complexity with the application of Domain-Specific Modelling Languages (DSMLs), transformation engines, and code generators [1]. The MDE approach is used to increase productivity and simplify the software design by incorporating domain knowledge into the software development process. The domain model is a model that integrates both the properties and behavior of a specific domain. MDE allows making a domain knowledge explicit and formal.
In MDE, a model has become a crucial representation of an idea and rules of a software system. However, a model development itself needs a model design at higher levels of abstraction, which are called metamodels [2]. Metamodels help to define the constraints, rules, and the relationship between concepts of a domain model. There are several definitions of the metamodelling in scientific literature. One of the first definitions is that a metamodelling can be interpreted as a modeling process, which has a higher level of conceptualization and logic than a standard modeling process [3]. Metamodelling can be also defined as a modeling framework that consists of the metamodel, model and an instance of the model, where a metamodel defines the syntax of the modeling language [4]. Some articles define the metamodel as a standardized DSML for software modeling [5,6].
The application of metamodelling approach to domain-specific software engi- neering has become a common practice nowadays. Metamodeling has become a crucial technique in the process of software development [7]. Metamodelling is used to define DSMLs for software systems modeling, where the result of the metamod- elling (a DSML) is used to carry out the domain-specific properties and behavior [8].
Metamodelling defines rules and methods for creating metamodels as a part of orga- nized and systematic metamodels development process. Many studies are devoted to the development of new and application of existing metamodelling approaches.
However, to the best of our knowledge, there is no recent study devoted to the crit- ical analyses of the state-of-the-art of the metamodelling. To solve this problem, a systematic literature review (SLR) was conducted to summarize knowledge on the current applications and limitations of the metamodelling in software engineering.
By deriving evidence from the analyzed articles, this research is believed to assist software engineers in the development of new and existing metamodeling techniques.
A Systematic Review of Metamodelling in Software Engineering 5
2 Methodology
Prior research suggested that software engineering researchers should adopt the evidence-based practice in their study, which is known as Evidence-Based Software Engineering (EBSE) [9]. A systematic literature review (SLR) is the recommended approach to perform an EBSE practice. This study follows the SLR guidelines pro- posed by Kitchenham et al. [9], and other systematic reviews conducted in the past [10–13].
2.1 Research Questions and Motivation
Over the years, different metamodels, metamodelling approaches, and techniques have been proposed to find the best way of software design. Unlike the existing studies of metamodelling in software engineering (SE), the proposed research questions of the present study are:
RQ1. What are the purposes and application domains of current metamodelling research?
RQ2. What are the trends of the metamodelling development in software engineer- ing?
RQ3. What is the quality of publications that reflect the metamodelling research in SE domain?
RQ4. What are the limitations of the current studies and the prospects for future research?
The motivation for formulating RQ1 is to analyze the research purpose of the selected articles along with the application domain of the recent metamodelling approaches. RQ2 discusses the current trends of the metamodelling to define a general tendency for its development. To identify the quality of the current metamodelling research (RQ3), a quality assessment questionnaire was used. Finally, RQ4 discusses the limitations of the current metamodelling approaches in the SE domain, along with future improvements.
2.2 Search Process
An extensive search was conducted in the digital libraries of scientific literature to answer the formulated research questions. Journal articles, workshop articles, conference papers, and books were included in the search process. Firstly, five digital libraries were selected as platforms for the search process. These libraries are the ScienceDirect, IEEE Xplore, Clarivate Analytics (formerly known as ISI Web of Knowledge), ACM Digital Library, and SCOPUS. Next, the keywords for the search
6 M. Fatehah et al.
Table 1 Keywords definition
A B C
Metamodelling Meta-modelling Software engineering Metaprocess
modelling
Meta-process modelling Metadata
modelling
Meta-data modelling
process were defined. As the use of general keywords results in a large number of research papers, specific keywords were formulated with the aim of finding the most relevant studies. The search string was defined as “(A OR B) AND C”, where the keywords are shown in Table1.
The search process also takes into account a different spelling of the word “mod- elling” in British and American versions of English (i.e., the search query was repeated for “modelling” and “modeling”). The motivation to use the more general keyword “Software engineering” comparatively to the “Model Driven Engineering”
is to cover other possible applications of the metamodelling (e.g., validation, stan- dards compliance, and risk management). At the same time, MDE is considered as a part of SE, so the search string does not need to include both terms.
2.3 Inclusion and Exclusion Criteria
A total of 1157 papers were found as a result of the search process since specific keywords were applied. Hence, the inclusion criteria are crucial to find the papers relevant to this research. The importance of the keyword “software engineering”
can be illustrated in the example that metamodelling now has intensive applications in different domains such as spatial correlation modeling (also known as Kriging metamodel) [14]. The collected papers have undergone eight phases of selection through the use of inclusion and exclusion criteria, as outlined in Table2. The review process and the number of studies identified at each stage were undertaken according to the preferred reporting items for systematic reviews and meta-analysis (PRISMA), as depicted in Fig.1.
2.4 Data Collection
The relevant information was extracted from selected papers to facilitate the data anal- ysis process. The data were categorized into three different types. The explanation of extracted data and their category is shown in Table3.
A Systematic Review of Metamodelling in Software Engineering 7 Table 2 Inclusion and exclusion criteria
Phases Inclusion/exclusion criteria
1 Search engine results after executing a search query 2 Date of publication since 2012
3 Full-text access
4 Published in the English language 5 Published in software engineering venues 6 Not duplicated
7 Not summaries of workshop, panel, or tutorials
8 Title, abstract, or full text contains a search string with the predefined keywords in Table1
2.5 Search Strategy
Although the keywords used were specific, a number of irrelevant papers to the research topic were found. Hence, the exclusion criteria were applied to identify the relevant papers. Figure2and Table4show the distribution of papers retrieved by the application of search keywords and their distribution among the digital libraries after applying the exclusion criteria. It can be seen that the IEEE dominates the initial papers retrieved from the digital libraries with a percentage of 46% of the total collected papers. On the contrary, ACM Digital Library is the highest contributor to the final amount of papers, representing 31% of the total remaining papers. This result shows the effectiveness of applying the inclusion and exclusion criteria. A validity threat of misinterpretation of the primary studies was mitigated by the first two authors of this study. The candidate studies also went through multiple reviews.
The inclusion of each article into the final list of relevant primary studies was checked during the concluding agreement meeting among the authors.
3 Results and Discussion
The answers to the formulated research questions are discussed in this section.
RQ1. What are the purposes and application domains of current metamodelling research?
Although there were 1157 papers found published on the metamodelling since 2012, only 69 papers were found relevant to this study after applying the exclusion criteria.
Tables 5,6,7,8, 9 and10describe the research purpose of the selected papers.
The analysis of the studies shows that the scholars have focused on several common issues, including formalization, safety and security aspects of the systems, multilevel modeling, behavior modeling, and processes improvement.
8 M. Fatehah et al.
Fig. 1 PRISMA flowchart Table 3 Extracted
information Category Data
Basic information • Title
• Author(s) Publication information • Source
• Year
Research information • Application domain
• Research purpose
• Used metamodels and tools
• Industrial application
• Limitation of research
• Future work
A Systematic Review of Metamodelling in Software Engineering 9
46%
7% 24% 18% 15% 26%
13% 10% 10%
31%
0%
20%
40%
60%
80%
100%
DistribuƟon of papers iniƟally retrieved from the digital libraries
DistribuƟon of papers aŌer applicaƟon of exclusion criteria
IEEE ScienceDirect SCOPUS Clarivate AnalyƟcs ACM
Fig. 2 Distribution of the papers retrieved from digital libraries
Table 4 Distribution of initially retrieved and selected papers across digital libraries Digital library Number of papers initially
retrieved
Number of papers after applying the exclusion criteria
IEEE Xplore 529 12
ScienceDirect 78 10
SCOPUS 281 18
Clarivate analytics 152 8
ACM digital library 117 21
Total 1157 69
The advantages of adopting metamodelling in the software development lifecy- cle have been taken notice in software engineering. This claim is proved by the multiple metamodelling studies in various SE domains. Figure3illustrates the main application domains of metamodelling in several specific categories. This figure pro- vides evidence regarding the industry willingness to adapt metamodelling in software design, analyses, and validation. Cyber-physical systems development and the Inter- net of Things (IoT), together with modeling safety and security aspects of the systems, are recognized as the most important application domains of metamodelling. Figure4 demonstrates the types of systems involved in metamodelling applications.
RQ2. What are the trends of the metamodelling development in software engineering?
The current trends of metamodelling development can be divided into three parts, including the analysis of metamodeling improvement directions, studying the use of metamodels, and tools. Based on Tables5,6,7,8,9and10, the development of metamodelling approaches has various ways. However, the analysis shows that the most frequent approaches are the formalization of metamodelling approaches, conceptual modeling, and multilevel modeling. Researchers also concentrate on the
10 M. Fatehah et al.
Table 5 Research purpose description for the studies published since 2017
References Research purpose Approach/domain
[15] To develop a framework that supports the behavior and structural complexity of combat system simulation
Simulation and software validation
[16] To enhance the semantics of UML templates in OCL through the development of an aspectual template
Formalization, constraints, and software development [17] To simplify the development of
domain-specific modeling tools
Code generation and software development
[18] To develop the UML profile for modeling cognitive behavior
Development, cognitive behavior, and UML
[19] To develop a flexible tool-supported modeling approach that augments a sketching environment with
lightweight metamodelling capabilities
Development and sketching environment
[20] To transform the Open Platform Communications Unified Architecture (OPC UA) to the UML model
Transformation and development of UML profile
[4] To facilitate the simulation application in software development
Simulation and software development [5] To transform the machine learning
element to domain modeling
Transformation and Cyber-Physical Systems (CPS)
[6] To present the constraints validation model benchmark for a large graph model
Constraints, validation, and safety-critical systems [21] To create a metamodel for modeling a
smart environment through functional and data perspective
New metamodel, CPS, Internet of Things, and smart environments [22] To increase the modeler productivity
by task automation
Automation, workflows, and software development
[23] To adopt a dual deep modeling approach as conceptual data modeling
Formalization, multilevel modeling, and conceptual modeling
[24] To provide a uniform formalization on sub-model and sub metamodel through constraint properties
Formalization, constraints, and software development [25] To propose a theory for multi-level
conceptual modeling
Multi-level modeling and conceptual modeling
methods for metamodels reuse, adaption, and integration. Since the present study ana- lyzed both the basic research and applied research, Fig.5also presents the improve- ment of the syntax and semantics and the metamodel development inside an existing meta-metamodel (as a development of the new UML profiles).
Figure6summarizes the most used metamodelling tools since 2012. This figure shows that Eclipse Modelling Framework (EMF) is the most used tool. Table 11
A Systematic Review of Metamodelling in Software Engineering 11 Table 6 Research purpose description for the studies of 2016
References Research purpose Approach/domain
[26] To investigate the need for strict metamodelling practice
Formalization and safety-critical systems
[27] To develop and maintain modeling language and generator with test-driven development
Code generation and software validation
[28] To adopt Software Product Lines (SPL) at the metamodel level
Metamodel reuse and software development
[29] To define graphical syntax by designing metamodel to support graphical modeling language
New metamodel and software development
[30] To specify the safety compliance needs for a critical system
Standards compliance and safety-critical systems [31] To discover basic elements in the
modeling of software development
Multilevel modeling and software development
[32] To define an abstract framework for multilevel modeling
Multilevel modeling and conceptual modeling
[33] To support the security pattern specification and validation
Formalization, validation, and safety-critical systems [34] To develop the metamodel that merges
evidence, goal, and risk into software development
Risk management and safety-critical systems
[35] To create a modeling language that supports abstract syntax and dynamic semantic for the cyber-physical system
Formalization, CPS, and intelligent systems
[36] To create an interface for safety evaluation and fault simulation in an automotive system
Evaluation, validation, and safety-critical systems [37] To represent metadata in the buildings
using the proposed schema
Metadata, information systems, CPS, and intelligent houses
[38] To create a metamodel development method with different mathematical semantics
Formalization (spatial and timing semantics) and CPS
[39] To introduce behavior modeling for automatic discrete event system specification model
Formalization and behaviour modeling
[40] To investigate the capabilities of simulation metamodelling in handling decision support tool
Simulation and decision support
[41] To develop a modeling language for data description
New metamodel, metadata, and information systems
[42] To provide information on the simulation model characteristic and its limitations
Simulation and intelligent systems
12 M. Fatehah et al.
Table 7 Research purpose description for the studies of 2015
References Research purpose Approach/domain
[43] To understand the requirements and needs of modeling stakeholders
Requirement engineering and conceptual modeling [44] To prove the efficiency of simulation
metamodelling in healthcare analysis
Simulation and CPS (Healthcare) [45] To support runtime synchronization
between the model and program state
Synchronization and software development
[46] To evaluate the software modeling language elements
Metamodel evaluation and conceptual modeling
[47] To define the execution semantic in the concurrent model
Execution semantics and software development
[48] To discuss the situation when multilevel modeling is beneficial
Multilevel metamodelling and software development
Table 8 Research purpose description for the studies of 2014
References Research purpose Approach/domain
[49] To develop a framework for modeling security patterns specification and validation
Validation and security domain
[50] To use the ontological approach to address a semantic gap in security patterns
Semantics and security domain
[51] To define the archetypes-based framework for evolutionary, dependable, and interoperable healthcare information systems
Metadata and CPS (Healthcare)
[52] To develop SysML-based automating building energy system for modeling and analysis
Automation and CPS (energy system)
[53] To improve the change impact analysis in software requirements
Analyses and requirement engineering [54] To formalize coordination among
metamodels
Formalization and CPS (healthcare) [55] To define a seamless chain for software
structural, functional, and execution modeling
Transformation and CPS (embedded systems)
[56] To address the conflict in information system design using a conceptual modeling approach
Multilevel metamodelling and software design
A Systematic Review of Metamodelling in Software Engineering 13 Table 9 Research purpose description for the studies of 2013
References Research purpose Approach/domain
[57] To support the theory of relation and reasoning in different approaches to requirement modeling
Formalization and requirement engineering
[58] To define the rules to create a risk management system model
Risk management and safety-critical system
[59] To improve the component-based approach for specifying DSML’s concrete syntax
Syntax, semantics, and software development
[60] To integrate safety analysis in the system engineering process
Safety analyses, system engineering, and safety-critical systems
[61] To evaluate the existing software architecture viewpoint language
Evaluation and software design [62] To propose a tool that supports the
software process reuse and automates their execution
Process reuse and automation and software processes
[63] To introduce a model-driven
process-centered software engineering environment
Software processes and software development
[64] To identify the right time and scenario to use multilevel modeling
Multilevel modeling and conceptual modeling
[65] To develop a metamodel that supports constraint in a database management system
Constraints and information systems
[66] To define a template for the rationale of architecture design decision
Decision support and software requirements and design [67] To develop a technology that supports
rapid domain-specific language development
Automation and software development
[68] To support the metamodel development based on the graphical representation
Metamodel generation and sketching environment
[69] To define a programming and modeling language that treats requirement and architecture concepts explicitly
Formalization and requirement engineering
[70] To generate test cases and metamodelling correctness automatically
Code generation, formalization, and software validation
[71] To develop a metamodel that generalizes DSML and MDE
Models execution and software development
14 M. Fatehah et al.
Table 10 Research purpose description for the studies of 2012
References Research purpose Approach/domain
[72] To provide a behavior model reasoning at different levels of abstraction
Formalization, behavioral modeling, and CPS (Healthcare)
[73] To provide a framework for metadata editing and development
Metadata and geographic information systems
[74] To provide an approach that supports model and constraint evaluation
Automation, model adaptation, and software design
[75] To propose a metamodelling in the adaptation of Service-Oriented Architecture (SOA) roles in the traditional organization structure
Model adaptation and web technologies (SOA)
[76] To combine the agent-oriented software development and MDE paradigms
Integration and artificial intelligence
[77] To develop a metamodel that supports concurrent task tree modeling and execution
Code execution and concurrent processes
[78] To improve the search engine ability with metamodelling
Improvement and web-technologies [79] To investigate the need for a multilevel
business process
Multilevel modeling and business processes
[80] To address the challenge requirements specification for a graphical modeling language
Syntax and requirement engineering
0 2 4 6 8 10 12 14 16
Requirement engineering Software design, analyses and validation Modelling software processes and workflows Cyber-physical systems and IoT Information systems Intelligent systems Safety and security aspects of the systems Standards compliance and risk management
Fig. 3 The main application domains of metamodelling
A Systematic Review of Metamodelling in Software Engineering 15
Safety critical systems
Aircraft systems
Automotive systems
Combat systems
Healthcare systems
Intellegent systems
Smart devices
Building energy systems
Smart environment systems
Multi-agent systems
Management system
Disaster management
systems
Emergency management
systems
Workflow modeling
Risk analysis systems
Information Systems
Enterprise databases
Organization structure databases
Spatial and temporal databases
Web-based systems (search engines)
Fig. 4 Types of systems used in metamodeling applications
0 2 4 6 8 10 12
Metamodels formalization Conceptual modelling (incl. behaviour modelling) Multilevel modelling Metamodels reuse, new methods for the models adaption and integration Improvement of the syntax and semantics Development of the methods for the metamodels validation New metamodels development Development of new UML profiles
Fig. 5 The main trends of metamodeling development
shows the advantages and disadvantages of EMF. The researchers noticed that the main advantage is the various software environments and hardware platforms sup- port. The EMF includes a constraint definition language, which can be used to define the model metrics and automatically detect deviations from the model design heuris- tics. Moreover, the Eclipse framework offers a variety of tools, which are portable for different platforms.
Other than modeling tools, this review study also studies the most used meta- metamodels and metamodels. Based on Fig. 7, ECORE is the most used meta- metamodel. ECORE offers many advantages, such as compatibility to support the
16 M. Fatehah et al.
Fig. 6 Metamodelling tools
(N = 1) DPF Diagram
Predicate Framework
(N = 11) Eclipse
Modelling Framework
(N = 2) Generic
Modelling Environment
(N = 1) MetaDepth
(N = 2) MetaEdit+
(N = 1) SeMF
Table 11 Advantages and disadvantages of eclipse modelling framework
Advantages Disadvantages
• Provides various platforms for a language definition
• Ease of use in any software environment
• Easy to define a graphical model
• Easy to develop a graphical editor
• Does not allow to model a system behavior
• Does not support a unique numeric identification
• Fixed number of meta-levels
Fig. 7 Most referenced
metamodels ADOxx (N = 1)
(N = 1) AUTOSAR
(N = 8) ECORE
(N = 1) Kermeta
(N = 1) SMP2
(N = 1) SPEM
(N = 1) Universal
Metamodel
various platforms. The advantages and the motivation of ECORE are described in Table12, along with the other metamodel descriptions and researchers’ motivations.
While all considered metamodels are used to define concrete and abstract syntax of the models, Table12is dedicated to show their specific features.
A Systematic Review of Metamodelling in Software Engineering 17 Table 12 Existing metamodels descriptions and motivations
Core metamodel Descriptions Motivations
ADOxx • Used to specify a platform
with multiple deployment options
• Support for an independent declarative language AUTOSAR • Specify architectures for
automotive systems
• Standardize architecture and methodology of an automotive system
ECORE • Describes three layers of
model abstraction
• Can describe the safety and security concepts of a particular system
• Needs expanding by constraint language
• Defines metamodel and the rules for the automation of tool generation
• Can support software methodology Prometheus language
• The definition of concrete textual syntax is supported
• To support model development for component-based systems
• To follow the EMF compatibility metamodel
• To support metamodel collaboration and various tools
• To describe the modeling element of Prometheus methodology
• To place the proposed methodology in EMF
• To map structural features of a model to abstract syntax
Kermeta • Metamodel that supports
specific design pattern interpretation
• Can support model interpreter, compiler, and checker
Simulation Model Portability standards 2 (SMP2)
• Support automatic code generation from the platform-independent model
• This metamodel support model composability Software and Systems
Process Engineering Metamodel (SPEM)
• Initiate a model-driven process • Support for a specific aspect of the model-driven development concept Universal Metamodel • Use the diagram element for a
specialized class
• Metamodel that supports model-management systems
RQ3. What is the quality of publications that reflect the metamodelling research in SE domain?
Each selected study was evaluated according to journal ranking, which divides papers into four quartiles (i.e., Q1, Q2, Q3, and Q4). Q1/Q2 covers the journals of the highest impact factor, while Q4 covers the lowest ones. Conference papers were also considered. Figure8shows an increasing number of the impact of journal articles published between 2012 and 2017. These results acknowledge the increasing amount of metamodelling approaches in the scientific literature. The selected papers were also undergone six quality evaluation questions, as presented in Table13. Three possible answers (i.e., “Yes”, “Partially”, and “No”) were used to evaluate the selected articles against the six quality evaluation questions. Figure9shows the quality assessment results of the selected papers.
18 M. Fatehah et al.
1 2 4 0 2 1 2 1 0 1 4 7
0 1 0 0 0 0 0 0 0 0 0 0
7 10 4 8 11 2
2 0 1 2 2 0 1 3 2 0 1 4 2 0 1 5 2 0 1 6 2 0 1 7 Q1 Q2 Q3 Q4 Conference
Fig. 8 Articles ranking per year
Out of the total number of selected articles (N=69), all the articles mentioned the study purpose and application domain of the metamodelling approach either with a wide explanation or by a simple statement. 13% of the selected papers can be classified as basic research that extends the state-of-the-art in metamodeling, while 62% of them apply metamodeling to some domain. More than 60% of the selected articles explained in detail the methodology of research, while 30% of them did not elaborate on it in a structural way. Additionally, 27 articles mentioned and explained the use of a proven meta-metamodel, while only 21 articles mentioned the meta- metamodel. The remaining 21 articles just mentioned the use of an existing meta- metamodel without a clear explanation. Further, 37% of the considered studies clearly showed the applicability of the metamodelling approach in the software development industry, while 19% of them just mentioned the possible industrial applications.
Moreover, about 25% of the selected studies indicated the future work and limitations of their studies, which could help to determine the trends of the metamodelling approach. 28% of the selected studies just mentioned either the possible future work or limitations of their studies, while more than 40% did not mention the future work and limitations.
RQ4. What are the limitations of the current studies and the prospects for future research?
The answers to this question provide an overview of the limitations and future work of the reviewed studies. The overview is divided into two parts, including the analysis of limitations and the proposed future improvements. First, the limitations of the reviewed studies were analyzed in Table 14. Second, based on these limitations, future works were also analyzed. A brief overview of future proposals is described in Table 15. Tables14and15present the limitations and future proposals for the scholars who only reported the limitations and future works in their studies.
There are several common issues highlighted in the selected research papers.
Table14allows to deduct the limitations of metamodelling. While its application is recognized as an effective, many authors noticed that manual coding is still required.
A Systematic Review of Metamodelling in Software Engineering 19 Table 13 Quality assessment
questionnaire QA1 Did the study consider the purpose and application domain of the considered metamodelling approach?
• Yes: it explains the purpose of metamodelling approach and its application domain
• Partially: it explains the purpose of metamodelling approach, but not the application domain
• No: it does not mention the purpose and application domain QA2 Did the study extend the state-of-the-art in
metamodeling?
• Yes: it extends the state-of-the-art in metamodeling
• Partially: it shows some new results in the metamodelling domain
• No: it applies an existing metamodeling approach to some domain
QA3 Did the study consider and give details on the methodology used?
• Yes: it clearly explains the methodology used
• Partially: it lists a few methods but not in a structural way
• No: it did not discuss the methodology used QA4 Did the study use a proven meta-metamodel?
• Yes: it names the meta-metamodel and how it is used in the research
• Partially: it names the meta-metamodel but did not describe how the meta-metamodel is used
• No: it mentions the meta-metamodel name without explanation
QA5 Did the study consider an industrial use of the metamodelling approach?
• Yes: it discusses the use of metamodelling approach in the industry
• Partially: it mentions the possible use of metamodelling in the industry
• No: it does not mention the industrial use of metamodelling QA6 Did the study consider the future work and discuss limitation?
• Yes: it explains the possible future elaboration of metamodelling approach and its limitations
• Partially: it mentions either future works or limitations
• No: it did not mention the limitations nor the possibility of future work
To support the design of cyber-physical systems (e.g., intelligent houses), further metamodel formalization and expansion by spatial and time semantics are required.
Based on Table15, the researchers highlighted several common directions for the improvement of metamodelling. The important directions include metamodel formalization, support of constraint language, and allowing formal specification and automatic reasoning. To solve these arising issues, the authors of this study pro- posed to improve the conceptual foundation of metamodelling approach. Metamodel
20 M. Fatehah et al.
0%
20%
40%
60%
80%
100%
QA1 QA2 QA3 QA4 QA5 QA6
Yes ParƟally No
Fig. 9 Quality assessment results
Table 14 The limitations of reviewed studies
Limitations description References
The proposed metamodel did not support spatial information [19]
The application of metamodelling is effective, but manual coding is still needed [15]
The implementation of automation components depends on the metamodel process used to define the software process line
[62]
In-depth knowledge of UML is needed to apply metamodelling [78]
The proposed metamodel can only support a limited system analysis [52]
The metamodel is limited to the predefined requirement functionality [53]
Limited possibility to support the changing learning algorithm [5]
Limited usability of the proposed model editor [76]
Cannot support large domain-specific systems [26]
Open platform communications unified architecture is not aligned with UML [20]
The proposed metamodelling strategy cannot be validated for large data [43]
adaptations and supporting wider domains are the topics that have seen the light to be explored. The problems associated with metamodel adaptation could be solved by further elaboration of the metamodelling architecture, especially elaborating the multilevel metamodelling.
Another area for further research is the behavior metamodels, and this could be handled by supporting process-centered software engineering. In that, the integration of the behavior model and structural model is considered as a possible direction for further research. The employment of metamodelling for safety-critical and cyber- physical systems is a special and highly demanded domain of research. This could be further expanded through the application of metamodels for the certification of safety- critical systems. The limitation of metamodelling approach in supporting large data is one of the common problems faced by many researchers. Although the proposed metamodels are effective, their functionality is still limited to small data.
A Systematic Review of Metamodelling in Software Engineering 21 Table 15 Summary of future work in the reviewed studies
Proposals for future work References
Adapt multi-level modeling with potencies to standard modeling, data representation, and tool
[23]
Improve the metamodelling to be able to support various domains [6,15,54]
Apply the behavior metamodel to other modeling formalisms [39]
Broadening the process-centered metamodel to other model-driven development approaches
[63]
Improve the metamodelling to support constraint language [4]
Evaluate the effectiveness of the proposed framework through complex case studies for safety evaluation purposes
[30,36,50,53]
Provide evaluation for the visual and textual properties of the proposed metamodel
[73]
Expand the approach to the common model repository [78]
Improve the metamodel conceptual foundation [43]
Improve the model binding flexibility [62,64]
Improve the non-functional requirements [26,61,76]
Incorporate the theory into a unified foundation ontology [25]
Extend the metamodel by scheduling model [44]
Simply the certification of a critical system [34]
Develop a formal specification of the security pattern [33]
Support an approach for the full generation of domain-specific graphical modeling tools
[17]
Apply the approach in the goal-oriented requirement model [57]
Support the design of the proposed behavior model with a structural model [72]
Apply the approach to a more complex scenario for smart environments modeling
[21]
Utilize the model for simulation performance and integrate safety concerns into systems engineering processes
[60]
Improve the results of automated reasoning using metamodelling [70]
Use the metamodel to define a concrete abstract syntax for graphical modeling languages
[29]
Develop suitable graphical editor and metamodel description in a component-based approach for specifying DSML’s concrete syntax
[59]
Use the aspectual template to determine the model type for enhancing the semantics of UML templates in OCL
[16]
In comparison with the approaches used in software quality assessment, the methods for the metamodels evaluation are weekly considered in the literature.
This problem stems from the inefficient evaluation of employing the approaches to support complex systems, which can be recognized as an important direction for future work. The researchers intended to improve the non-functional requirements
22 M. Fatehah et al.
of metamodelling approach such as flexibility, interoperability, and reusability fea- tures for their future attempts. These proposals would guide the possible directions of metamode