0% found this document useful (0 votes)
4 views15 pages

01 JSS PublishedMay2015 2

Uploaded by

acronymgiros9x
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views15 pages

01 JSS PublishedMay2015 2

Uploaded by

acronymgiros9x
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/276151647

Towards the Tools Selection in Model Based System Engineering for


Embedded Systems - A Systematic Literature Review

Article in Journal of Systems and Software · May 2015


DOI: 10.1016/j.jss.2015.04.089

CITATIONS READS

112 1,049

3 authors:

Muhammad Rashid Muhammad Waseem Anwar


Umm Al-Qura University NUST College of Electrical & Mechanical Engineering
111 PUBLICATIONS 1,488 CITATIONS 107 PUBLICATIONS 637 CITATIONS

SEE PROFILE SEE PROFILE

Aamir M. Khan
University of Buraimi
13 PUBLICATIONS 232 CITATIONS

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Model Driven Software Engineering View project

WCET prediction using machine learning algorithms View project

All content following this page was uploaded by Muhammad Rashid on 22 March 2018.

The user has requested enhancement of the downloaded file.


The Journal of Systems and Software 106 (2015) 150–163

Contents lists available at ScienceDirect

The Journal of Systems and Software


journal homepage: www.elsevier.com/locate/jss

Toward the tools selection in model based system engineering for


embedded systems—A systematic literature review
Muhammad Rashid a,∗, Muhammad Waseem Anwar b, Aamir M. Khan c
a
Computer Engineering Department, College of Computer and Information Systems, Umm Al-Qura University, Makkah, Saudi Arabia
b
MODEVES Project, National Science, Technology and Innovation Plan, Saudi Arabia
c
College of Engineering, University of Buraimi, Buraimi, Oman

a r t i c l e i n f o a b s t r a c t

Article history: Model based system engineering (MBSE) is a systematic approach of modeling which is frequently used to
Received 16 February 2015 support requirement specification, design, verification and validation activities of system development. How-
Revised 29 April 2015
ever, it is difficult to customize MBSE approach for the development of embedded systems due to their diverse
Accepted 30 April 2015
behavioral aspects. Furthermore, appropriate tools selection to perform particular MBSE activities is always
Available online 8 May 2015
challenging. This paper focuses on the identification and classification of recent research practices pertaining
Keywords: to embedded systems development through MBSE approach. Consequently, a comprehensive analysis of var-
MBSE ious MBSE tools has been presented. Systematic literature review (SLR) has been used to identify 61 research
Embedded systems practices published during 2008–2014. The identified researches have been classified into six different cat-
Tools egories to analyze various aspects of MBSE approach for embedded systems. Consequently, 39 preliminary
tools are identified that have been used in recent researches. Furthermore, classification and evaluation of
tools have been presented. This research highlights important trends and approaches of MBSE to support de-
velopment of embedded systems. A comprehensive investigation of tools in this article facilitates researchers,
practitioners and developers to select appropriate tools according to their requirements.
© 2015 Elsevier Inc. All rights reserved.

1. Introduction further verification and validation (Quadri et al., 2012; Rota Sena
Marques et al., 2014).
Model based system engineering (MBSE) is a well-known ap- UML (unified modeling language) and its SYSML (systems model-
proach for the development of complex systems. It has features ing language)/MARTE (modeling and analysis of real-time embedded
to reduce development complexity, enhanced productivity, efficient systems) profiles are frequently used in contemporary research prac-
change management and improved time-to-market. Therefore, it has tices (Giuseppe Di et al., 2013; George-Dimitrios et al., 2014; Berrani
been frequently researched and customized for the development et al., 2013; Sakairi et al., 2012; Stancescu et al., 2010; Anargyros et al.,
of embedded systems (Andrade et al., 2009; Quadri et al., 2012; 2014; Ouchani et al., 2013; Bouquet et al., 2012; DeTommasi et al.,
Moreira et al., 2010; Vidal et al., 2009; Herrera et al., 2014; Lecomte 2013; Gomez et al., 2012; Andrade et al., 2009; Quadri et al., 2012;
et al., 2011; Rafiq Quadri et al., 2012). The major MBSE activities for Bazydlo et al., 2014; Doligalski and Adamski, 2013; Mueller et al.,
the development of embedded systems are shown in Fig. 1. 2010; Durand and Bonato, 2012; Wood et al., 2008; Moreira et al.,
Modeling structural and temporal aspects of embedded systems 2010; Vidal et al., 2009; Linehan and Clarke, 2012) to specify embed-
is foremost activity. All other MBSE tasks (i.e. model transforma- ded systems requirements. Furthermore, different properties specifi-
tion, verification and validation) are based on the models develop- cation techniques/languages have been proposed by researchers (Yin
ment methodology. Therefore, models are developed by taking into et al., 2013; Mallet, 2012; Knorreck and Apvrille, 2011; Ge et al., 2012;
consideration the model transformation, verification and simulation Behjati et al., 2011) to model behavioral/temporal aspects. Once re-
requirements. For example, one of the major challenge is to model quirements are modeled, different model transformation techniques
behavioral/temporal aspects of complex embedded systems for have been applied to develop platform specific model and/or source
code generation. Two types of transformations are commonly used
i.e. model-to-model (M2M) transformation (George-Dimitrios et al.,

2014; Berrani et al., 2013) and model-to-text (M2T) transformation
Corresponding author. Tel.: 00966-580144036.
E-mail addresses: [email protected] (M. Rashid), [email protected]
(Wood et al., 2008; Moreira et al., 2010).
(M.W. Anwar), [email protected] (A.M. Khan).

http://dx.doi.org/10.1016/j.jss.2015.04.089
0164-1212/© 2015 Elsevier Inc. All rights reserved.
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 151

Research question 3: Which of the model-to-model and model-


to-text transformation approaches are more frequently utilized dur-
ing 2008–2014 researches?
Research question 4: What are the significant tools for require-
ment specifications, model transformation, verification and simu-
lation (validation) activities in the context of MBSE for embedded
systems?
The answers of all research questions are given in Section 5. Re-
view protocol, that incorporates selection and rejection criterion, has
been developed to perform this SLR. We have defined six categories
(Section 2.1) for the selected researches in order to get the answers
of our research questions. Complete overview of this research work
is presented in Fig. 2.
A review protocol is developed (Section 2.2) that contains the se-
lection and rejection criterion (Section 2.2.1). As shown in Fig. 2, four
scientific databases are selected for search process (Section 2.2.2) and
six categories are defined (Section 2.1) to classify the 61 selected
researches. Similarly, data extraction elements (Section 2.2.4) are
defined to perform comprehensive analysis and synthesis of the
selected researches. Consequently, the major findings of SLR have
been summarized in Section 3. On the basis of SLR, we preliminary
identified 39 tools (Section 3.3), those have been used in the se-
lected researches, to perform particular MBSE activities. In Section
4, various tools characteristics (Section 4.2) are defined for further
evaluation. The characteristics-based evaluation eliminated few pre-
liminary MBSE tools lacking certain common characteristics and in-
cluded some additional tools those have been missed during the SLR.
Fig. 1. Major MBSE activities for embedded systems. Consequently, 28 MBSE tools in five different categories (Section 4.3)
are presented as shown in Fig. 2. Results in Sections 3 and 4 provided
the answers of research questions and are discussed in Section 5. Fur-
The verification is performed to ensure the correctness of the ther important aspects and certain limitations of the research are dis-
model/system and it is tightly coupled with the modeling technique cussed in Section 6. Finally, Section 7 concludes the article.
used to specify behavioral/temporal aspects. Various formal verifica-
tion techniques (Launiainen et al., 2010; Zhang et al., 2009; Uchevler 2. Research methodology
and Svarstad, 2013) have been used to verify the behavioral/temporal
aspects of the system. If the model does not satisfy the verification re- Systematic literature review (Kitchenham, 2004) has been used
quirements, then corrections have been made in the model as shown to carry out this research. It is a proper and replicate process to
in Fig. 1. The validation of the model/system has been performed document pertinent details on precise research area for reviewing
through simulation. and investigating all existing research related to research questions.
Although, researchers put a lot of efforts in the field of MBSE for Consequently, this research incorporates five stages: 1) categories
embedded systems, it is still a challenging area due to the diversity definition, 2) review protocol development, 3) selection and rejection
of behavioral/temporal characteristics of embedded systems. It is criterion, 4) search process, 4) quality assessment, 5) data extraction
always difficult to select appropriate modeling techniques and UML and synthesis.
profiles to model embedded systems requirements. Moreover, there
is a considerable dependency among different MBSE activities (i.e. 2.1. Categories definition
modeling, model transformation, verification and simulation) that
require sufficient knowledge of all the phases for the development We have defined six categories in order to organize the selected
of embedded systems. Similarly, there are separate toolsets for researches. This categorization significantly improves the accuracy of
each MBSE activity and selection of appropriate tools for embedded the answers of our research questions. The details of categories are
system development is always problematic for researchers and given below:
practitioners.
Keeping in view the current state of affair, the objective of this sys- 2.1.1. General category
tematic literature review (SLR) is to identify the latest research prac- There might be a number of researches where complete solu-
tices where MBSE approach has been used for the development of tion covering all MBSE activities (i.e. modeling, model transforma-
embedded systems. The identified researches are classified into six tion, verification and simulation) is proposed for embedded systems.
categories depending upon their relevance with corresponding MBSE Moreover, there might be a number of researches covering all MBSE
activity. Furthermore, various tools have also been identified to per- activities but do not particularly intended for embedded systems,
form modeling, model transformation, verification and validation ac- however, these researches have great potential to be used for embed-
tivities for embedded systems development. Consequently, following ded systems. Furthermore, some researches might cover more than
research questions have been developed for this SLR: one MBSE activities simultaneously (e.g. modeling, model transfor-
Research question 1: What important researches have been re- mation or model transformation, verification etc.). All aforesaid re-
ported from 2008 to 2014 where MBSE approach has been utilized to searches will be included in the general category.
support the development of embedded systems?
Research question 2: Which of the UML and its SYSML/MARTE 2.1.2. Modeling category
profiles are more frequently utilized to model embedded system re- Requirements specification is the foremost activity. Therefore, all
quirements during 2008–2014 researches? proposed categories may contain some information about the model
152 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Fig. 2. Overview of research.

