shown in Figure 4.
In the QN model of the connection-oriented net-
work of Figure 1, there are 12 nodes: four servers,
four source nodes, and four sink nodes. There are
four open workloads and each workload has its own
source and sink nodes. There are 14 arcs connect-
ing the nodes. Each arc is associated with a single
WorkloadRouting element having probability that is
equal to one. Thus, there are 14 WorkloadRouting el-
ements. Each WorkloadRouting element is associated
with one workload. There are 10 ServiceRequest ele-
ments that are used to define the service rates: server1
serves workloads 1 and 2, server2 serves workloads 1
and 3, server3 serves workloads 1, 2, 3, and 4, and
server4 serves workloads 2 and 3.
The resulting QPN model is shown in Figure 4.
It consists of 12 places: eight queueing places and
four ordinary places. For each server or source node
in the source QN model, there is one corresponding
queueing place in the target QPN model. For each
sink node in the source QN model, there is one cor-
responding ordinary place in the target QPN model.
There are four colors: one color corresponding to
each workload in the source QN model. There are 14
transitions: one transition for each arc in the source
QN model. Each transition is associated with a sin-
gle mode whose firing weight is equal to the corre-
sponding arc’s WorkloadRouting probability. There
are 10 ServiceDemands: one ServiceDemand for each
ServiceRequest in the source QN model. There are
32 arcs in the target QPN model: 28 arcs are gener-
ated by rule Arc while four arcs are generated by rule
SourceNode.
Table 1 compares several performance metrics
computed analytically using queueing theory with
the results of QPME simulation. The details of
how the analytic results are determined can be found
in (Harchol-Balter, 2013). The table includes server
utilization, the average number of packets at each
server, the average packet response time at each
server, and the average response time for packets on
Route 2. The table demonstrates the high accuracy of
QPME simulation.
5 CONCLUSION AND FUTURE
WORK
In this paper, we have presented a new approach for
transforming QNMs into QPNs using ATL. The ap-
proach was validated using a case study in which sev-
eral performance metrics were predicted with high ac-
curacy. Our approach can be applied on QNMs with
several workloads (job classes) that can be of differ-
Table 1: A comparison between the analytic and QPME
simulation results for the network of Figure 1.
Performance Metric Analytic Result QPME Simulation Result
Utilization - Server 1 0.7 0.7
Utilization - Server 2 0.8 0.8
Utilization - Server 3 0.9 0.9
Utilization - Server 4 0.9 0.9
Average Number of Packets - Server 1 2.333 2.335
Average Number of Packets - Server 2 4 3.994
Average Number of Packets - Server 3 9 9.001
Average Number of Packets - Server 4 9 9.007
Average Packet’s Response Time - Server 1 0.333 0.334
Average Packet’s Response Time - Server 2 0.5 0.499
Average Packet’s Response Time - Server 3 0.5 0.5
Average Packet’s Response Time - Server 4 1 1.001
Average Response Time for Packets on Route 2 1.833 1.835
ent types (open and closed). The QNMs supported by
our approach need not be of product form.
The following points outline the main ideas in our
future work. First, it is of interest to implement the
transformation using other transformation languages
such as QVT on models conforming to MOF. Sec-
ond, a new plug-in on Eclipse can be developed to
help a user in creating QNMs and to apply the model
transformation and performance prediction in an au-
tomated fashion. Third, we can apply our approach
on larger case studies. Finally, it is of interest to ex-
pand the queueing network metamodel to support new
features such as those mentioned at the end of Sec-
tion 2.1.
REFERENCES
da Silva, A. R. (2015). Model-driven engineering: A survey
supported by the unified conceptual mode. Computer
Languages, Systems & Structures, 43:139–155.
Harchol-Balter, M. (2013). Performance Modeling and De-
sign of Computer Systems: Queueing Theory in Ac-
tion. Cambridge University Press, 1st edition.
Kounev, S. (2006). Performance modeling and evaluation of
distributed component-based systems using queueing
Petri nets. IEEE Transactions on Software Engineer-
ing, 32(7):486–502.
Kounev, S. and Buchmann, A. (2006). SimQPN: a tool and
methodology for analyzing queueing Petri net mod-
els by means of simulation. Performance Evaluation,
63(4):364–394.
Kounev, S., Spinner, S., and Meier, P. (2012). Introduc-
tion to queueing Petri nets: Modeling formalism, tool
support and case studies. In Proceedings of the In-
ternational Conference on Performance Engineering,
pages 9–18.
MODELSWARD 2017 - 5th International Conference on Model-Driven Engineering and Software Development
266