Table 1: Results of the oracle function VS. our approach. TM stands for Test Model.
TM1 TM2 TM3 TM4 TM5 TM6 TM7 TM8
Oracle Function
Results
176.61 159.77
No feasible
allocation
186.16 196.31 208.47 184.77 148.87
Our Approach
Results
176.61 159.77
No feasible
allocation
186.16 196.31 208.47 184.77 148.87
*
TM = Test Model
In order to identify the optimal SW-component al-
location, the authors of (
ˇ
Svogor et al., 2014a) applied
a genetic algorithm (GA) to identify optimal solutions
to the component allocation problem; they also ap-
plied an analytical hierarchical process to address the
problem of different measurement units in the calcu-
lation of trade-off factors.
However, although GA usually finds a good so-
lution, there is no guarantee that these solutions will
be optimal. Another method for solving the compo-
nent allocation problem was presented in (Wang et al.,
2004). The method uses branch-and-bound and for-
ward checking mechanisms. The method was imple-
mented in the Automatic Integration of Reusable Em-
bedded Software (AIRS) toolkit
4
.
Obviously, there is still a clear gap on the mod-
eling language that addressed the problem of SW-
component allocation on embedded systems. The au-
thor of (Al-Azzoni, 2015) was the first to present a
model-based approach for modeling and solving the
SW-component allocation problem using CPN. He
used CPN as a modeling language and described the
use of CPN Tools in analyzing the CPN model and
solving the component problem. Using CPN to ad-
dress the SW-component allocation problem will not
only optimize the cost function, but will also optimize
allocation for other types of nonfunctional analysis,
including security and dependability analysis.
6 CONCLUSION AND FUTURE
WORK
In this paper, we have described an automated model-
to-model transformation approach for software com-
ponent allocation in embedded systems, which was
developed to benefit from the mathematical power of
CPN. We have demonstrated full accuracy in our re-
sults regarding finding the optimal cost for the prob-
lem of SW-component allocation in embedded sys-
tems using only a simple Ecore diagram followed by
its transformation into the corresponding CPN model.
We concluded that the MMT tools have deservedly
4
http://kabru.eecs.umich.edu/bin/view/Main/AIRES
received a great deal of attention from researchers
because they lead to satisfactory results. However,
we investigated the existing work related to identify-
ing the optimal SW-component allocation and deter-
mined there is a clear gab in the modeling languages
and model transformations as they pertain to the SW-
component allocation problem in heterogeneous em-
bedded systems. This study is the first to close the gas
in this field by identifying a new model that not only
addresses the problem of SW-component allocation
but transforms it into a formal and analyzable CPN
model automatically. We accomplished our transfor-
mation in two primary steps. The first was transform-
ing the input model into CPN tokens in an XMI file
followed by rewriting the tokens as a CPN model in
an XML file using a supported XMI parser.
As a future work, several research activities open
directly from the contributions of this paper. First, we
plan on combining our ATL transformation technique
and the XMI parser into a stand-alone application. To
do so, we need to first run the ATL transformation into
a programming environment and then combine it with
the XMI parser. Second, although we obtained full
accuracy in our test results, more test models need to
be conducted with a variety of problem sizes in order
to further validate our transformation approach.
REFERENCES
Al-Azzoni, I. (2015). Software component allocation
on heterogeneous embedded systems using coloured
petri nets. In Proceeding of SOFTENG,The First In-
ternational Conference on Advances and Trends in
Software Engineering, pages 23–28.
Al-Dakheel, L and Al-Azzoni, I (2016). Model-to-Model
Based Approach for Software Components Allocation
in Embedded Systems. Masters Thesis, King Saud
University, Software Engineering Department.
Andr
´
e, E., Benmoussa, M. M., and Choppy, C. (2014).
Translating UML state machines to coloured petri
nets using Acceleo: A report. arXiv preprint
arXiv:1405.1112.
Biermann, E., Ehrig, K., Ermel, C., K
¨
ohler, C., and
Taentzer, G. (2008). The EMF model transformation
framework. Applications of Graph Transformations
with Industrial Relevance, pages 566–567.
Model-to-Model based Approach for Software Component Allocation in Embedded Systems
327