development methodology. UML and its SYSML/MARTE profiles are have been verified through formal verification methods. All such re-
normally used individually as well as collectively to specify em- searches will be included in the model verification category.
bedded systems requirements. However, there might be a number
of researches particularly intended to propose/investigate modeling 2.1.6. Simulation category
methodologies by using UML and its SYSML/MARTE profiles. Such re- The simulation is normally used for system validation by utilizing
searches will not provide any significant proposal regarding any other the generated source code. There might be a number of researches
MBSE activities (i.e. model transformation, verification and valida- that integrate available simulation tools. However, there might also
tion). All such researches will be included in the modeling category. be few researches where new simulation mechanism has been pro-
posed. Similarly, there is a possibility of some research works, where
particular simulation aspects are also included in the model to ensure
2.1.3. Property specification category
the accuracy of simulation. All such researches will be included in the
It is an important activity to specify behavioral/temporal
simulation category.
aspects of embedded systems through property specification
It is worth-mentioning here that the general category will contain
techniques/languages. The researches may propose novel approaches
a number of researches where solutions are either provided for all
to specify behavioral/temporal aspects and constraints of embedded
MBSE activities or at least two MBSE activities simultaneously. On
systems. All such researches will be included in the property specifi-
the other hand, the researches particularly targeted for any one of
cation category.
the MBSE activity (i.e. modeling, model transformation, verification
and simulation) will be included in their corresponding defined
2.1.4. Model transformation category
categories.
Model transformation is an important MBSE activity. There are lat-
est research works pertaining to either model-to-model or model-to- 2.2. Review protocol development
text transformation techniques or both of these. There might also be
some research works to ensure the correctness of model transforma- Once the categories are defined, we develop review protocol for
tion. All such researches will be included in the model transformation our research on the basis of predefined SLR standards (Kitchenham,
category. 2004). Consequently, the developed protocol defines the background,
research questions, selection and rejection criterion, search process,
2.1.5. Model verification category quality assessment, data extraction and synthesis of the extracted
There might be a number of researches pertaining to formal and data. Background and research questions are already described in the
informal model verification techniques to ensure the correctness introductory part of this article (Section 1). The other details of re-
of the model. Normally, behavioral/temporal aspects of the model view protocol are given in subsequent sections.
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 153

Table 1
Details of search terms with operators and search results.

Sr. no. Search term Operator No. of search results

IEEE SPRINGER ELSEVIER ACM

1. MBSE N-A 67 2 150 119


2. MDA N-A 797 3327 7313 3520
3. MDE N-A 355 256 2581 1990
4. SYSML N-A 274 11 373 790
5. UML N-A 2564 377 5645 3796
6. MARTE N-A 199 80 1470 176
7. Model transformation AND 710 89 1254 787
8. Model verification AND 302 122 3074 146
9. Formal verification AND 4941 110 1005 1297
10. Model simulation AND 980 1610 18790 272
11. Model embedded System OR 10659 19480 2403 21605
AND 1 0 4 2
12. MARTE SYSML OR 18 0 21 43
AND 1 0 0 2
13. SYSML UML OR 82 7 148 141
AND 3 0 15 19
14. MDA embedded systems OR 42 689 4516 246
AND 0 0 0 0
15. Property specification OR 1948 5794 1477 1853
AND 66 13 319 111
16. Model to text transformation OR 135 5839 36 929
AND 7 4 74 57
17. Model to model transformation OR 8790 23686 9144 17658
AND 20 9 120 101
18. Model verifier OR 175 248 101 154
AND 16 2 24 25
19. Model code generation OR 2667 16307 860 2162
AND 0 0 6 7
20. Embedded system simulation OR 5610 3457 975 1680
AND 6 0 6 5

2.2.1. Selection and rejection criterion databases contain high impact journals and conference proceedings.
We define concrete criterion for the selection and rejection of re- In addition, we have also studied relevant books, white papers and
search works. Six parameters are defined to ensure the correctness technical reports to support our study/investigation. To accomplish
of the answers of our research questions. The research work will be search process, we use different search terms like MBSE, model trans-
selected on the basis of these parameters as given below: formation, model verifier etc. The search terms along with the results
for each scientific database are summarized in Table 1.
1. Subject-relevant: Select the research work only if it is relevant to
We use “2008–2014” filter for all the search terms to only get the
our research context. It must support the answers of our research
researches published during 2008–2014. Some search terms com-
questions and must be relevant to one of the six predefined cate-
prise of a single word (e.g. MBSE). Consequently, the use of AND/OR
gories (Section 2.1). Reject irrelevant researches those do not be-
operator is not applicable (shown as N-A in Table 1). The search
long to any of the six predefined categories.
results obtained through the AND operator do not guarantee the rel-
2. 2008–2014: Selected research work must be published from 2008
evance of our research context. Therefore, we also use the OR op-
to 2014. Reject all researches those are published before 2008 to
erator to attain potential search results required for our research.
ensure the inclusion of latest research works.
However, using the OR operator provide thousands of search results
3. Publisher: Selected research work must be published in one of
so it is not possible to scan all the results. Consequently, we also use
the four renowned scientific databases i.e. IEEE (IEEE Scientific
advance search options (e.g. “where abstract contained”, “where title
Database, 2014), SPRINGER (Springer, 2014), ELSEVIER (Elsevier,
contained” etc.) provided by these scientific databases in order to get
2014) and ACM (ACM, 2014).
precise results. Similarly, after investigating the primarily search re-
4. Crucial-effects: Selected research work must have crucial positive
sults, we further use more specific search terms to get desired search
effects regarding embedded system development through MBSE
results. For example, we use “CCSL” to get the desired search re-
approach. Reject the research work if its proposal does not have
sults for properties specification techniques in models. The relevant
significant consequences on embedded system development.
screenshots pertaining to Table 1 can be viewed at (MODEVES Project
5. Results-oriented: Selected research work must be results-
0001). The steps performed during the search process are depicted in
oriented. The proposal and ultimate outcomes of the research
Fig. 3.
must be supported by solid facts and experimentation. Reject the
research work if its proposal is verified through weak validation
method. 1. We specify various search terms in four scientific databases and
6. Repetition: All the researches in a particular research context can- analyze approximately 8862 search results as per selection and
not be included. Consequently, reject researches that are identical rejection criterion.
in the given research context and only one of them is selected. 2. We discard 5290 researches by reading their Title as per selection
and rejection criterion.
2.2.2. Search process 3. We discard 2176 researches by reading their Abstract as per selec-
Selection and rejection criterion, presented in Section 2.2.1, shows tion and rejection criterion.
that we have selected four scientific databases (i.e. IEEE, ELSEVIER, 4. We perform general study of 1396 researches by reading different
SPRINGER and ACM) in order to carry out this SLR. These scientific relevant sections of each research. On basis of our general study,
154 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Table 2
Details of data extraction and synthesis.

Sr. no. Description Details

1. Bibliographic information Title, author, publication year, publisher details and type of research (i.e. journal or conference publication)
Extraction of data
2. Overview The basic proposal and objective of selected research
3. Results Results acquired from the selected research
4. Data collection Quantitative or qualitative
5. Assumptions Assumptions (if any) to validate the results
6. Validation Validation method used to validate its proposal
Synthesis of data
7. Classification Relevance to one of the predefined categories (Table 3)
8. Profiles utilization UML and its SYSML/MARTE profiles used (Table 4)
9. Transformation Type of transformation used (M2M, M2T or both) (Table 5)
10. Identification of tools Tools used to perform particular MBSE activity (Table 6)

18

16

Number of Included Papers


14

12

10

0
2008 2009 2010 2011 2012 2013 2014
year

Fig. 4. Number of selected researches per year.

also defines the credibility of each selected research and its decisive
findings:

(1) The data appraisal of the research is based on the concrete facts
and theoretical perceptive without any vague statements.
(2) The validation of research has been performed through proper
validation methods e.g. case study etc.
(3) The research provides information about the tools used in it to
perform MBSE activities.
(4) As we intend to investigate latest MBSE tools and trends, the
objective is to include most recent researches as much as pos-
sible. Therefore, we try to include most recent researches as
69% researches are from 2012 to 2014 and overall 87% re-
searches are included from 2010 to 2014 as shown in Fig. 4.
(5) Originality of the research is another important factor. There-
fore, we only include researches that are published in at least
Fig. 3. Search process. one of the four renowned and globally accepted scientific
databases i.e. IEEE, SPRINGER, ELSEVIER and ACM.

we discard 984 researches those do not meet selection and re-


2.2.4. Data extraction and synthesis
jection criterion. We select remaining 412 relevant researches for
Data extraction and synthesis, as shown in Table 2, is performed
detailed study.
for selected researches in order to get the answers of our research
5. We perform detailed study of 412 researches and discard 351 re-
questions.
searches.
For data extraction, defined from serial numbers 2 to 6, we ex-
6. We select 61 researches fully compliance with our pre-defined se-
tract important details of each selected research to ensure its com-
lection and rejection criterion.
pliance with the selection and rejection criterion. For data synthesis,
defined from serial numbers 7 to 10, we perform detailed analysis
2.2.3. Quality assessment of each research. For example, all selected researches have been thor-
We have developed the quality criterion to understand the im- oughly studied and analyzed in order to assign them to corresponding
portant outcomes of selected researches. The developed criterion category. Similarly, each selected research is intensively studied and
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 155

Table 3
Classification results for identified researches.

Sr. no. Category Number of researches Researches identification

1. General 36 Giuseppe Di et al., 2013, George-Dimitrios et al., 2014, Berrani et al., 2013, Stancescu et al., 2010,
Anargyros et al., 2014, Ouchani et al., 2013, Bouquet et al., 2012, DeTommasi et al., 2013, Andrade
et al., 2009, Quadri et al., 2012, Bazydlo et al., 2014, Doligalski and Adamski, 2013, Mueller et al.,
2010, Durand and Bonato, 2012 Wood et al., 2008, Moreira et al., 2010, Vidal et al., 2009, Linehan
and Clarke, 2012, Herrera et al., 2014, Lecomte et al., 2011, Rafiq Quadri et al., 2012, Chen et al.,
2013, Vanderperren et al., 2008, Elhaji et al., 2012, Riccobene and Scandurra, 2012 Zohaib Iqbal
et al., 2013, Chouali and Hammad, 2011, Doering, 2014, Ouchani et al., 2014, Telinski
Wiedermann anger et al., 2013, Knorreck and Apvrille, 2011, Ge et al., 2012, Baresi et al., 2013,
Huang et al., 2012, Nguyen et al., 2014, Bousse et al., 2012
2. Modeling 5 Gomez et al., 2012, Penil et al., 2010, Espinoza et al., 2009, Rota Sena Marques et al., 2014, Behjati
et al., 2011
3. Property specification 2 Yin et al., 2013, Mallet, 2012
4. Model transformation 11 Greenyer and Kindler, 2010, Ko et al., 2013, Gronmo et al., 2009, Feher and Lengyel, 2012, Guerra
et al., 2010, Rose et al., 2012, Ledo et al., 2012, de Lara and Guerra, 2014, Kolahdouz-Rahimi et al.,
2014, Andrea Bollati et al., 2013, Rutle et al., 2012
5. Model verification 5 Mallet et al., 2013, Launiainen et al., 2010, Zhang et al., 2009, Uchevler and Svarstad, 2013, Alizadeh
and Behnam, 2013
6. Simulation 2 Sakairi et al., 2012, Jin et al., 2008

Table 4
Results pertaining to UML and its SYSML/MARTE profiles utilization.

Sr. no. Profiles Number of researches Researches identification

1. UML 7 Giuseppe Di et al., 2013, Bazydlo et al., 2014, Doligalski and Adamski, 2013, Durand and Bonato, 2012,
Wood et al., 2008, Chen et al., 2013, Telinski Wiedermann anger et al., 2013
2. SYSML 14 George-Dimitrios et al., 2014, Berrani et al., 2013, Sakairi et al., 2012, Stancescu et al., 2010, Anargyros
et al., 2014, Ouchani et al., 2013, Bouquet et al., 2012, DeTommasi et al., 2013, Chouali and Hammad,
2011, Doering, 2014, Ouchani et al., 2014, Knorreck and Apvrille, 2011, Behjati et al., 2011, Bousse
et al., 2012
3. MARTE 0
4. UML and SYSML 2 Mueller et al., 2010, Riccobene and Scandurra, 2012
5. UML and MARTE 12 Moreira et al., 2010, Vidal et al., 2009, Linehan and Clarke, 2012, Herrera et al., 2014, Lecomte et al.,
2011, Rafiq Quadri et al., 2012, Elhaji et al., 2012, Penil et al., 2010, Zohaib Iqbal et al., 2013, Ge et al.,
2012 Baresi et al., 2013, Nguyen et al., 2014
6. SYSML and MARTE 4 Andrade et al., 2009, Quadri et al., 2012, Espinoza et al., 2009, Huang et al., 2012
7. UML, SYSML and MARTE 3 Gomez et al., 2012, Vanderperren et al., 2008, Rota Sena Marques et al., 2014

analyzed to extract the accurate information regarding UML profiles 2009; Chouali and Hammad, 2011) and simulation (e.g. Anargyros
utilization, transformation type and identification of tools as defined et al., 2014) activities.
in serial numbers 8–10 respectively.
3.1. UML/SYSML/MARTE utilization

We have also identified the application of UML and its


3. Results SYSML/MARTE profiles individually as well as simultaneously to
model embedded systems requirements. The results are summarized
We have identified 61 researches and classified them into six cat- in Table 4.
egories. The summary of classification is shown in Table 3. We include all researches in Table 4 where UML and its
From the results of SLR, we analyze that various MBSE activities SYSML/MARTE profiles are comprehensively discussed and/or prac-
are simultaneously researched to provide a complete development tically used individually as well as simultaneously. However, there
solution for embedded systems. Therefore, 36 researches have been are some researches, especially in model transformation (e.g. Guerra
selected under the general category as shown in Table 3. et al., 2010; Ledo et al., 2012) and model verification (e.g. Launiainen
We also analyze that modeling is the foremost activity and mostly et al., 2010; Zhang et al., 2009) categories, where these profiles
discussed along with other MBSE activities. For example, Sakairi et al. are rarely discussed and/or practically used. Therefore, we exclude
(2012) propose simulation of SYSML model through SIMULINK (Math all such researches due to their irrelevance with our particular re-
Works Simulink, 2014) tool. However, they also provide adequate search objective. Another interesting finding is that MARTE profile is
SYSML modeling information in the context of simulation. We ob- rarely used alone to model large and complex embedded systems re-
serve that there are very few researches where “only” modeling as- quirements. In fact, MARTE profile has very good features to model
pects are discussed, as shown in Table 3. temporal aspects of the system but it cannot completely handle all
On the other hand, we identify two researches those are specific behavioral and structural aspects of large systems. However, its uti-
to property specification category only. However, various property lization along with UML and SYSML certainly enhances the modeling
specification techniques are also proposed along with other MBSE capabilities for embedded systems. Therefore, it is frequently used
activities. For example, Knorreck and Apvrille (2011) propose TEPE with UML and SYSML as depicted in Table 4.
for property specification but they also provide detailed solution for
transformation and verification by using TTool (Ttool, 2014). Conse- 3.2. Model transformation techniques
quently, we place such researches under the general category. Similar
is the case with the model transformation (e.g. Giuseppe Di et al., Analysis results for model transformation techniques are sum-
2013; Quadri et al., 2012), model verification (e.g. Andrade et al., marized in Table 5. The model transformation activity has been
156 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Table 5
Model transformation statistics.

Sr. no. Transformation type Number of researches Relevant researches

1 Model to Model (M2M) 14 George-Dimitrios et al., 2014, Berrani et al., 2013, Bouquet et al., 2012, Doligalski and Adamski,
2013, Mueller et al., 2010, Greenyer and Kindler, 2010, Ko et al., 2013, Gronmo et al., 2009, Feher
and Lengyel, 2012, Guerra et al., 2010, de Lara and Guerra, 2014, Kolahdouz-Rahimi et al., 2014,
Rutle et al., 2012, Huang et al., 2012
2 Model to Text (M2T) 9 DeTommasi et al., 2013, Wood et al., 2008, Moreira et al., 2010, Linehan and Clarke, 2012, Herrera
et al., 2014, Zohaib Iqbal et al., 2013, Rose et al., 2012, Ledo et al., 2012, Ouchani et al., 2014
3 M2M and M2T 12 Giuseppe Di et al., 2013, Anargyros et al., 2014, Quadri et al., 2012, Vidal et al., 2009, Lecomte et al.,
2011, Rafiq Quadri et al., 2012, Elhaji et al., 2012, Riccobene and Scandurra, 2012, Doering, 2014,
Andrea Bollati et al., 2013, Baresi et al., 2013, Bousse et al., 2012

performed in overall 35 researches. We classified these researches 4.1. Initial tools evaluation
into three transformation types i.e. M2M, M2T, both M2M and M2T.
In this phase, we perform initial evaluation of selected tools
(Table 6) to check the availability of sufficient information required
3.3. Preliminary tools identification for detailed tools evaluation. This includes web address, license type,
working environment and help documentation. Furthermore, we also
Once the researches are classified into different categories, the search for important tools used in the industries and missed dur-
next step is to identify the tools and frameworks used in selected re- ing the SLR. Consequently, it has been observed that the information
searches to perform various MBSE activities. It is important to men- available for some tools is not adequate to perform further evaluation.
tion here that a tool is used to perform a specific MBSE activity Therefore, we exclude such tools for further evaluation.
whereas a framework is a complete environment supporting a set of
tools that can be used to perform various MBSE activities. The pre- 4.2. Tools characteristics
liminary identified tools and frameworks are given in Table 6.
It has been analyzed that few selected researches do not provide Once the initial evaluation is done, further evaluation is per-
sufficient information about the tools used in their work. For ex- formed by defining some tools characteristics. These characteristics
ample, Riccobene and Scandurra (2012) explain that they perform help practitioners and researchers to select appropriate MBSE tools
both M2M and M2T transformations. They also describe that EA MDG according to their requirements. Two types of tools characteristics
(Sparx Systems Enterprise Architecture 0002) tool is used for model- used in this article are: general characteristics and activity specific
ing and integrated into Eclipse technology to perform both transfor- characteristics. General characteristics are independent of a partic-
mations. However, it is unclear which specific tool/tools are used to ular MBSE activity. On the other hand, activity specific characteris-
perform both transformations because there are a variety of transfor- tics are related to the corresponding MBSE activity such as modeling,
mation tools supported by Eclipse technology. Similarly, Gomez et al. transformation, verification and validation.
(2012) propose multi view power modeling approach by using UML
and its SYSML/MARTE profiles but do not provide any information 4.2.1. General characteristics
about the modeling tool used in their work. This limitation is present These characteristics are applicable to all the tools:
in very few selected researches so it does not affect the ultimate re- License type: It is the primary characteristic frequently con-
sults of our research objective. sidered for the selection of appropriate tool. We investigate com-
mon license types like General Public License (GPL) (General Public
3.4. Overview of selected researches License, 2014), Eclipse Public License (EPL) (Eclipse Public License,
2014), Apache Software License (ASL) (Apache License, 2014) and Ce-
We extract the important data for each selected research, accord- CILL (CeCILL License, 2014) supported by various MBSE tools. Further-
ing to the attributes defined in Table 2, in order to get the answers of more, we also provide the name of the vendors in case of proprietary
our research questions. However, due to the length constraints, it is license type.
not possible to present all extracted data for each study in this article. Customizability: This characteristic can be defined as “The abil-
Consequently, we organize the data for each selected study in a single ity of a tool to support desired alterations in order to perform a par-
table that can be found at (MODEVES Project 0000). ticular MBSE activity”. For example, Open source tools can easily be
customized (Ttool, 2014; Zot Tool, 2014) while it is difficult to cus-
tomized proprietary tools due to unavailability of the source code.
4. MBSE tools investigation We define three parameters to explain customizability of a tool: “No”
means tool is not customizable. “Partial” means tool is able to sup-
On the basis of SLR, 39 preliminary MBSE tools have been identi- port minor alterations. “Full” means tool is able to support major al-
fied as given in Table 6. However, the identification of given tools is terations according to given requirements. For example, if the tool
not sufficient to facilitate researchers and practitioners for particular supports minor necessary alterations required for its seamless in-
tools selection. Moreover, the classification of tools is based on their tegration in a given working environment, it will be considered as
practical utilization in selected research works. Consequently, there is partially customizable. On the other hand, if the tool also allows mod-
a possibility that the selected tool can be customized to perform mul- ifications to its major basic functions (e.g. transformation type etc.),
tiple MBSE activities, not discussed in the selected research works. it will be considered as fully customizable.
Furthermore, it is also required to search for additional MBSE tools Supported platforms: This characteristic defines the type of op-
that have been missed during the SLR. Therefore, we further evalu- erating system supported by the tool. Windows and Linux platforms
ate the selected tools to provide a rational representation. First, initial are more frequently used.
evaluation is performed and then various important characteristics of
the tools are used for evaluation. The details are given in subsequent 4.2.2. Activity specific characteristics
sections. These characteristics are specific to a particular MBSE activity.
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 157

Table 6
Preliminary tools selection.

Sr. no. Name of tool/framework Relevant researches

Modeling (8)
1. Topcased (Topcased Tool, 2014) Berrani et al., 2013, Bouquet et al., 2012, DeTommasi et al., 2013, Ouchani et al., 2014
2. Modelio Editor (Modelio, 2012) Quadri et al., 2012
3. Magic Draw (Magic Draw, 2014) Anargyros et al., 2014, Durand and Bonato, 2012, Linehan and Clarke, 2012
4. Eclipse GEF (IBM 2008) Wood et al., 2008
5. Rhapsody (IBM Rhapsody, 2014) Sakairi et al., 2012, Vidal et al., 2009, Lecomte et al., 2011, Behjati et al., 2011
6. PapyrusMDT (Papyrus MDT 0004) Herrera et al., 2014, Doering, 2014, Nguyen et al., 2014
7. EA MDG (Sparx Systems Enterprise Architecture 0002) Riccobene and Scandurra, 2012
8. Visual Paradigm (Visual Paradigm, 2014) Nguyen et al., 2014
Model transformation (18)
9. MediniQVT (QVT Project, 2014) George-Dimitrios et al., 2014
10. ATL (Eclipse ATL, August 2014) Berrani et al., 2013, Bouquet et al., 2012, Gronmo et al., 2009, Doering, 2014,
Kolahdouz-Rahimi et al., 2014, Andrea Bollati et al., 2013, Huang et al., 2012
11. Xpand (MDWorkbench platform 0006) Bouquet et al., 2012, Linehan and Clarke, 2012
12. Acceleo (Eclipse Acceleo, 2014) DeTommasi et al., 2013, Herrera et al., 2014, Rose et al., 2012, Doering, 2014
13. MODCO (Wood et al., 2008) Bazydlo et al., 2014
14. MODEASY (Wood et al., 2008) Wood et al., 2008
15. Apache velocity (Apache Software Foundation, 2010) Durand and Bonato, 2012, Moreira et al., 2010
16. UML-RSDS (Sparx Systems Enterprise Architecture 0002) Kolahdouz-Rahimi et al., 2014
17. GenERTiCA tool (Wehrmeister et al., 2008) Moreira et al., 2010
18. MDworkbench (MDWorkbench platform 0007) Vidal et al., 2009, Lecomte et al., 2011
19. CatapultC (Mentor Graphics, Catapult synthesis tool 0016) Lecomte et al., 2011
20. QVTO (Eclipse 0105) Doligalski and Adamski, 2013
21. AGG (Taentzer, 2004) Ko et al., 2013, Gronmo et al., 2009, Feher and Lengyel, 2012
22. MOFScript (Eclipse 0014) Zohaib Iqbal et al., 2013, Gronmo et al., 2009, Rose et al., 2012, Ledo et al., 2012
23. MeTHAGeM (Andrea Bollati et al., 2013) Andrea Bollati et al., 2013
24. Epsilon (Eclipse Epsilon, 2014) Quadri et al., 2012, Baresi et al., 2013
25. TMC (TMC 2014) Nguyen et al., 2014
26. SYSML to B translator tool (SYSML to B tool, 2014) Bousse et al., 2012
Model verification (2)
27. PRISM (Kwiatkowska et al., 2011) Ouchani et al., 2013, Ouchani et al., 2014
28. UPPAAL (UPPAAL Tool, 2014) Knorreck and Apvrille, 2011, Huang et al., 2012
Simulation (4)
29. SIMULINK (Math works Simulink, 2014) Sakairi et al., 2012, Vanderperren et al., 2008
30. ActiveHDL (Active HDL, 2014) Doligalski and Adamski, 2013
31. QEMU (Qemu, 2014) Mueller et al., 2010
32. GTKWave (Tony Bybell 0008) Jin et al., 2008
Modeling and model transformation (2)
33. radCASE (Giuseppe Di et al., 2013) Giuseppe Di et al., 2013
34. Artisan Studio (Artisan Studio, 2014) Mueller et al., 2010
Model transformation and model verification (1)
35. Verilog Dynamic Verifier (Jin et al., 2008) Jin et al., 2008
Model verification and simulation (2)
36. radCHECK (Giuseppe Di et al., 2013) Giuseppe Di et al., 2013
37. Zot (Zot Tool, 2014) Quadri et al., 2012, Baresi et al., 2013
Modeling, model transformation and simulation (1)
38. Gaspard2 (DaRT Team, GASPARD SoC Framework, 2010) Rafiq Quadri et al., 2012, Elhaji et al., 2012
Modeling, model verification and simulation (1)
39. TTool (Ttool, 2014) Knorreck and Apvrille, 2011

4.2.2.1. Modeling characteristics. Modeling characteristics are related will investigate the transformation tools for the supported transfor-
to the modeling activity in MBSE. The defined parameters in this cat- mation type. i.e. M2M, M2T or both.
egory are:
Support of XMI format: Import/Export to XML Metadata In- 4.2.2.3. Model verification characteristics. The only defined parame-
terchange (XMI) is an important characteristic of modeling tools ter in the model verification category is the verification approach:
and frequently used to perform various data exchange activities. Verification approach: This characteristic describes the verifica-
We will evaluate whether a particular modeling tool support this tion approach supported by the verification tool. The model verifica-
functionality. tion is usually performed through formal verification methods. We
Profile support: From the SLR, it is clear that UML, SYSML and will investigate the verification tool by considering its formal verifi-
MARTE profiles are frequently used to model embedded systems re- cation technique used to perform model verification e.g. probabilistic
quirements. We will investigate the modeling tools for potential UML, automata, Finite State Machine (FSM) etc.
SYSML and MARTE profiles support.

4.2.2.2. Model transformation characteristics. The only defined pa- 4.2.2.4. Simulation characteristics. From the SLR, it has been observed
rameter in the model transformation category is the type of that most of research works integrate available simulation tools to
transformation. perform the required simulation. Therefore, the most important char-
Transformation type: There are two important transformation acteristic of simulation tool is its integration capability as given be-
approaches i.e. model-to-model (M2M) and model-to-text (M2T). We low:
158 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Table 7
Modeling tools used in MBSE for embedded systems.

Sr. no. Tool name General characteristics Activity specific characteristics

License type Customizability Supported platforms XMI support Profiles support

1. Magic Draw (Magic Draw, 2014) Proprietary (no magic) Partial Windows Linux Yes UML/SYSML/MARTE
2. Modelio Editor (Modelio, 2012) GPL Full Windows Linux Yes UML/SYSML/MARTE
3. Rhapsody (IBM Rhapsody, 2014) Proprietary, (IBM) Partial Windows Linux Yes UML/SYSML/MARTE
4. PapyrusMDT (Papyrus MDT 0004) EPL Full Windows Linux Yes UML/SYSML/MARTE
5. Artisan Studio (Artisan Studio, 2014) Proprietary (Atego) No Windows Yes UML/SYSML/MARTE
6. Visual Paradigm (Visual Paradigm, 2014) Proprietary (Visual paradigm) No Windows Linux Yes UML/SYSML

Table 8
Tools for model transformation in MBSE for embedded systems.

Sr. no. Tool name General characteristics Activity specific characteristics

License type Customizability Supported platforms Transformation type

1. MediniQVT (QVT Project, 2014) EPL Full Windows Linux/Mac M2M


2. ATL (Eclipse ATL, 2014) EPL Full Windows Linux M2M
3. Xpand (MDWorkbench platform 0006) EPL Full Windows Linux M2T
4. Acceleo (Eclipse Acceleo, 2014) EPL Full Windows Linux M2T
5. Apache Velocity (Apache Software Foundation, 2010) ASL Full Windows Linux M2T
6. MDworkbench (MDWorkbench platform 0007) Proprietary (Sodius) Partial Windows Linux Both
7. QVTO (104) EPL Full Windows Linux M2M
8. MOFScript (Eclipse 0014) EPL Full Windows Linux M2T
9. Epsilon (Eclipse Epsilon, 2014) EPL Full Windows Linux Both
10. JET (Eclipse JET, 2014) EPL Full Windows Linux M2T
11. Henshin (Eclipse HENSHIN, 2014) EPL Full Windows Linux Both
12. Viatra2 (Eclipse VIATRA, 2014) EPL Full Windows Linux Both

Integration capability: This characteristic defines the ability of a characteristic of a modeling tool as it provides standard data ex-
simulation tool to support its seamless integration in a given working change mechanism between different tools which is a primary re-
environment. We define three parameters to explain integration ca- quirement in most of the cases. We also evaluate the tool support for
pability of a tool. “Low” means tool provides low integration capabil- UML and its SYSML and MARTE profiles as these profiles are normally
ity. “Medium” means tool provides good integration support. “High” used together in different combinations (Table 4) to capture require-
means tool provides high integration features for its potential inte- ments of large and complex systems. However, there might exist a
gration in a given working environment. number of other modeling tools that provide enhanced support for
SYSML and MARTE profiles individually in a particular modeling con-
4.3. Tools evaluation outcomes text. For example, OBEO SysML Designer (2015) is a typically SYSML
modeling tool available as a free eclipse plugin. Similarly, TimeSquare
We thoroughly analyze identified tools (Table 6) according to pre- MARTE Tool (2014) is a typical example of MARTE tools.
defined characteristics (Section 4.2). Furthermore, we also search for We identify 12 model transformation tools as given in Table 8.
any important tools that have been missed during the SLR but fre- Some tools are capable of performing both M2M and M2T transfor-
quently used in research/industrial practices (Eclipse HENSHIN, 2014; mations. These tools are highly customizable to perform the desired
Eclipse JET, 2014). On the basis of detailed tools evaluation, we cate- model transformations. These tools can easily be integrated into a
gorize the tools into four MBSE activities (i.e. modeling, model trans- given working environment due to their high customizability.
formation, model verification and simulation). The two general-purpose model verification tools have been
We analyze six tools that are frequently used to model embedded identified in Table 9. These tools are frequently used in various re-
systems requirements through UML/SYSML/MARTE notations as search/industrial practices due to their high level of customizability.
given in Table 7. The tools presented are mainly used to perform PRISM (Kwiatkowska et al., 2011) is capable of analyzing models
model development activities and support different UML profiles. based on discrete-time Markov chains (DTMCs), Markov decision
However, some modeling tools also provide partial support for processes (MDPs), continuous-time Markov chains (CTMCs), proba-
other MBSE activities as well. For example, Modelio (2012) and IBM bilistic timed automata (PTAs) and probabilistic automata (PAs).
Rhapsody (2014) provide partial facility to generate source code The Zot tool is customized by Quadri et al. (2012) to even sup-
(which is a kind of model transformation) but it is inadequate for the port partial model simulation features for embedded systems. The
development of complex and large embedded systems. presented verification tools can easily be tailored according to given
We evaluate two activity specific characteristics for modeling model verification requirements. On the other hand, the various other
tools i.e. XMI and UML profiles support. It is a fact that the XMI verification tools are also available but these are inflexible due to
support in tools does not guarantee trouble-free data exchange. For their partial customization support and limitations. For example,
example, there are different versions of XMI standard (e.g. 1, 1.2, 2 UPPAAL Tool (2014) is timed automata based tool that provide verifi-
etc.) and UML (e.g. 1, 2 etc.). Consequently, a document containing a cation support but it is bond with its own graphical editor and mod-
UML model can be serialized in different combinations of XMI and eling methodology.
UML versions. On the other hand, tools normally do not provide sup- We identified four simulation tools as given in the Table 10. The
port to all versions of XMI and UML. Therefore, the XMI functional- selection of an appropriate simulation tool is always challenging.
ity in tools does not ensure the straightforward data exchange. Sim- The simulation tools are highly bonded with their own model de-
ilarly, there are various other XMI data exchange issues that can be velopment environment. Moreover, a seamless integration of sim-
viewed at (TUCS Technical Report, 2015). Despite the certain XMI data ulation tools in a particular working environment is very difficult.
exchange issues, we believe that XMI support is still an important Furthermore, full feature support for different hardware description
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 159

Table 9
Model verification tools.

Sr. no. Tool name General characteristics Activity specific characteristics

License type Customizability Supported platforms Verification approach

1. PRISM (Kwiatkowska et al., 2011) GPL Full Windows Linux DTMC, CTMC, MDP PA, PTA
2. Zot (Zot tool, 2014) GPL Full Windows Linux TRIO metric temporal logic

Table 10
Simulation tools.

Sr. no. Tool name General characteristics Activity specific characteristics

License type Customizability Supported platforms Integration capability

1. SIMULINK (Math works Simulink, 2014) Proprietary (Math Works) Partial Windows Linux High
2. ActiveHDL (Active HDL, 2014) Proprietary (ALDEC) Partial Windows Low
3. QEMU (Qemu, 2014) GPL Full Windows Linux High
4. OpenModelica (OMC) (OpenModelica Compiler (OMC), 2014) GPL Full Windows Linux High

Table 11
Frameworks and toolsets to perform various MBSE activities for embedded systems.

Sr. no. Name License type Supported platforms Activity specific characteristics type

1. EMF (Eclipse Modelling Framework 0015) EPL Windows Linux Framework


2. Topcased (Topcased Tool, 2014) EPL Windows Linux Toolset
3. Gaspard2 (DaRT team, GASPARD SoC Framework, 2010) GPL Windows Linux Toolset
4. TTool (Ttool, 2014) CeCIll Windows Linux Toolset

languages within a single simulation tool is not possible. For exam- of embedded systems. It is also build on Eclipse framework. TTool is
ple, none of the four simulation tools (Table 10) fully support Sys- a toolset that support verification and simulation of embedded sys-
tem Verilog Assertions. Mentor Graphics Questa SIM (2014) support tems, developed in particular UML and SYSML diagrams. It supports
SVA but it lacks certain other features. Therefore, selection of appro- TURTLE, DIPLODOCUS and AVATAR profiles (Ttool, 2014). The major
priate simulation tool is totally dependent on the specific simulation drawback of TTool is its inflexibility as it is mandatory to develop
requirements. models only in supported UML and SYSML diagrams/profiles.
Another important aspect is that the Modelica language is
frequently used to perform MBSE simulation activities in various
5. Answers of research questions
research/industrial practices. For example, in our 61 selected re-
searches, Modelica is used in MADES project (Baresi et al., 2013) and
Research question 1: What important researches have been re-
Berrani et al. (2013) to perform early design verification through
ported from 2008 to 2014 where MBSE approach has been utilized to
simulation. However, these researches (Berrani et al., 2013; Baresi
support the development of embedded systems?
et al., 2013) do not provide the details of Modelica tools that have
Answer: 61 important researches, published from 2008 to
been used in their research works. That’s why we have not included
2014, have been identified as per selection and rejection criterion
any Modelica related tool in our preliminary tool identification (Table
(Section 2.2.1). These researches are classified into six corresponding
6). However, we find chain of Modelica tools (OpenModelica Tools;
categories. The details are as follows:
Modelica organization) during our initial tools evaluation (Section
4.1). Consequently, we have included one renowned Modelica tool, • Thirty-six researches have been identified in the General category
OpenModelica Complier (OMC) (OpenModelica Compiler (OMC), (Section 2.1.1).
2014) as given in Table 10, used in various industries (OpenModelica • Modeling is the foremost activity of MBSE and all other activi-
Industrial Users, 2015) to perform MBSE simulation activities. ties usually depend on it. Therefore, most of the MBSE researches
We have also identified frequently used toolsets and frameworks present particular modeling context in their work. However, there
to perform various MBSE activities. A toolset is a collection of tools are few researches where only modeling aspects are researched
used to perform various MBSE activities in particular environment without performing any other MBSE activity. We identify five such
whereas framework is the complete environment that support va- researches and list these in the Modeling category (Section 2.1.2).
riety of MBSE tools/toolsets work together to perform wide-ranging • Eleven researches have been identified in the Model Transforma-
MBSE activities. The identified toolsets and frameworks are given in tion Category (Section 2.1.4).
Table 11. • Five researches have been identified and listed in the Model Veri-
Framework: Eclipse Modeling Framework (EMF) is a leading fication Category (Section 2.1.5).
framework supporting various tools and techniques for the develop- • Two researches have been identified and listed in the Simulation
ment of wide-ranging MDE (model driven engineering) applications. Category (Section 2.1.6).
There are varieties of modeling, model transformation and verifica- • Two researches have been identified and listed in the Property
tion tools those are built on top of EMF (e.g. Topcased, Gaspard2 etc.). Specification Category (Section 2.1.3).
Toolset: Topcased is a complete toolset for the development of
embedded systems through MBSE approach. It is built on top of The overview, publication year, validation method and description
Eclipse Modeling Framework. Topcased is currently migrating to of each selected technique can be found at (MODEVES Project 0000).
PolarSys (2014) (open source tools for embedded systems). Gaspard2 Research question 2: Which of the UML and its SYSML/MARTE
provides a complete toolset to support MBSE modeling, model trans- profiles are more frequently utilized to model embedded system re-
formation, verification and validation activities for the development quirements during 2008–2014 researches?
160 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Answer: It has been analyzed that UML and its SYSML/MARTE activity is the transformation of given model into domain specific
profiles are not only used individually but their combined utilizations model for formal verification of the system. M2M and M2T trans-
are also very common as given in Table 4. On the basis of SLR, we an- formations are usually used to attain the desired outcomes. M2M is
alyze that SYSML profile is more frequently used to model embedded more frequently used as compared to M2T (Table 5) due to its accu-
systems requirements. Further details are available in Table 4. racy of model transformation. On the other hand, M2T approach is
Research question 3: Which of the model-to-model and model- highly flexible as it can easily be customized according to the target
to-text transformation approaches are more frequently utilized dur- domain. Consequently, the simultaneous use of both M2M and M2T
ing 2008–2014 researches? approaches is very common (Table 5) for the development of large
Answer: We identify 35 selected researchers where model trans- and complex embedded systems.
formation has been performed. 14 researches use M2M approach, 9 Discussion on model verification: Model verification activity is
researches use M2T approach and 12 researches use both M2M and performed to ensure the correctness of given model. Model transfor-
M2T approaches as given in Table 5. It shows that the M2M approach mation is performed to convert the given model into specific model
is slightly more used as compared to M2T approach. It is also ana- that support formal verification technique to verify the behavioral
lyzed that the simultaneous use of both M2M and M2T approaches is and temporal aspects of the model/system. However, the capability
very common in contemporary research practices. Further details are of formal verification approaches is questionable regarding the com-
available in Table 5. plete verification of all behavioral aspects of the given model. Finally,
Research question 4: What are the significant tools for require- it can be concluded that model verification activity speedup and ease
ment specifications, model transformation, verification and simu- the development of embedded systems but it may not completely
lation (validation) activities in the context of MBSE for embedded verify all behavioral aspects of the large and complex embedded
systems? systems.
Answer: On the basis of SLR, we identified 39 preliminary tools to Discussion on simulation: Validation of the system is performed
support MBSE approach for the development of embedded systems through simulation by making use of the generated source code. Re-
as given in Table 6. We perform evaluation (Section 4) of preliminary searchers usually utilize available simulation tools for the valida-
tools by considering significant tools characteristics (Section 4.2) and tion of the system (Sakairi et al., 2012; Vanderperren et al., 2008).
finally present 28 tools in five categories as follows However, some researchers develop their own simulation mecha-
nism/tool for validation (Giuseppe Di et al., 2013). Consequently, the
• Six modeling tools are presented to specify embedded systems most important activity of simulation is the selection or development
requirements. of appropriate simulation tool because different simulation mecha-
• Twelve tools are presented to perform model transformation nism/tool are required for the simulation of source code of different
activities. languages. Another important aspect of the simulation activity is the
• Two tools are presented to perform model verification activities. knowledge of simulation environment/variable to perform accurate
• Four tools are presented to perform simulation activities. simulation. This normally requires specifying some simulation infor-
• Four frameworks are presented to support various MBSE activities mation within the developed models. Finally, it can be concluded that
simultaneously. simulation of the model is highly dependent on the type of automati-
cally generated executable source code. It may also require specifying
6. Discussion and limitations some simulation aspects in the models.
Discussion on MBSE tools selection: The selection of appropri-
Discussion on modeling embedded systems requirements: It is ate MBSE tools is always challenging due to the wide-ranging be-
analyzed that modeling activity is the core of MBSE approach because havioral/temporal aspects of embedded systems. Moreover, a seam-
all other activities (i.e. model transformation, verification and sim- less integration of different tools within a single platform is another
ulation) are tightly coupled with this activity. Therefore, embedded problem. It is always difficult to find a complete solution for verifi-
systems requirements are modeled by considering various important cation and simulation of models due to the complexity of embedded
verification and validation aspects. UML and its SYSML/MARTE pro- systems. From this research, it has been analyzed that Eclipse plat-
files are frequently used in different combinations to specify struc- form (Eclipse Platform, 2014) is playing the leading role by provid-
tural and behavior aspects because it is challenging to specify the ing various frameworks (e.g. EMF, GMF etc.) and tools to support dif-
complete requirements for complex systems through a single profile ferent MBSE activities for embedded systems. Various tools are built
individually. On the other hand, there are certain issues while inte- on top of the Eclipse platform and available as eclipse plug-in (e.g.
grating UML and its SYSML/MARTE profiles (Espinoza et al., 2009; papyrus, Topcased etc.). Further, Eclipse-based frameworks and tools
Rota Sena Marques et al., 2014). Another big challenge is to select are highly customizable and can be altered according to diverse MBSE
the appropriate property specification approach while specifying var- requirements.
ious properties and constraints in the models. MARTE profile pro- Limitations of research: Although, we have completely followed
vides rich support for timing constraints but that is not sufficient the guidelines of SLR (Kitchenham, 2004) and strictly observed the
enough to specify all behavioral and structural aspects of embedded developed review protocol, there are still certain limitations:
systems. Therefore, MARTE profile is rarely utilize alone (Table 4). It
is mostly used in different combinations with UML and SYSML. An- • We have used the appropriate search terms and thoroughly
other interesting fact is that SYSML is the profile that provides good scanned the search results. However, few search terms returned
capabilities to model both structural and behavioral aspects alone. thousands of results and cannot be scanned exhaustively. Further-
Block definition, parametric, activity and state machine diagrams of more, we have rejected number of researches on the basis of its
SYSML are frequently used in contemporary researches (Berrani et al., title and there is a possibility that contents of the research are not
2013; Sakairi et al., 2012; Stancescu et al., 2010; Anargyros et al., 2014; properly defined in the title. Consequently, we do not claim the
Ouchani et al., 2013). exhaustiveness of our research in this article.
Discussion on model transformation: It is the key activity for fur- • We have used four renowned scientific databases i.e. IEEE,
ther verification and validation of the system. It is used to perform ELSEIVER, ACM and SPRINGER. These databases provide large
various operations; however, the most important outcome of this ac- amount of journal and conference publications. However, a lot of
tivity is the executable source code in the target domain for valida- research work is provided by other databases. Therefore, there is
tion (Simulation) of the system. Another important outcome of this a fair chance that we have missed latest relevant researches from
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 161

other databases. However, we believe that ultimate findings of Bouquet, F., Gauthier, J.-M., Hammad, A., Peureux, F., 2012. Transformation of
this SLR are not affected significantly because selected scientific SysML structure diagrams to VHDL-AMS. In: Second Workshop on Design, Con-
trol and Software Implementation for Distributed MEMS (dMEMS), pp. 74–81.
databases provide high quality latest research literature. doi:10.1109/dMEMS.2012.12.
Bousse, E., Mentre, D., Combemale, B., Baudry, B., Katsuragi, T., 2012. Aligning SysML
7. Conclusions with the B method to provide V&V for systems engineering. In: Proceedings of the
Workshop on Model-Driven Engineering, Verification and Validation. ACM, pp. 11–
16. doi:10.1145/2427376.2427379.
This research presents the latest trends, approaches and tools Bybell T. 0008. Gtkwave. http://home.nc.rr.com/gtkwave/index.html
to support MBSE for the development of embedded systems. To CeCILL License, Last Accessed August 2014. http://www.cecill.info/index.en.html
Chen, D.J., Feng, L., Naseer Qureshi, T., Lonn, H., Hagl, F., 2013. An architectural approach
accomplish this objective, SLR has been performed to identify 61 to the analysis, verification and validation of software intensive embedded sys-
research practices. On the basis of different MBSE activities, selected tems. Computing 95 (8), 649–688. doi:10.1007/s00607-013-0314-4.
researches are further classified into six different categories and 39 Chouali, S., Hammad, A., 2011. Formal verification of components assembly based
on SysML and interface automata. Innov. Syst. Softw. Eng. 7 (4), 265–274.
preliminary tools are identified. Subsequently, a comprehensive anal-
doi:10.1007/s11334-011-0170-3.
ysis is performed on the identified tools by considering various im- DaRT team, GASPARD SoC Framework, 2010. Available from: http://www.gaspard2.org/
portant MBSE characteristics for the development of embedded sys- de Lara, J., Guerra, E., 2014. Towards the flexible reuse of model transformations: a for-
mal approach based on graph transformation. J. Logic. Algebraic Methods Program.
tems. Consequently, 28 tools have been presented in five different
83 (5–6), 427–458. doi:10.1016/j.jlamp.2014.08.005.
categories to support modeling, model transformation, verification DeTommasi, G., Vitelli, R., Boncagni, L., Neto, A.C., 2013. Modeling of MARTe-
and validation activities. In addition to tools evaluation, this research based real-time applications with SysML. IEEE Trans. Ind. Inf. 9 (4), 2407–2415.
also investigates the utilization of UML and its SYSML/MARTE pro- doi:10.1109/TII.2012.2235073.
Doering, D., 2014. A model driven engineering methodology for embedded system
files individually as well as simultaneously for the development of designs—HIPAO2. In: 12th IEEE International Conference on Industrial Informatics
embedded systems. Furthermore, the application of both model-to- (INDIN), pp. 787–790. doi:10.1109/INDIN.2014.6945614.
model and model-to-text transformations have also been analyzed. Doligalski, M., Adamski, M., 2013. UML state machine implementation in FPGA devices
by means of dual model and Verilog Translation UML diagrams into Verilog. In:
Thus, MBSE trends, approaches and important tools for the devel- Eleventh International Conference on Industrial Informatics (INDIN), pp. 177–184.
opment of embedded system are publicized under a single research doi:10.1109/INDIN.2013.6622878.
which is rarely available to the best of our knowledge. This will facil- Durand, S.H.M., Bonato, V., 2012. A tool to support Bluespec System Verilog coding
based on UML diagrams. In: IEEE 38th Annual Conference on Industrial Electronics
itate researchers, practitioners and developers to select appropriate IECON, pp. 4670–4675. doi:10.1109/IECON.2012.6389493.
MBSE approach and tools according to their requirements. Eclipse 0014. MofScript. http://eclipse.org/gmt/mofscript/
Eclipse Acceleo, Last Accessed August 2014. https://wiki.eclipse.org/Acceleo/
Eclipse ATL, Last Accessed August 2014. www.eclipse.org/atl/
Acknowledgments Eclipse Epsilon, Last Accessed October 2014. http://www.eclipse.org/epsilon/
Eclipse HENSHIN, Last Accessed October 2014. http://www.eclipse.org/henshin/
This project is funded by NSTIP (National Science Technology, In- Eclipse JET, Last Accessed October 2014. http://www.eclipse.org/modeling/m2t/
?project=jet
novative Plan), Saudi Arabia under the Technology Area “Information
Eclipse Modelling Framework, 0015. Available from: http://www.eclipse.org/
Technology Strategic Priorities” and Track “Software Engineering and modeling/emf/
Innovated Systems”. We acknowledge the support of KACST (King Eclipse Platform, Last Accessed June, 2014. http://eclipse.org/eclipse/
Abdulaziz City for Science and Technology) and STU (Science and Eclipse Public License, Last Accessed August 2014. https://www.eclipse.org/legal/epl-
v10.html
Technology Unit) Makkah (grant no. 13-INF761-10). Eclipse VIATRA, Last Accessed October 2014. https://eclipse.org/viatra2/
Eclipse Xpand 0006. https://www.eclipse.org/modeling/m2t/?project=xpand
References Eclipse, 0105 M2M/Operational QVT Project. https://projects.eclipse.org/projects/
modeling.mmt.qvt-oml
ACM, Last Accessed July 2014. http://dl.acm.org/ Elhaji, M., Boulet, P., Zitouni, A., Meftali, S., Dekeyser, J.-L., Tourki, R., 2012. System level
Active HDL, Last Accessed, October 2014. https://www.aldec.com/en/products/fpga_ modeling methodology of NoC design from UML-MARTE to VHDL. Des. Autom. Em-
simulation/active-hdl bed. Syst. 16 (4), 161–187. doi:10.1007/s10617-012-9101-2.
Alizadeh, B., Behnam, P., 2013. Formal equivalence verification and debugging tech- Elsevier, Last Accessed July 2014. http://www.sciencedirect.com/
niques with auto-correction mechanism for RTL designs. Microprocess. Microsyst. Espinoza, H., Cancila, D., Selic, B., Gerard, S., 2009. Challenges in combining SysML
37 (8), 1108–1121. and MARTE for model-based design of embedded systems. LNCS 5562, 98–113.
Anargyros, T., George-Dimitrios, K., Vassilis, D., Mara, N., Dimosthenis, A., 2014. Inte- doi:10.1007/978-3-642-02674-4_8.
grating simulation capabilities into SysML for enterprise information system de- Feher, P., Lengyel, L., 2012. The challenges of a model transformation language. In: IEEE
sign. In: Ninth International Conference on System of Systems Engineering (SOSE), 19th International Conference and Workshops on Engineering of Computer Based
pp. 272–277. doi:10.1109/SYSOSE.2014.6892500. Systems (ECBS), pp. 324–329. doi:10.1109/ecbs.2012.6487443.
Andrade, E., Maciel, P., Callou, G., Nogueira, B., 2009. A methodology for mapping SysML Ge, N., Pantel, M., Cregut, X., 2012. Formal specification and verification of task time
activity diagram to time petri net for requirement validation of embedded real- constraints for real-time systems. LNCS 7610, 143–157. doi:10.1007/978-3-642-
time systems with energy constraints. In: Third International Conference on Digital 34032-1_16.
Society ICDS, pp. 266–271. doi:10.1109/ICDS.2009.19. General Public License, Last Accessed August 2014. http://www.gnu.org/licenses/
Andrea Bollati, V., Manuel Vara, J., Jimenez, A., Marcos, E., 2013. Applying MDE to the gpl.html
(semi-)automatic development of model transformations. Inf. Softw. Technol. 55 George-Dimitrios, K., Vassilis, D., Anargyros, T., Mara, N., Dimosthenis, A., 2014. Model-
(4), 699–718. doi:10.1016/j.infsof.2012.11.004. based system engineering using SysML: deriving executable simulation models
Apache License, Last Accessed August 2014. http://www.apache.org/licenses/ with QVT. In: Eighth Annual IEEE Systems Conference (SysCon), pp. 531–538.
Apache Software Foundation (2010, November). The Apache Velocity Project. [Online]. doi:10.1109/SysCon.2014.6819307.
Available: http://velocity.apache.org/ Giuseppe Di, G., Luigi Di, G., Andreas, F., Masahiro, F., Franco, F., Cristina, M.,
Artisan Studio, Last Accessed October, 2014. http://www.atego.com/products/atego- Graziano, P., 2013. On the integration of model-driven design and dynamic
modeler/ assertion-based verification for embedded software. J. Syst. Softw. 86 (8), 2013–
Baresi, L., Blohm, G., Kolovos, D.S., Matragkas, N., Motta, A., Paige, R.F., Radjenovic, A., 2033. doi:10.1016/j.jss.2012.08.061.
Rossi, M., 2013. Formal verification and validation of embedded systems: the UML- Gomez, C., DeAntoni, J., Mallet, F., 2012. Multi-view power modeling based on UML
based MADES approach. Softw. Syst. Model. doi:10.1007/s10270-013-0330-z. MARTE and SysML. In: 38th EUROMICRO Conference on Software Engineering and
Bazydlo, G., Adamski, M., Stefanowicz, L., 2014. Translation UML diagrams into Ver- Advanced Applications (SEAA), pp. 17–20. doi:10.1109/SEAA.2012.66.
ilog. In: Seventh International Conference on Human System Interactions (HSI), Greenyer, J., Kindler, E., 2010. Comparing relational model transformation technolo-
pp. 267–271. doi:10.1109/HSI.2014.6860487. gies: implementing query/view/transformation with Triple Graph Grammars.
Behjati, R., Yue, T., Nejati, S., Briand, L., Selic, B., 2011. Extending SysML with AADL Softw. Syst. Model. 9 (1), 21–46. doi:10.1007/s10270-009-0121-8.
concepts for comprehensive system architecture modeling. LNCS 6698, 236–252. Gronmo, R., Moller-Pedersen, B., Olsen, G.K., 2009. Comparison of three model transfor-
doi:10.1007/978-3-642-21470-7_17. mation languages. Model Driven Arch.—Found. Appl. 5562, 2–17. doi:10.1007/978-
Berrani, S., Hammad, A., Mountassir, H., 2013. Mapping SysML to Modelica to 3-642-02674-4_2.
validate wireless sensor networks non-functional requirements. In: Eleventh Guerra, E., de Lara, J., Kolovos, D., Paige, R., 2010. A visual specification language for
International Symposium on Programming and Systems (ISPS), pp. 177–186. model-to-model transformations. In: IEEE Symposium on Visual Languages and
doi:10.1109/ISPS.2013.6581484. Human-Centric Computing (VL/HCC), pp. 119–126. doi:10.1109/VLHCC.2010.25.
162 M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163

Herrera, F., Posadas, H., Penil, P., Villar, E., Ferrero, F., Valencia, R., Palermo, G., 2014. The Penil, P., Medina, J., Posadas, H., Villar, E., 2010. Generating heterogeneous executable
COMPLEX methodology for UML/MARTE modeling and design space exploration specifications in SystemC from UML/MARTE models. Innov. Syst. Softw. Eng. 6 (1–
of embedded systems. J. Syst. Arch. 60 (1), 55–78. doi:10.1016/j.sysarc.2013.10.003. 2), 65–71. doi:10.1007/s11334-009-0105-4.
Huang, X., Sun, Q., Li, J., Pan, M., Zhang, T., 2012. An MDE-based approach PolarSys, Last Accessed October 2014. http://polarsys.org/
to the verification of SysML state machine diagram. In: Proceedings of the Qemu, Last Accessed October 2014. www.qemu.org
Fourth Asia-Pacific Symposium on Internetware Software, Article 9. ACM Quadri, I.R., Brosse, E., Gray, I., Matragkas, N., Soares Indrusiak, L., Rossi, M., Bagnato, A.,
doi:10.1145/2430475.2430484. Sadovykh, A., 2012. MADES FP7 EU project: effective high level SysML/MARTE
IBM Rhapsody, Last Accessed September 2014. http://www-03.ibm.com/software/ methodology for real-time and embedded avionics systems. In: Seventh Interna-
products/pk/en/ratirhapfami/ tional Workshop on Reconfigurable Communication-centric Systems-on-Chip (Re-
IBM, “Eclipse modeling framework,” 2008. http://www.eclipse.org/gef/ CoSoC), pp. 1–8. doi:10.1109/ReCoSoC.2012.6322882.
IEEE scientific database, Last Accessed, July 2014. http://ieeexplore.ieee.org/ QVT Project, Last Accessed October 2014. http://projects.ikv.de/qvt
Jin, N., Shen, C., Chen, J., Ni, T., 2008. Engineering of an assertion-based PSLSimple -Verilog Rafiq Quadri, I., Gamatie, A., Boulet, P., Meftali, S., Dekeyser, J.-L., 2012. Expressing
dynamic verifier by alternating automata. Electron. Notes Theor. Comput. Sci. 207, embedded systems configurations at high abstraction levels with UML MARTE
153–169. doi:10.1016/j.entcs.2008.03.091. profile: advantages, limitations and alternatives. J. Syst. Arch. 58 (5), 178–194.
Kitchenham, B., 2004. Procedures for Performing Systematic Reviews. Keele University doi:10.1016/j.sysarc.2012.01.001.
TR/SE-0401/NICTA, Technical Report 0400011T. Riccobene, E., Scandurra, P., 2012. Integrating the SysML and the SystemC-UML profiles
Knorreck, D., Apvrille, L., 2011. TEPE: a SysML language for time-constrained prop- in a model-driven embedded system design flow. Des. Autom. Embed. Syst. 16 (3),
erty modeling and formal verification. ACM SIGSOFT Softw. Eng. Notes 36 (1), 1–8. 53–91. doi:10.1007/s10617-012-9097-7.
doi:10.1145/1921532.1921556. Rose, L.M., Matragkas, N., Kolovos, D.S., Paige, R.F., 2012. A feature model for model-to-
Ko, J.-W., Chung, K.-Y., Han, J.-S., 2013. Model transformation verification using similar- text transformation languages. ICSE Workshop on Modeling in Software Engineer-
ity and graph comparison algorithm. Multimedia Tools Appl. doi:10.1007/s11042- ing (MISE) 57–63. doi:10.1109/MISE.2012.6226015.
013-1581-y. Rota Sena Marques, M., Siegert, E., Brisolara, L., 2014. Integrating UML, MARTE and
Kolahdouz-Rahimi, S., Lano, K., Pillay, S., Troya, J., Van Gorp, P., 2014. Evaluation of SysML to improve requirements specification and traceability in the embedded
model transformation approaches for model refactoring. Sci. Comput. Program. 85 domain. In: 12th IEEE International Conference on Industrial Informatics (INDIN),
(Part A), 5–40. doi:10.1016/j.scico.2013.07.013. pp. 176–181. doi:10.1109/INDIN.2014.6945504.
Kwiatkowska, M., Norman, G., Parker, D., 2011. PRISM 4.0: verification of probabilistic Rutle, A., Rossini, A., Lamo, Y., Wolter, U., 2012. A formal approach to the specification
real-time systems. CAV, Ser. LNCS. Springer, pp. 585–591. and transformation of constraints in MDE. J. Logic Algebraic Program. 81 (4), 422–
Launiainen, T., Heljanko, K., Junttila, T., 2010. Efficient model checking of PSL safety 457. doi:10.1016/j.jlap.2012.03.006.
properties. In: Tenth International Conference on Application of Concurrency to Sakairi, T., Palachi, E., Cohen, C., Hatsutori, Y., Shimizu, J., Miyashita, H., 2012. Design-
System Design (ACSD), pp. 95–104. doi:10.1109/ACSD.2010.27. ing a control system using SysML and Simulink. In: Proceedings of SICE Annual
Lecomte, S., Guillouard, S., Moy, C., Leray, P., Soulard, P., 2011. A codesign methodol- Conference, pp. 2011–2017.
ogy based on model driven architecture for real time embedded systems. Math. Sparx Systems Enterprise Architecture 0002. http://www.sparxsystems.com/resources/
Comput. Model. 53 (3–4), 471–484. doi:10.1016/j.mcm.2010.03.035. mdg_tech/
Ledo, A., Ramalho, F., Melo, N., 2012. MetaTT—a meta model based approach for writing Springer, Last Accessed July 2014. http://link.springer.com/
textual transformations. In: Sixth Brazilian Symposium on Software Components Stancescu, S., Neagoe, L., Marinescu, R., Enoiu, E.P., 2010. A SysML model for code cor-
Architectures and Reuse (SBCARS), pp. 61–70. doi:10.1109/SBCARS.2012.21. rection and detection systems. In: Proceedings of 33rd International Convention
Linehan, E., Clarke, S., 2012. An aspect-oriented, model-driven approach MIPRO, pp. 189–191.
to functional hardware verification. J. Syst. Arch. 58 (5), 195–208. SYSML to B tool. Last Accessed October 2014. http://www.irisa.fr/triskell/Software/
doi:10.1016/j.sysarc.2011.02.001. protos/sysml2b/index_html
Magic Draw, Last Accessed October 2014. http://www.nomagic.com/products/ Taentzer, G., 2004. AGG: A Graph Transformation Environment for Modeling and Vali-
magicdraw.html dation of Software, 3062. Springer, pp. 446–453.
Mallet, F., 2012. Automatic generation of observers from MARTE/CCSL. In: Telinski Wiedermann anger, L., Wisniewski Soares, I., Cezar Stadzisz, P., 2013. A Brazil-
23rd IEEE Symposium on Rapid System Prototyping (RSP), pp. 86–92. ian survey on UML and model-driven practices for embedded software develop-
doi:10.1109/RSP.2012.6380695. ment. J. Syst. Softw. 86 (4), 997–1005.
Mallet, F., Millo, J.-V., de Simone, R., 2013. Safe CCSL specifications and marked graphs. TimeSquare MARTE tool, Last Accessed December 2014. http://timesquare.inria.fr/
In: 11th IEEE/ACM International Formal Methods and Models for Codesign (MEM- TMC, Last Accessed October 2014 http://se.kaist.ac.kr/nmchau/tmc/.
OCODE), pp. 157–166. Topcased Tool, Last Accessed August 2014. http://www.topcased.org/
Math works Simulink, Last Accessed August 2014. www.mathworks.com/products/ Ttool, Last Accessed October 2014. http://ttool.telecom-paristech.fr/
simulink/ TUCS Technical Report, Last Accessed April 2015. http://www.it.abo.fi/crest/
“MDWorkbench platform” 0007. www.mdworkbench.com, from SODIUS. publications/public/2005/TR675.pdf
Mentor Graphics Questa SIM, Last Accessed November 2014. http://www.mentor. Uchevler, B.N., Svarstad, K., 2013. Assertion based verification using PSL-like properties
com/products/fv/questa/ in Haskell. In: 16th International Symposium on Design and Diagnostics of Elec-
Mentor Graphics, Catapult synthesis tool, 0016. www.mentor.com tronic Circuits & Systems (DDECS), pp. 254–257. doi:10.1109/DDECS.2013.6549828.
Modelica organization. https://www.modelica.org/tools UPPAAL Tool, Last Accessed October 2014. http://www.uppaal.com/
Modelio, Open source UML Editor and MDE Workbench, 2012. www.modelio.org Vanderperren, Y., Mueller, W., Dehaene, W., 2008. UML for electronic systems de-
MODEVES Project 0000. Overview of 61 selected research works. sign: a comprehensive overview. Des. Autom. Embed. Syst. 12 (4), 261–292.
http://www.modeves.com/overview%20of%20researches.html doi:10.1007/s10617-008-9028-9.
MODEVES Project 0001. Details of search terms. http://www.modeves.com/ Vidal, J., de Lamotte, F., Gogniat, G., Soulard, P., Diguet, J.-P., 2009. A co-design approach
searchterms.html for embedded system modeling and code generation with UML and MARTE. In:
Moreira, T.G., Wehrmeister, M.A., Pereira, C.E., Petin, J.-F., Levrat, E., 2010. Automatic Conference and Exhibition Design Automation and Test in Europe (DATE), pp. 226–
code generation for embedded systems: from UML specifications to VHDL code. In: 231. doi:10.1109/DATE.2009.5090662.
IEEE Eighth International Conference on Industrial Informatics (INDIN), pp. 1085– Visual Paradigm, Last Accessed October 2014. http://www.visual-paradigm.com
1090. doi:10.1109/INDIN.2010.5549590. Wehrmeister, M.A., Freitas, E.P., Pereira, C.E., Ramming, F., 2008. GenERTiCA: a tool for
Mueller, W., He, D., Mischkalla Arthur Wegele, F., Whiston, P., Penil, P., Vil- code generation and aspects weaving. In: 11th IEEE Symposium on Object Oriented
lar, E., 2010. The SATURN approach to SysML-based HW/SW codesign. Real-Time Distributed Computing (ISORC). Orlando.
In: IEEE Computer Society Annual Symposium on VLSI (ISVLSI), pp. 506– Wood, S., Akehurst, D., Uzenkov, O., Howells, W., McDonald-Maier, K., 2008. A model-
511. doi:10.1109/ISVLSI.2010.95. driven development approach to mapping UML state diagrams to synthesizable
Nguyen, M.C., Jee, E., Choi, J., Bae, D.-H., 2014. Automatic construction of VHDL. IEEE Trans. Comput. 57 (10), 1357–1371.
timing diagrams from UML/MARTE models for real-time embedded soft- Wood, S.K., Akehurst, D.H., Uzenkov, O., Gareth, W., Howells, J., McDonald-
ware. In: Proceedings of the 29th Annual ACM Symposium, pp. 1140–1145. Maier, K.D., 2008. A model-driven development approach to mapping UML
doi:10.1145/2554850.2555011. state diagrams to synthesizable VHDL. IEEE Trans. Comput. 57 (10), 1357–1371.
OBEO SysML Designer, Last Accessed April 2015. http://marketplace.obeonetwork.com/ doi:10.1109/TC.2008.123.
module/sysml Yin, L., Liu, J., Ding, Z., Mallet, F., de Simone, R., 2013. Schedulability analysis with CCSL
OpenModelica Compiler (OMC), Last Accessed November, 2014. https://www. specifications. In: 20th Asia-Pacific Software Engineering Conference (APSEC),
openmodelica.org/?id=51:open-modelica-compiler-omc&catid=10:main- pp. 414–421. doi:10.1109/APSEC.2013.62.
category Zhang, M., Gao, D., Fan, X., 2009. Formal verification of mixed-signal circuits us-
OpenModelica Industrial users, Last Accessed April 2015. https://www.openmodelica. ing extended PSL. In: Eighth International Conference on ASIC, pp. 1288–1293.
org/openmodelicaworld/related-products doi:10.1109/ASICON.2009.5351231.
OpenModelica Tools. https://www.openmodelica.org/openmodelicaworld/tools Zohaib Iqbal, M., Arcuri, A., Briand, L., 2013. Environment modeling and simulation
Ouchani, S., Ait Mohamed, O., Debbabi, M., 2014. A formal verification framework for for automated testing of soft real-time embedded software. Softw. Syst. Model.
SysML activity diagrams. Experts Syst. Appl. 41 (6), 2713–2728. doi:10.1007/s10270-013-0328-6.
Ouchani, S., Mohamed, O.A., Debbabi, M., 2013. A formal verification framework for Zot tool, Last Accessed, October 2014. http://home.deib.polimi.it/pradella/Zot/
BlueSpec system Verilog. In: Forum on Specification and Design Languages (FDL),
pp. 1–7. Muhammad Rashid received the bachelor’s degree in electrical engineering from the
Papyrus MDT 0004. Available from: http://www.eclipse.org/modeling/mdt/papyrus/ University of Engineering and Technology, Peshawar, Pakistan, in 2000, the master’s
M. Rashid et al. / The Journal of Systems and Software 106 (2015) 150–163 163

degree in embedded systems design from the University of Nice, Sophia-Antipolis, ager for the project “Development of Open Source of HMI” for Industry Automation,
France, in 2006, and the Ph.D. degree in embedded systems design from the Uni- sponsored under National ICT R & D fund, Ministry of Information Technology, Gov-
versity of Bretagne Occidentale, Brest, France, in 2009. He is an assistant professor ernment of Pakistan. (http://www.ictrdf.org.pk/fp-oshmi.htm).
with the Computer Engineering Department, Umm Al-Qura University, Mecca, Saudi
Arabia. Prior to joining Umm Al-Qura University, he worked with Thomson Research Aamir M. Khan received the bachelor’s degree in computer systems engineering from
and Development, Paris, France, and Advanced Engineering Research Organization, the University of Engineering and Technology, Peshawar, Pakistan, in 2004, the mas-
Wah Cantt, Pakistan. His research interests mainly include electronic design automa- ter’s degree in embedded systems design from the University of Nice, Sophia-Antipolis,
tion for embedded systems. France, in 2006, and the Ph.D. degree in embedded systems design from the INRIA re-
search labs from University of Nice-Sophia Antipolis in 2010. He worked extensively on
Muhammad Waseem Anwar received the M.Sc. and M.S. degrees in computer science system level design with some highly valuable research contributions to the research
and software engineering respectively. He is currently providing research and devel- community. He has proposed a modeling framework based on UML profile for MARTE.
opment consultancy for the project “MOdel-based DEsign & Verification for Safety- This model was then converted through model transformation into low-level IP-Xact
Critical Embedded Systems”. Prior to his current position, he worked as a project man- code.

View publication stats

You might also like