SlideShare a Scribd company logo
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
DOI : 10.5121/ijcseit.2014.4401 1
EXTENDED DISTRIBUTED UML-BASED PROTOCOL
SYNTHESIS METHOD
Jehad Al Dallal
Department of Information Science, Kuwait University, Kuwait
ABSTRACT
Synthesizing specifications for real time applications that involve distributed communication protocol
entities from a service specification, which is modeled in the UML state machine with composite states, is a
time-consuming and labor-intensive task. Existing synthesis techniques for UML-based service
specifications do not account for timing constrains and, therefore, cannot be used in real time applications
for which the timing constraints are crucial and must be considered. In this paper, we address the problem
of time assignment to the events defined in the service specification modeled in UML state machine. In
addition, we show how to extend a technique that automatically synthesizes UML-based protocol
specifications from a service specification to consider the timing constraints given in the service
specification. The resulting synthesized protocol is guaranteed to conform to the timing constraints given in
the service specification.
KEYWORDS
Protocol synthesis, protocol specification, service specification, timing constraints, UML state machine
1. INTRODUCTION
A protocol can be defined as an agreement on the exchange of information between
communicating entities. A full protocol definition defines a precise format for valid messages (a
syntax), procedure rules for the data exchange (a grammar), and a vocabulary of valid messages
that can be exchanged, with the meaning (semantics).
In protocol design, interacting entities are constructed to provide a set of specified services to the
service users. While designing a communication protocol, semantic and syntactic errors may exit.
Semantic design errors cause the provision of incorrect services to the distributed protocol users.
Syntactic design errors cause the protocol to deadlock.
A communication system is most conveniently structured in layers. The service access point
(SAP) is the only place where a layer can communicate with its surrounding layers or service
users. The layer can have several SAPs. The communication between the layer and its
surrounding layers is performed using service primitives (SPs). The SP identifies the type of
event and the SAP at which it occurs.
From the user’s viewpoint (high level of abstraction), the layer is a black box where only
interactions with the user—identified by the SPs—are visible. The specification of the service
provided by the layer is defined by the ordering of the visible SPs and by the timing requirements
between the SP occurrences. This specification is called service specification (S-SPEC). At a
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
2
refined level of abstraction, the service provided by the layer is performed using a number of
cooperating protocol entities. These protocol entities exchange protocol messages through a
communication medium. The protocol specification (P-SPEC) prescribes the exchange of
messages between the protocol entities. Figure 1 shows the two abstraction levels of a
communication layer. Both S-SPEC and P-SPEC can be modelled using UML state machine.
Figure 1. Communication service and protocol concepts
Protocol specifications are much more complex than service specifications because of their
refined nature. Therefore, it is quite natural to start the protocol design process from a complete
and unambiguous service specification. The construction of a protocol specification from a given
service specification is called a protocol synthesis. The synthesis approach is used to construct or
complete a partially specified protocol design such that the interactions among the constructed or
completed protocol entities proceed without encountering any logical error and, ideally, provide
the specified service.
Several protocol synthesis methods for different models have appeared in the literature such as in
[1–5]. Only [5] considers the UML state machine model, but it does not consider timing
requirements. In this paper, the assignment of the timing constraints to the service specification is
discussed. In addition, the UML-based method is extended to synthesize protocol specifications
from service specifications containing timing requirements. The resulting protocol specification is
proved to conform to the timing constraints provided in the service specification.
The paper is organized as follows: Section 2 gives an overview of the related research. Section 3
discusses the service specification time assignment and introduces the timed protocol synthesis
method and a small example. The correctness of the synthesis method is proved in Section 4.
Finally, section 5 provides conclusions and discussion of future work.
2. RELATED WORK
In this section, an overview of other related research is provided and the basic service-oriented
synthesis method introduced in [4] is briefly described.
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
3
2.1. Other Related Research
The protocol synthesis methods can be classified according to the used models. The used models
include finite state machines [2,3], UML state machines [4], Petri-nets [1], and LOTOS-like [5].
Some of the service-oriented protocol synthesis methods consider the timing requirements given
in the service specification [3,6], while others do not [1,2,4,5]. The method of dealing with
timing constraints provided in the service specifications in [3,6] cannot be directly applied in this
paper because a different model is used (i.e., Petri-nets and finite state machines).
UML has been shown to be useful in modelling communication protocols (e.g., [7,8,9]). In [4], a
synthesis method that derives protocol specifications from UML-based service specification has
been introduced. The derivation process is performed in five steps. In the first step, the S-SPEC is
projected onto each SAP to obtain the projected protocol specifications (PR-SPECs). In the
second step, a set of transition synthesis rules is applied to the transitions of the PR-SPECs to
obtain the primary protocol specifications of the entities (PPE-SPECs). In the third step, -
transitions and -cycles are removed from the PPE-SPECs and a state machine reduction
technique is applied to obtain the minimized PPE-SPECs. Then, rules are applied to remodel
composite states of multiple regions. Finally, a state machine reduction technique is applied to
obtain the minimized PE-SPECs. This method is extended here to consider timing constraints that
were ignored in [4].
This paper extends the conference-based version [10] by elaborating more on the synthesis
method and providing the correctness proofs for the proposed technique extension.
2.2. UML State Machine
The UML state machine [11, 12, 13] is a diagram that consists of states shown in rounded-corner
rectangles that are connected with labeled arrows which represent transitions. Each transition can
be associated with (1) an event, (2) a set of predicates, and (3) a set of expected actions. To
execute a transition, the protocol must be in the accepting state of the transition, the event is
executed, and the predicates evaluate to true. The UML syntax for a transition is:
event-name [guard predicate]/action-expression.
A state can be simple, composite, or a submachine. A simple state is a state that does not have
any substates. A composite state may contain states of any type. A composite state can include
one or more orthogonal regions separated by dashed lines to represent a concurrent behavior.
Each region includes substates connected by transitions.
A state can be classified as typical or special. A typical state expresses a stable situation that
represents the state context. Special states include initial, final, join, fork, junction, and choice
states. An initial state of a state machine represents the starting state of the protocol represented
by the state machine. A junction state is used to attach its incoming transitions together. A choice
state is used to attach outgoing transitions together. A final state expresses the completion of the
protocol that is specified in a composite state region or described by the state machine. The fork
state splits an incoming transition into several unlabeled transitions which terminate on states in
different regions of a composite state. The join state merges multiple incoming transitions from
states of different regions of a composite state into a single, unlabeled outgoing transition.
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
4
2.3. The Basic Synthesis Method
The synthesis method introduced in [4] uses the UML protocol state machine to model both
service and protocol specifications.
To synthesize the protocol specification from the service specification, five steps are followed.
1. Project the service specification S-SPEC onto each SAP to obtain the PR-SPECs. Each
PR-SPEC has the same structure as the S-SPEC. Each PR-SPECi has two types of
transitions: SP-labeled and unlabeled. The SP-labeled transitions correspond to the S-
SPEC transitions assigned to SPs, which are observed at SAPi.
2. Apply transition synthesis rules to the transitions of the PR-SPECs to obtain the primary
protocol specifications of the entities (PPE-SPECs). A set of four rules are proposed to
cover all possibilities of the different types of source and destination states of any
transition. The rules are applied to determine the events associated with the transitions.
Transition that are left with no events are associated with ε.
3. Remove ε-cycles and ε-transitions by using algorithms that are described in order to
obtain the reduced PPE-SPECs.
4. Remodel all composite states with multiple regions by using two proposed recursive rules
to obtain the protocol specifications of the entities (PE-SPECs). The two rules remodel
the multi-region composite states of the resulting state machines of the protocol entities to
single-region composite states in such a way that all of the possible orderings of the
events are preserved and all of the events are executed.
5. Apply a state machine reduction technique to obtain the minimized PE-SPECs.
The resulting protocol entities are proven to be syntactically and semantically free of errors.
3. TIMED PROTOCOL SYNTHESIS METHOD
To synthesize timed protocol specifications, the service specification has to be provided with time
constraints associated with the S-SPEC transitions. In this section, the time assignment to the S-
SPEC transitions is discussed, and the synthesis method for the timed protocol specification is
introduced. Finally, a small example is illustrated.
3.1. Service specification time assignment
The assignment of the service specification time constraints is performed during the S-SPEC
design process. These time constraints are assigned as time intervals associated with the
transitions of the UML state machine that models the S-SPEC. The time interval [mint,maxt]
means that the transition t can be executed only within the time T, since the source state of t is
visited, where mint≤T≤maxt. The time T includes the waiting time Tw, since the source state is
visited. If the SP associated with the transition is to be sent from one protocol entity (PE) to
another, the time T also includes the time required for sending the SP from the source PE and
receiving the SP by the destination PE. The time for sending and receiving an SP from PEi to PEj
is the delay dij of the channel between the two PEs. Therefore, mint = min(Tw)+min(dij) and,
consequently, mint has to be greater than or equal to min(dij). Similarly, maxt = max(Tw)+max(dij)
and, consequently, maxt has to be greater than or equal to max(dij). In addition, the mint and maxt
have to be assigned such that max(Tw)≥min(Tw). In other words, maxt-max(dij)≥ mint-min(dij).
Thus, maxt≥mint+(max(dij)-min(dij)). In some cases, an SP associated with a transition can be
sent to more than one PE (e.g., in Figure 2, A1 is sent to PE2 and PE3). Let X be a set of the
protocol entities that can receive the SP. Generally, if an SP associated with a transition t can be
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
5
sent from PEi to more than one PE such that each PE∈X, the time interval associated with t, has
to be assigned such that ∀j∈X, mint≥min(dij) and maxt≥max(dij). This means that
mint≥maximum∀j∈X (min(dij)) and maxt≥maximum∀j∈X (max(dij)). Similarly, ∀j∈X,
maxt≥mint+(max(dij)-min(dij)). This means that maxt≥ mint+maximum∀j∈X(max(dij)-min(dij)).
For example, in Figure 2, the service primitive A1 is sent to PE2 and PE3. You can notice that the
conditions maxt≥maximum(max(d12),max(d13)) (i.e., 3>maximum (0.1,0.2)),
mint≥maximum(min(d12), min(d13)) (i.e., 1>maximum(0,0.1)), and maxt≥
mint+maximum((max(d12)-min(d12)), (max(d13)-min(d13))) (i.e., 3>1+maximum((0.1-0),(0.2-0.1))
are satisfied.
3.2. Synthesis of timed protocol specifications
An automatic synthesis method for the protocol entities from a UML-based service specification
is introduced in [4] and summarized in Section 2. In this section, the synthesis method is extended
to consider the timing constraints provided in the service specification.
Figure 2. A UML-based service specification example
The first step of the method is extended by associating the transitions of the PR-SPECs with the
same time intervals associated with the transitions of the S-SPEC. The PR-SPEC transitions
associated with ε-events are not assigned to time intervals.
The second step is extended by applying the modified rules given in Table 1. These modifications
consider the timing constraints. The justifications for these extensions are as follows:
Rule 1: In this case, the transition is taking back the service to its initial state and, therefore, a
synchronization message is sent to all other PEs. Thus, the channel delays between the PEi and all
other PEs have to be considered. In this case, the maximum and the minimum channel delays
among the considered ones are respectively subtracted from maxt and mint of the transition to
obtain the new maxt and mint values.
Rule 2 and Rules 3 and 4 in the case of x≠ Ø: In this case, the SP originates from the service user
at SAPi. After the occurrence of this SP, other SPs are observed at other SAPs. A synchronization
message is sent from PEi to the other corresponding PEs. Therefore, the channel delays between
the PEi and the other corresponding PEs have to be considered, as illustrated in Rule 1.
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
6
Rules 3 and 4 in the case of x = Ø: This rule implies that the flow of control must not be
transferred to another protocol entity or service user. Therefore, no channel delays are to be
considered. In this case, the same time interval is considered without changing.
The corresponding transitions in PR-SPECx and other PR-SPEC (i.e., the last two columns in
Table 1) are either associated with ε-events or receiving messages. The transition associated with
an ε-event is not assigned a time interval and, therefore, no timing constraints are to be
considered. In addition, the transition associated with a receiving message is not assigned a time
interval because the time required to execute this transition is part of the channel delay already
considered in the above rules.
The rest of the original synthesis method steps remain the same.
Figure 2 shows an S-SPEC example. Figure 3 shows the three PE-SPECs resulting from applying
the extended synthesis method. In PE1, the transition associated with the service primitive A has
the time interval [1-min(min(d12),min(d13)),3-max (max(d12),max(d13))] and the transition
associated with the service primitive D has the time interval [1-min(d12),2-max(d12)]. In PE2, the
transition associated with the service primitive E has the time interval [1-
min(min(d21),min(d23)),2-max(max(d21), max(d23))] and the transition associated with the service
primitive B has the time interval [1-min(d21) ,4-max(d21)]. Finally, In PE3, the transition
associated with the service primitive C has the time interval [2-min(d32),3-max(d32)].
Figure 3. The PE-SPECs obtained by applying the extended synthesis method
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
7
Table 1: The extended transition synthesis rules
Rule
ID
Condition (s1 and
s2 are source and
destination states
of the transition t
of interest)
x
Event E of transition t in
PR-SPECi
Correspon-
ding event
in
PR-
SPECx
Correspon-
ding event
in other PR-
SPECs
1
s2 is a stable initial
state of the state
machine
all SAPs - SAPi
E/!ex [mint-
min∀j∈X(min(dij)),
maxt-max∀j∈X(max (dij))]
?ei
Not
applicable
2
s2 is a final state in
the composite state
cs
Or s1 is a substate
of cs and s2 is not a
substate of cs
Or s1 is a composite
state (s1=cs)
i
cs
rg
SAP
rg
OUT
−






∈
∀
U )
(
E/!ex [mint-
min∀j∈X(min(dij)),
maxt-max∀j∈X(max (dij))]
?ei
Not
applicable
3
s2 is a composite
state
InC(s2) – SAPi
E/!ex [mint-min∀j∈X(min(dij)),
maxt-max∀j∈X(max (dij))] if
x≠Ø
E [mint, maxt] if x=Ø
?ei ε
4 s2 is a simple state OUT(s2) – SAPi
4. PROOF OF CORRECTNESS
Proving the correctness of the synthesis method requires proving that the synthesis method is
syntactically and semantically correct. This proof is provided in [4] but without timing
constraints. Therefore, to complete the proof, we prove here that the time assignments to the
transitions of the PEs as a result of applying the extended synthesis method conform to the time
constraints assigned to the transitions of the S-SPEC.
Lemma 1. In the PEs, the time T required for executing an SP is mintp≤T≤maxtp such that the time
interval [mint,maxt] is associated with the corresponding transition in the S-SPEC and mint≤
mintp≤T≤maxtp≤maxt.
Proof: An SP executed in a PE is either (1) not sent to another PE, (2) sent to a service user, or
(3) sent to one or more other PEs. In the first two cases, the SP is not sent to another PE and,
therefore, no channel delays are to be considered. As a result, in these two cases, the time
required to execute the SP in the PE is the same as the time associated with the corresponding
transition in the S-SPEC (i.e., (mint= mintp)≤T≤(maxtp=maxt)).
For the third case, the SP is either sent to another PE or sent to more than one other PEs. If the SP
is sent to another PE, the time required to execute the SP in the PE is the waiting time since the
source state is visited and the channel delay dij. The waiting time is the time associated with the
PE transition labeled by SP. This time is T such that mint-min(dij)≤T≤maxt-max(dij). As a result,
the time required to execute the SP in the PE (i.e., waiting time + channel delay) is T such that
mint-min(dij)+dij≤T≤maxt-max(dij)+dij. This means that mintp= mint-min(dij)+dij and maxtp=maxt-
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
8
max(dij)+ dij. Since mint-min(dij)+dij and min(dij)≤dij, then mintmin(dij)+min(dij)≤ mint-
min(dij)+dij≤T. As a result, mint≤mintp≤T. Similarly, since T≤maxt-max(dij)+dij and dij ≤ max(dij)
then T≤maxt-max(dij)+ dij≤maxt-max(dij)+max(dij). Therefore, T≤maxtp≤ maxt. As a result, in this
case, in the PEs, the time T required for executing an SP is T such that mint≤
mintp≤T≤maxtp≤maxt.
The last case is when the SP is sent from one PE to more than one other PEs. In this case, the
waiting time associated with the transition labeled by SP is T such that mint-
minimum∀j∈X(min(dij))≤T≤maxt - maximum∀j∈X(max (dij)) where X is the set of the protocol
entities that can receive the SP. When considering the channel delays, the minimum time T
required to execute the SP is calculated such that mint-minimum∀j∈X(min(dij))+
minimum∀j∈X(dij)≤T. Since minimum∀j∈X (min (dij))≤minimum∀j∈X (dij), then mint-minimum∀j∈X
(min(dij))+minimum∀j∈X(min(dij))≤ mint-minimum ∀j∈X(min(dij))+minimum∀j∈X(dij)≤T. As a
result, mint ≤mintp≤T. Similarly, the maximum time T required to execute the SP is calculated
such that T≤ maxt-maximum∀j∈X(max(dij))+maximum∀j∈X(dij). Since maximum∀j∈X
(dij)≤maximum∀j∈X (max(dij)), then T≤ maxt-maximum∀j∈X(max(dij))+maximum∀j∈X(dij) ≤ maxt-
maximum∀j∈X(max(dij))+maximum∀j∈X(max (dij)). Therefore, T≤maxtp≤maxt. As a result, in this
final case, in the PEs, the time T required for executing an SP is T such that mint≤ mintp≤
T≤maxtp≤maxt.
As a result, for all cases, in the PEs, the time T required for executing an SP is mintp≤T≤maxtp
such that the time interval [mint,maxt] is associated with the corresponding transition in the S-
SPEC and mint≤ mintp≤T≤maxtp≤maxt. ■
Lemma 2. For any sequence of SPs in the S-SPEC executed during the time interval [mint,maxt],
the corresponding SPs in the PEs are executed within the same or narrowed time interval.
Proof: The execution of sequence of n SPs in the S-SPEC is performed during the time interval
[mint,maxt] such that mint = mint(SP1)+ mint(SP2)+ ….+ mint(SPn) and maxt = maxt(SP1)+
maxt(SP2)+ ….+ maxt(SPn). By Lemma 1, for any SP, mint(SP) in the PE-SPEC is greater than or
equal to the mint(SP) in the S-SPEC and maxt(SP) in the PE-SPEC is less than or equal to the
maxt(SP) in the S-SPEC. Therefore, the execution of the sequence of n SPs in the PE-SPECs is
performed within the same or narrowed time interval [mint,maxt]. ■
Lemma 3. The time constraints assigned to the transitions of the PEs as a result of applying the
extended synthesis method conform to the time constraints assigned to the transitions of the S-
SPEC.
Proof: As a result of assigning time intervals to the transitions of the PEs using the extended
synthesis method, the execution of any sequence of SPs in the PEs is performed during the same
or narrowed time intervals given in the S-SPEC (Lemma 2). Therefore, the time constraints
assigned to the transitions of the PEs as a result of applying the extended synthesis method
conform to the time constraints assigned to the transitions of the S-SPEC. ■
5. CONCLUSIONS AND FUTURE WORK
In this paper, a synthesis method for protocol specifications from UML-based service
specifications is extended such that the timing constraints provided in the service specification are
considered in the resulting protocol specifications. This extension makes the synthesis method
applicable for real time applications. The extension uses UML state machine for modeling both
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
9
the service and protocol specifications. In this paper, the assignment of the timing constraints to
the service specification is discussed. In addition, the paper shows how to map the timing
constraints associated with the transitions of the service specification model to the transitions of
the protocol specification models. The maximum and minimum delays of the channels between
the protocol entities are considered when mapping the timing constraints in this paper.
The basic synthesis method extended in this paper is limited to the service specifications that have
sequential behavior (i.e., only one service primitive can be executed at once). In the future, we
plan to extend the basic synthesis method to handle possible concurrent occurrence of service
primitives in the service specifications, modeled in the UML state machine by using composite
states of multiple regions. In addition, we intend to study the effect of the concurrent behavior of
the service specification on the assignment of the time constraints to the service and protocol
specifications
REFERENCES
[1] H. Yamaguchi, K. El-Fakih, G. Bochmann, T. Higashino, (2003) “Protocol synthesis and re-synthesis
with optimal allocation of resources based on extended Petri nets,” Distributed Computing, Vol. 16,
pp. 21-35.
[2] J. Al Dallal, K. Saleh, (2008) “Service-oriented synthesis of distributed and concurrent protocol
specifications,” Journal of Computer Systems, Networks, and Communications, Vol. 2008(794960),
pp 1-13.
[3] J. Al Dallal, (2006) “Automatic synthesis of timed protocol specifications from service
specifications,” WSEAS Transactions on Computers, Vol. 5, pp. 105-112.
[4] J. Al Dallal and K. Saleh, (2012) “Synthesizing distributed protocol specifications from a UML state
machine modeled service specification,” Journal of Computer Science and Technology, Vol. 27, pp.
1150-1268.
[5] N. Maneerat, R. Varakulsiripunth, B. Bista, K. Takahashi, Y. Kato, N. Shiratori, (2004) “Composition
of service and protocol specifications in asynchronous communication system,” IEICE Transactions
On Information and Systems, Vol. 87, pp. 2306-2317.
[6] J. Park and R. Miller, (1997) “Synthesizing protocol specifications from service specifications in
timed extended finite state machines,” Proceedings of the 17th International Conference on
Distributed Computing Systems (ICDCS '97), pp. 253.
[7] B. Kumar, J. Jasperneite, (2008) “Industrial communication protocol engineering using UML 2.0: a
case study,” In Proc. 7th IEEE International Workshop on Factory Communication Systems, pp. 247-
250.
[8] B. Kumar, J. Jasperneite, (2010) “UML Profiles for Modeling Real-Time Communication Protocols,”
Journal of Object Technology, Vol. 9, pp. 178-198.
[9] K. Thramboulidis, A. Mikroyannidis, (2003) “Using UML for the design of communication protocols:
the TCP case study,” In Proc. 11th International Conference on Software, Telecommunications, and
Computer Networks.
[10] J. Al Dallal, (2013) “Time assignment for distributed service and protocol UML-based
specifications”, IEEE 10th International Conference on Electronics Computer and Computation
ICECCO 2013", Ankara, Turkey.
[11] R. Miles and K. Hamilton, (2006) “Learning UML 2.0”, O'Reilly Media, 1ed.
[12] J. Al Dallal, (2008) “Testing object-oriented framework hook methods”, Kuwait Journal of Science
and Engineering, Vol. 35, No. 1B, pp. 103-122.
[13] J. Al Dallal, (2012) “UPSS: a tool for synthesizing UML concurrent communication protocol
entities”, Advances in Applied Information Science, Vol. 4, pp. 103-108.
International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014
10
Author
Jehad Al Dallal received his PhD in Computer Science from the University of Alberta in Canada and was
granted the award for best PhD researcher. He is currently working at Kuwait University in the Department
of Information Science as an Associate Professor and Department Chairman. Dr. Al Dallal has completed
several research projects in the areas of software testing, software metrics, and communication protocols. In
addition, he has published more than 80 papers in reputable journals and conference proceedings. Dr. Al
Dallal was involved in developing more than 20 software systems. He also served as a technical committee
member of several international conferences and as an associate editor for several refereed journals.

More Related Content

Similar to EXTENDED DISTRIBUTED UML-BASED PROTOCOL SYNTHESIS METHOD (20)

MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
2 ieee nui cone-13 soa testing perspective model for regression testing
2 ieee nui cone-13  soa testing perspective model for   regression testing2 ieee nui cone-13  soa testing perspective model for   regression testing
2 ieee nui cone-13 soa testing perspective model for regression testing
Abhishek Srivastava
 
SOA Testing Perspective Model for Regression Testing
SOA Testing Perspective Model for Regression TestingSOA Testing Perspective Model for Regression Testing
SOA Testing Perspective Model for Regression Testing
Abhishek Kumar
 
Modeling and Evaluation of Performance and Reliability of Component-based So...
Modeling and Evaluation of Performance and Reliability  of Component-based So...Modeling and Evaluation of Performance and Reliability  of Component-based So...
Modeling and Evaluation of Performance and Reliability of Component-based So...
Editor IJCATR
 
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
Nebucom
 
Component Based Control System Design
Component Based Control System DesignComponent Based Control System Design
Component Based Control System Design
M Reza Rahmati
 
Labeled generalized stochastic petri net Based approach for web services Comp...
Labeled generalized stochastic petri net Based approach for web services Comp...Labeled generalized stochastic petri net Based approach for web services Comp...
Labeled generalized stochastic petri net Based approach for web services Comp...
ijcsit
 
Model-driven adaptation of service choreographies [SAC 2018]
Model-driven adaptation of service choreographies [SAC 2018]Model-driven adaptation of service choreographies [SAC 2018]
Model-driven adaptation of service choreographies [SAC 2018]
Claudio Pompilio
 
UML2SAN: Toward A New Software Performance Engineering Approach
UML2SAN: Toward A New Software Performance Engineering ApproachUML2SAN: Toward A New Software Performance Engineering Approach
UML2SAN: Toward A New Software Performance Engineering Approach
ijseajournal
 
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
Joaquin Hamad
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 
Application of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process OptimizationApplication of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process Optimization
Brian Elvesæter
 
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
cscpconf
 
50120140502012
5012014050201250120140502012
50120140502012
IAEME Publication
 
Pattern-based Definition and Generation of Components for a Synchronous React...
Pattern-based Definition and Generation of Components for a Synchronous React...Pattern-based Definition and Generation of Components for a Synchronous React...
Pattern-based Definition and Generation of Components for a Synchronous React...
ijeukens
 
Semantic web based software engineering by automated requirements ontology ge...
Semantic web based software engineering by automated requirements ontology ge...Semantic web based software engineering by automated requirements ontology ge...
Semantic web based software engineering by automated requirements ontology ge...
IJwest
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
MAPPING SCDL/BPEL TO ADA FOR FORMAL VERIFICATION OF THE BEHAVIORAL PROPERTIES...
ijwscjournal
 
2 ieee nui cone-13 soa testing perspective model for regression testing
2 ieee nui cone-13  soa testing perspective model for   regression testing2 ieee nui cone-13  soa testing perspective model for   regression testing
2 ieee nui cone-13 soa testing perspective model for regression testing
Abhishek Srivastava
 
SOA Testing Perspective Model for Regression Testing
SOA Testing Perspective Model for Regression TestingSOA Testing Perspective Model for Regression Testing
SOA Testing Perspective Model for Regression Testing
Abhishek Kumar
 
Modeling and Evaluation of Performance and Reliability of Component-based So...
Modeling and Evaluation of Performance and Reliability  of Component-based So...Modeling and Evaluation of Performance and Reliability  of Component-based So...
Modeling and Evaluation of Performance and Reliability of Component-based So...
Editor IJCATR
 
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
An overview of the OASIS TOSCA standard: Topology and Orchestration Specifica...
Nebucom
 
Component Based Control System Design
Component Based Control System DesignComponent Based Control System Design
Component Based Control System Design
M Reza Rahmati
 
Labeled generalized stochastic petri net Based approach for web services Comp...
Labeled generalized stochastic petri net Based approach for web services Comp...Labeled generalized stochastic petri net Based approach for web services Comp...
Labeled generalized stochastic petri net Based approach for web services Comp...
ijcsit
 
Model-driven adaptation of service choreographies [SAC 2018]
Model-driven adaptation of service choreographies [SAC 2018]Model-driven adaptation of service choreographies [SAC 2018]
Model-driven adaptation of service choreographies [SAC 2018]
Claudio Pompilio
 
UML2SAN: Toward A New Software Performance Engineering Approach
UML2SAN: Toward A New Software Performance Engineering ApproachUML2SAN: Toward A New Software Performance Engineering Approach
UML2SAN: Toward A New Software Performance Engineering Approach
ijseajournal
 
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
An Approach To Enable Replacement Of SOAP Services And REST Services In Light...
Joaquin Hamad
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 
Application of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process OptimizationApplication of SHAPE Technologies in Production and Process Optimization
Application of SHAPE Technologies in Production and Process Optimization
Brian Elvesæter
 
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
PREDICTING PERFORMANCE OF WEB SERVICES USING SMTQA
cscpconf
 
Pattern-based Definition and Generation of Components for a Synchronous React...
Pattern-based Definition and Generation of Components for a Synchronous React...Pattern-based Definition and Generation of Components for a Synchronous React...
Pattern-based Definition and Generation of Components for a Synchronous React...
ijeukens
 
Semantic web based software engineering by automated requirements ontology ge...
Semantic web based software engineering by automated requirements ontology ge...Semantic web based software engineering by automated requirements ontology ge...
Semantic web based software engineering by automated requirements ontology ge...
IJwest
 
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGYFUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
FUZZY-BASED ARCHITECTURE TO IMPLEMENT SERVICE SELECTION ADAPTATION STRATEGY
ijwscjournal
 

Recently uploaded (20)

Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Yasasi Abeysinghe
 
whole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptxwhole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptx
simranjangra13
 
Influenza-Understanding-the-Deadly-Virus.pptx
Influenza-Understanding-the-Deadly-Virus.pptxInfluenza-Understanding-the-Deadly-Virus.pptx
Influenza-Understanding-the-Deadly-Virus.pptx
diyapadhiyar
 
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
Sérgio Sacani
 
APES 6.5 Presentation Fossil Fuels .pdf
APES 6.5 Presentation Fossil Fuels   .pdfAPES 6.5 Presentation Fossil Fuels   .pdf
APES 6.5 Presentation Fossil Fuels .pdf
patelereftu
 
Introduction to Mobile Forensics Part 1.pptx
Introduction to Mobile Forensics Part 1.pptxIntroduction to Mobile Forensics Part 1.pptx
Introduction to Mobile Forensics Part 1.pptx
Nivya George
 
Adamson, Walter L. - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Adamson, Walter L.  - Avant-Garde Florence. From Modernism to Fascism [ocr] [...Adamson, Walter L.  - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Adamson, Walter L. - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Francisco Sandoval Martínez
 
2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure
Insilico Gen
 
Chromatography, types, techniques, ppt.pptx
Chromatography, types, techniques, ppt.pptxChromatography, types, techniques, ppt.pptx
Chromatography, types, techniques, ppt.pptx
Dr Showkat Ahmad Wani
 
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
abayamargaug
 
when is CT scan need in breast cancer patient.pptx
when is CT scan need in breast cancer patient.pptxwhen is CT scan need in breast cancer patient.pptx
when is CT scan need in breast cancer patient.pptx
Rukhnuddin Al-daudar
 
06-Molecular basis of transformation.pptx
06-Molecular basis of transformation.pptx06-Molecular basis of transformation.pptx
06-Molecular basis of transformation.pptx
LanaQadumii
 
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Ali Raei
 
Keynote presentation at DeepTest Workshop 2025
Keynote presentation at DeepTest Workshop 2025Keynote presentation at DeepTest Workshop 2025
Keynote presentation at DeepTest Workshop 2025
Shiva Nejati
 
A tale of two Lucies: talk at the maths dept, Free University of Amsterdam
A tale of two Lucies: talk at the maths dept, Free University of AmsterdamA tale of two Lucies: talk at the maths dept, Free University of Amsterdam
A tale of two Lucies: talk at the maths dept, Free University of Amsterdam
Richard Gill
 
Hardy_Weinbergs_law_and[1]. A simple Explanation
Hardy_Weinbergs_law_and[1]. A simple ExplanationHardy_Weinbergs_law_and[1]. A simple Explanation
Hardy_Weinbergs_law_and[1]. A simple Explanation
Dr Showkat Ahmad Wani
 
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,PhosphorosClass-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
govindapathak8
 
SuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptxSuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptx
BurkanAlpKale
 
Skmuscle_properties_muscletone_muscletype.pptx
Skmuscle_properties_muscletone_muscletype.pptxSkmuscle_properties_muscletone_muscletype.pptx
Skmuscle_properties_muscletone_muscletype.pptx
muralinath2
 
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Sérgio Sacani
 
Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Examining Visual Attention in Gaze-Driven VR Learning: An Eye-Tracking Study ...
Yasasi Abeysinghe
 
whole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptxwhole ANATOMY OF EYE with eye ball .pptx
whole ANATOMY OF EYE with eye ball .pptx
simranjangra13
 
Influenza-Understanding-the-Deadly-Virus.pptx
Influenza-Understanding-the-Deadly-Virus.pptxInfluenza-Understanding-the-Deadly-Virus.pptx
Influenza-Understanding-the-Deadly-Virus.pptx
diyapadhiyar
 
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5On the Lunar Origin of Near-Earth Asteroid 2024 PT5
On the Lunar Origin of Near-Earth Asteroid 2024 PT5
Sérgio Sacani
 
APES 6.5 Presentation Fossil Fuels .pdf
APES 6.5 Presentation Fossil Fuels   .pdfAPES 6.5 Presentation Fossil Fuels   .pdf
APES 6.5 Presentation Fossil Fuels .pdf
patelereftu
 
Introduction to Mobile Forensics Part 1.pptx
Introduction to Mobile Forensics Part 1.pptxIntroduction to Mobile Forensics Part 1.pptx
Introduction to Mobile Forensics Part 1.pptx
Nivya George
 
Adamson, Walter L. - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Adamson, Walter L.  - Avant-Garde Florence. From Modernism to Fascism [ocr] [...Adamson, Walter L.  - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Adamson, Walter L. - Avant-Garde Florence. From Modernism to Fascism [ocr] [...
Francisco Sandoval Martínez
 
2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure2025 Insilicogen Company English Brochure
2025 Insilicogen Company English Brochure
Insilico Gen
 
Chromatography, types, techniques, ppt.pptx
Chromatography, types, techniques, ppt.pptxChromatography, types, techniques, ppt.pptx
Chromatography, types, techniques, ppt.pptx
Dr Showkat Ahmad Wani
 
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
4. Chapter 4 - FINAL Promoting Inclusive Culture (2).pdf
abayamargaug
 
when is CT scan need in breast cancer patient.pptx
when is CT scan need in breast cancer patient.pptxwhen is CT scan need in breast cancer patient.pptx
when is CT scan need in breast cancer patient.pptx
Rukhnuddin Al-daudar
 
06-Molecular basis of transformation.pptx
06-Molecular basis of transformation.pptx06-Molecular basis of transformation.pptx
06-Molecular basis of transformation.pptx
LanaQadumii
 
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Turkey Diseases and Disorders Volume 2 Infectious and Nutritional Diseases, D...
Ali Raei
 
Keynote presentation at DeepTest Workshop 2025
Keynote presentation at DeepTest Workshop 2025Keynote presentation at DeepTest Workshop 2025
Keynote presentation at DeepTest Workshop 2025
Shiva Nejati
 
A tale of two Lucies: talk at the maths dept, Free University of Amsterdam
A tale of two Lucies: talk at the maths dept, Free University of AmsterdamA tale of two Lucies: talk at the maths dept, Free University of Amsterdam
A tale of two Lucies: talk at the maths dept, Free University of Amsterdam
Richard Gill
 
Hardy_Weinbergs_law_and[1]. A simple Explanation
Hardy_Weinbergs_law_and[1]. A simple ExplanationHardy_Weinbergs_law_and[1]. A simple Explanation
Hardy_Weinbergs_law_and[1]. A simple Explanation
Dr Showkat Ahmad Wani
 
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,PhosphorosClass-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
Class-11-notes- Inorganic Chemistry Hydrogen, Oxygen,Ozone,Carbon,Phosphoros
govindapathak8
 
SuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptxSuperconductingMagneticEnergyStorage.pptx
SuperconductingMagneticEnergyStorage.pptx
BurkanAlpKale
 
Skmuscle_properties_muscletone_muscletype.pptx
Skmuscle_properties_muscletone_muscletype.pptxSkmuscle_properties_muscletone_muscletype.pptx
Skmuscle_properties_muscletone_muscletype.pptx
muralinath2
 
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Direct Evidence for r-process Nucleosynthesis in Delayed MeV Emission from th...
Sérgio Sacani
 

EXTENDED DISTRIBUTED UML-BASED PROTOCOL SYNTHESIS METHOD

  • 1. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 DOI : 10.5121/ijcseit.2014.4401 1 EXTENDED DISTRIBUTED UML-BASED PROTOCOL SYNTHESIS METHOD Jehad Al Dallal Department of Information Science, Kuwait University, Kuwait ABSTRACT Synthesizing specifications for real time applications that involve distributed communication protocol entities from a service specification, which is modeled in the UML state machine with composite states, is a time-consuming and labor-intensive task. Existing synthesis techniques for UML-based service specifications do not account for timing constrains and, therefore, cannot be used in real time applications for which the timing constraints are crucial and must be considered. In this paper, we address the problem of time assignment to the events defined in the service specification modeled in UML state machine. In addition, we show how to extend a technique that automatically synthesizes UML-based protocol specifications from a service specification to consider the timing constraints given in the service specification. The resulting synthesized protocol is guaranteed to conform to the timing constraints given in the service specification. KEYWORDS Protocol synthesis, protocol specification, service specification, timing constraints, UML state machine 1. INTRODUCTION A protocol can be defined as an agreement on the exchange of information between communicating entities. A full protocol definition defines a precise format for valid messages (a syntax), procedure rules for the data exchange (a grammar), and a vocabulary of valid messages that can be exchanged, with the meaning (semantics). In protocol design, interacting entities are constructed to provide a set of specified services to the service users. While designing a communication protocol, semantic and syntactic errors may exit. Semantic design errors cause the provision of incorrect services to the distributed protocol users. Syntactic design errors cause the protocol to deadlock. A communication system is most conveniently structured in layers. The service access point (SAP) is the only place where a layer can communicate with its surrounding layers or service users. The layer can have several SAPs. The communication between the layer and its surrounding layers is performed using service primitives (SPs). The SP identifies the type of event and the SAP at which it occurs. From the user’s viewpoint (high level of abstraction), the layer is a black box where only interactions with the user—identified by the SPs—are visible. The specification of the service provided by the layer is defined by the ordering of the visible SPs and by the timing requirements between the SP occurrences. This specification is called service specification (S-SPEC). At a
  • 2. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 2 refined level of abstraction, the service provided by the layer is performed using a number of cooperating protocol entities. These protocol entities exchange protocol messages through a communication medium. The protocol specification (P-SPEC) prescribes the exchange of messages between the protocol entities. Figure 1 shows the two abstraction levels of a communication layer. Both S-SPEC and P-SPEC can be modelled using UML state machine. Figure 1. Communication service and protocol concepts Protocol specifications are much more complex than service specifications because of their refined nature. Therefore, it is quite natural to start the protocol design process from a complete and unambiguous service specification. The construction of a protocol specification from a given service specification is called a protocol synthesis. The synthesis approach is used to construct or complete a partially specified protocol design such that the interactions among the constructed or completed protocol entities proceed without encountering any logical error and, ideally, provide the specified service. Several protocol synthesis methods for different models have appeared in the literature such as in [1–5]. Only [5] considers the UML state machine model, but it does not consider timing requirements. In this paper, the assignment of the timing constraints to the service specification is discussed. In addition, the UML-based method is extended to synthesize protocol specifications from service specifications containing timing requirements. The resulting protocol specification is proved to conform to the timing constraints provided in the service specification. The paper is organized as follows: Section 2 gives an overview of the related research. Section 3 discusses the service specification time assignment and introduces the timed protocol synthesis method and a small example. The correctness of the synthesis method is proved in Section 4. Finally, section 5 provides conclusions and discussion of future work. 2. RELATED WORK In this section, an overview of other related research is provided and the basic service-oriented synthesis method introduced in [4] is briefly described.
  • 3. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 3 2.1. Other Related Research The protocol synthesis methods can be classified according to the used models. The used models include finite state machines [2,3], UML state machines [4], Petri-nets [1], and LOTOS-like [5]. Some of the service-oriented protocol synthesis methods consider the timing requirements given in the service specification [3,6], while others do not [1,2,4,5]. The method of dealing with timing constraints provided in the service specifications in [3,6] cannot be directly applied in this paper because a different model is used (i.e., Petri-nets and finite state machines). UML has been shown to be useful in modelling communication protocols (e.g., [7,8,9]). In [4], a synthesis method that derives protocol specifications from UML-based service specification has been introduced. The derivation process is performed in five steps. In the first step, the S-SPEC is projected onto each SAP to obtain the projected protocol specifications (PR-SPECs). In the second step, a set of transition synthesis rules is applied to the transitions of the PR-SPECs to obtain the primary protocol specifications of the entities (PPE-SPECs). In the third step, - transitions and -cycles are removed from the PPE-SPECs and a state machine reduction technique is applied to obtain the minimized PPE-SPECs. Then, rules are applied to remodel composite states of multiple regions. Finally, a state machine reduction technique is applied to obtain the minimized PE-SPECs. This method is extended here to consider timing constraints that were ignored in [4]. This paper extends the conference-based version [10] by elaborating more on the synthesis method and providing the correctness proofs for the proposed technique extension. 2.2. UML State Machine The UML state machine [11, 12, 13] is a diagram that consists of states shown in rounded-corner rectangles that are connected with labeled arrows which represent transitions. Each transition can be associated with (1) an event, (2) a set of predicates, and (3) a set of expected actions. To execute a transition, the protocol must be in the accepting state of the transition, the event is executed, and the predicates evaluate to true. The UML syntax for a transition is: event-name [guard predicate]/action-expression. A state can be simple, composite, or a submachine. A simple state is a state that does not have any substates. A composite state may contain states of any type. A composite state can include one or more orthogonal regions separated by dashed lines to represent a concurrent behavior. Each region includes substates connected by transitions. A state can be classified as typical or special. A typical state expresses a stable situation that represents the state context. Special states include initial, final, join, fork, junction, and choice states. An initial state of a state machine represents the starting state of the protocol represented by the state machine. A junction state is used to attach its incoming transitions together. A choice state is used to attach outgoing transitions together. A final state expresses the completion of the protocol that is specified in a composite state region or described by the state machine. The fork state splits an incoming transition into several unlabeled transitions which terminate on states in different regions of a composite state. The join state merges multiple incoming transitions from states of different regions of a composite state into a single, unlabeled outgoing transition.
  • 4. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 4 2.3. The Basic Synthesis Method The synthesis method introduced in [4] uses the UML protocol state machine to model both service and protocol specifications. To synthesize the protocol specification from the service specification, five steps are followed. 1. Project the service specification S-SPEC onto each SAP to obtain the PR-SPECs. Each PR-SPEC has the same structure as the S-SPEC. Each PR-SPECi has two types of transitions: SP-labeled and unlabeled. The SP-labeled transitions correspond to the S- SPEC transitions assigned to SPs, which are observed at SAPi. 2. Apply transition synthesis rules to the transitions of the PR-SPECs to obtain the primary protocol specifications of the entities (PPE-SPECs). A set of four rules are proposed to cover all possibilities of the different types of source and destination states of any transition. The rules are applied to determine the events associated with the transitions. Transition that are left with no events are associated with ε. 3. Remove ε-cycles and ε-transitions by using algorithms that are described in order to obtain the reduced PPE-SPECs. 4. Remodel all composite states with multiple regions by using two proposed recursive rules to obtain the protocol specifications of the entities (PE-SPECs). The two rules remodel the multi-region composite states of the resulting state machines of the protocol entities to single-region composite states in such a way that all of the possible orderings of the events are preserved and all of the events are executed. 5. Apply a state machine reduction technique to obtain the minimized PE-SPECs. The resulting protocol entities are proven to be syntactically and semantically free of errors. 3. TIMED PROTOCOL SYNTHESIS METHOD To synthesize timed protocol specifications, the service specification has to be provided with time constraints associated with the S-SPEC transitions. In this section, the time assignment to the S- SPEC transitions is discussed, and the synthesis method for the timed protocol specification is introduced. Finally, a small example is illustrated. 3.1. Service specification time assignment The assignment of the service specification time constraints is performed during the S-SPEC design process. These time constraints are assigned as time intervals associated with the transitions of the UML state machine that models the S-SPEC. The time interval [mint,maxt] means that the transition t can be executed only within the time T, since the source state of t is visited, where mint≤T≤maxt. The time T includes the waiting time Tw, since the source state is visited. If the SP associated with the transition is to be sent from one protocol entity (PE) to another, the time T also includes the time required for sending the SP from the source PE and receiving the SP by the destination PE. The time for sending and receiving an SP from PEi to PEj is the delay dij of the channel between the two PEs. Therefore, mint = min(Tw)+min(dij) and, consequently, mint has to be greater than or equal to min(dij). Similarly, maxt = max(Tw)+max(dij) and, consequently, maxt has to be greater than or equal to max(dij). In addition, the mint and maxt have to be assigned such that max(Tw)≥min(Tw). In other words, maxt-max(dij)≥ mint-min(dij). Thus, maxt≥mint+(max(dij)-min(dij)). In some cases, an SP associated with a transition can be sent to more than one PE (e.g., in Figure 2, A1 is sent to PE2 and PE3). Let X be a set of the protocol entities that can receive the SP. Generally, if an SP associated with a transition t can be
  • 5. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 5 sent from PEi to more than one PE such that each PE∈X, the time interval associated with t, has to be assigned such that ∀j∈X, mint≥min(dij) and maxt≥max(dij). This means that mint≥maximum∀j∈X (min(dij)) and maxt≥maximum∀j∈X (max(dij)). Similarly, ∀j∈X, maxt≥mint+(max(dij)-min(dij)). This means that maxt≥ mint+maximum∀j∈X(max(dij)-min(dij)). For example, in Figure 2, the service primitive A1 is sent to PE2 and PE3. You can notice that the conditions maxt≥maximum(max(d12),max(d13)) (i.e., 3>maximum (0.1,0.2)), mint≥maximum(min(d12), min(d13)) (i.e., 1>maximum(0,0.1)), and maxt≥ mint+maximum((max(d12)-min(d12)), (max(d13)-min(d13))) (i.e., 3>1+maximum((0.1-0),(0.2-0.1)) are satisfied. 3.2. Synthesis of timed protocol specifications An automatic synthesis method for the protocol entities from a UML-based service specification is introduced in [4] and summarized in Section 2. In this section, the synthesis method is extended to consider the timing constraints provided in the service specification. Figure 2. A UML-based service specification example The first step of the method is extended by associating the transitions of the PR-SPECs with the same time intervals associated with the transitions of the S-SPEC. The PR-SPEC transitions associated with ε-events are not assigned to time intervals. The second step is extended by applying the modified rules given in Table 1. These modifications consider the timing constraints. The justifications for these extensions are as follows: Rule 1: In this case, the transition is taking back the service to its initial state and, therefore, a synchronization message is sent to all other PEs. Thus, the channel delays between the PEi and all other PEs have to be considered. In this case, the maximum and the minimum channel delays among the considered ones are respectively subtracted from maxt and mint of the transition to obtain the new maxt and mint values. Rule 2 and Rules 3 and 4 in the case of x≠ Ø: In this case, the SP originates from the service user at SAPi. After the occurrence of this SP, other SPs are observed at other SAPs. A synchronization message is sent from PEi to the other corresponding PEs. Therefore, the channel delays between the PEi and the other corresponding PEs have to be considered, as illustrated in Rule 1.
  • 6. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 6 Rules 3 and 4 in the case of x = Ø: This rule implies that the flow of control must not be transferred to another protocol entity or service user. Therefore, no channel delays are to be considered. In this case, the same time interval is considered without changing. The corresponding transitions in PR-SPECx and other PR-SPEC (i.e., the last two columns in Table 1) are either associated with ε-events or receiving messages. The transition associated with an ε-event is not assigned a time interval and, therefore, no timing constraints are to be considered. In addition, the transition associated with a receiving message is not assigned a time interval because the time required to execute this transition is part of the channel delay already considered in the above rules. The rest of the original synthesis method steps remain the same. Figure 2 shows an S-SPEC example. Figure 3 shows the three PE-SPECs resulting from applying the extended synthesis method. In PE1, the transition associated with the service primitive A has the time interval [1-min(min(d12),min(d13)),3-max (max(d12),max(d13))] and the transition associated with the service primitive D has the time interval [1-min(d12),2-max(d12)]. In PE2, the transition associated with the service primitive E has the time interval [1- min(min(d21),min(d23)),2-max(max(d21), max(d23))] and the transition associated with the service primitive B has the time interval [1-min(d21) ,4-max(d21)]. Finally, In PE3, the transition associated with the service primitive C has the time interval [2-min(d32),3-max(d32)]. Figure 3. The PE-SPECs obtained by applying the extended synthesis method
  • 7. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 7 Table 1: The extended transition synthesis rules Rule ID Condition (s1 and s2 are source and destination states of the transition t of interest) x Event E of transition t in PR-SPECi Correspon- ding event in PR- SPECx Correspon- ding event in other PR- SPECs 1 s2 is a stable initial state of the state machine all SAPs - SAPi E/!ex [mint- min∀j∈X(min(dij)), maxt-max∀j∈X(max (dij))] ?ei Not applicable 2 s2 is a final state in the composite state cs Or s1 is a substate of cs and s2 is not a substate of cs Or s1 is a composite state (s1=cs) i cs rg SAP rg OUT −       ∈ ∀ U ) ( E/!ex [mint- min∀j∈X(min(dij)), maxt-max∀j∈X(max (dij))] ?ei Not applicable 3 s2 is a composite state InC(s2) – SAPi E/!ex [mint-min∀j∈X(min(dij)), maxt-max∀j∈X(max (dij))] if x≠Ø E [mint, maxt] if x=Ø ?ei ε 4 s2 is a simple state OUT(s2) – SAPi 4. PROOF OF CORRECTNESS Proving the correctness of the synthesis method requires proving that the synthesis method is syntactically and semantically correct. This proof is provided in [4] but without timing constraints. Therefore, to complete the proof, we prove here that the time assignments to the transitions of the PEs as a result of applying the extended synthesis method conform to the time constraints assigned to the transitions of the S-SPEC. Lemma 1. In the PEs, the time T required for executing an SP is mintp≤T≤maxtp such that the time interval [mint,maxt] is associated with the corresponding transition in the S-SPEC and mint≤ mintp≤T≤maxtp≤maxt. Proof: An SP executed in a PE is either (1) not sent to another PE, (2) sent to a service user, or (3) sent to one or more other PEs. In the first two cases, the SP is not sent to another PE and, therefore, no channel delays are to be considered. As a result, in these two cases, the time required to execute the SP in the PE is the same as the time associated with the corresponding transition in the S-SPEC (i.e., (mint= mintp)≤T≤(maxtp=maxt)). For the third case, the SP is either sent to another PE or sent to more than one other PEs. If the SP is sent to another PE, the time required to execute the SP in the PE is the waiting time since the source state is visited and the channel delay dij. The waiting time is the time associated with the PE transition labeled by SP. This time is T such that mint-min(dij)≤T≤maxt-max(dij). As a result, the time required to execute the SP in the PE (i.e., waiting time + channel delay) is T such that mint-min(dij)+dij≤T≤maxt-max(dij)+dij. This means that mintp= mint-min(dij)+dij and maxtp=maxt-
  • 8. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 8 max(dij)+ dij. Since mint-min(dij)+dij and min(dij)≤dij, then mintmin(dij)+min(dij)≤ mint- min(dij)+dij≤T. As a result, mint≤mintp≤T. Similarly, since T≤maxt-max(dij)+dij and dij ≤ max(dij) then T≤maxt-max(dij)+ dij≤maxt-max(dij)+max(dij). Therefore, T≤maxtp≤ maxt. As a result, in this case, in the PEs, the time T required for executing an SP is T such that mint≤ mintp≤T≤maxtp≤maxt. The last case is when the SP is sent from one PE to more than one other PEs. In this case, the waiting time associated with the transition labeled by SP is T such that mint- minimum∀j∈X(min(dij))≤T≤maxt - maximum∀j∈X(max (dij)) where X is the set of the protocol entities that can receive the SP. When considering the channel delays, the minimum time T required to execute the SP is calculated such that mint-minimum∀j∈X(min(dij))+ minimum∀j∈X(dij)≤T. Since minimum∀j∈X (min (dij))≤minimum∀j∈X (dij), then mint-minimum∀j∈X (min(dij))+minimum∀j∈X(min(dij))≤ mint-minimum ∀j∈X(min(dij))+minimum∀j∈X(dij)≤T. As a result, mint ≤mintp≤T. Similarly, the maximum time T required to execute the SP is calculated such that T≤ maxt-maximum∀j∈X(max(dij))+maximum∀j∈X(dij). Since maximum∀j∈X (dij)≤maximum∀j∈X (max(dij)), then T≤ maxt-maximum∀j∈X(max(dij))+maximum∀j∈X(dij) ≤ maxt- maximum∀j∈X(max(dij))+maximum∀j∈X(max (dij)). Therefore, T≤maxtp≤maxt. As a result, in this final case, in the PEs, the time T required for executing an SP is T such that mint≤ mintp≤ T≤maxtp≤maxt. As a result, for all cases, in the PEs, the time T required for executing an SP is mintp≤T≤maxtp such that the time interval [mint,maxt] is associated with the corresponding transition in the S- SPEC and mint≤ mintp≤T≤maxtp≤maxt. ■ Lemma 2. For any sequence of SPs in the S-SPEC executed during the time interval [mint,maxt], the corresponding SPs in the PEs are executed within the same or narrowed time interval. Proof: The execution of sequence of n SPs in the S-SPEC is performed during the time interval [mint,maxt] such that mint = mint(SP1)+ mint(SP2)+ ….+ mint(SPn) and maxt = maxt(SP1)+ maxt(SP2)+ ….+ maxt(SPn). By Lemma 1, for any SP, mint(SP) in the PE-SPEC is greater than or equal to the mint(SP) in the S-SPEC and maxt(SP) in the PE-SPEC is less than or equal to the maxt(SP) in the S-SPEC. Therefore, the execution of the sequence of n SPs in the PE-SPECs is performed within the same or narrowed time interval [mint,maxt]. ■ Lemma 3. The time constraints assigned to the transitions of the PEs as a result of applying the extended synthesis method conform to the time constraints assigned to the transitions of the S- SPEC. Proof: As a result of assigning time intervals to the transitions of the PEs using the extended synthesis method, the execution of any sequence of SPs in the PEs is performed during the same or narrowed time intervals given in the S-SPEC (Lemma 2). Therefore, the time constraints assigned to the transitions of the PEs as a result of applying the extended synthesis method conform to the time constraints assigned to the transitions of the S-SPEC. ■ 5. CONCLUSIONS AND FUTURE WORK In this paper, a synthesis method for protocol specifications from UML-based service specifications is extended such that the timing constraints provided in the service specification are considered in the resulting protocol specifications. This extension makes the synthesis method applicable for real time applications. The extension uses UML state machine for modeling both
  • 9. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 9 the service and protocol specifications. In this paper, the assignment of the timing constraints to the service specification is discussed. In addition, the paper shows how to map the timing constraints associated with the transitions of the service specification model to the transitions of the protocol specification models. The maximum and minimum delays of the channels between the protocol entities are considered when mapping the timing constraints in this paper. The basic synthesis method extended in this paper is limited to the service specifications that have sequential behavior (i.e., only one service primitive can be executed at once). In the future, we plan to extend the basic synthesis method to handle possible concurrent occurrence of service primitives in the service specifications, modeled in the UML state machine by using composite states of multiple regions. In addition, we intend to study the effect of the concurrent behavior of the service specification on the assignment of the time constraints to the service and protocol specifications REFERENCES [1] H. Yamaguchi, K. El-Fakih, G. Bochmann, T. Higashino, (2003) “Protocol synthesis and re-synthesis with optimal allocation of resources based on extended Petri nets,” Distributed Computing, Vol. 16, pp. 21-35. [2] J. Al Dallal, K. Saleh, (2008) “Service-oriented synthesis of distributed and concurrent protocol specifications,” Journal of Computer Systems, Networks, and Communications, Vol. 2008(794960), pp 1-13. [3] J. Al Dallal, (2006) “Automatic synthesis of timed protocol specifications from service specifications,” WSEAS Transactions on Computers, Vol. 5, pp. 105-112. [4] J. Al Dallal and K. Saleh, (2012) “Synthesizing distributed protocol specifications from a UML state machine modeled service specification,” Journal of Computer Science and Technology, Vol. 27, pp. 1150-1268. [5] N. Maneerat, R. Varakulsiripunth, B. Bista, K. Takahashi, Y. Kato, N. Shiratori, (2004) “Composition of service and protocol specifications in asynchronous communication system,” IEICE Transactions On Information and Systems, Vol. 87, pp. 2306-2317. [6] J. Park and R. Miller, (1997) “Synthesizing protocol specifications from service specifications in timed extended finite state machines,” Proceedings of the 17th International Conference on Distributed Computing Systems (ICDCS '97), pp. 253. [7] B. Kumar, J. Jasperneite, (2008) “Industrial communication protocol engineering using UML 2.0: a case study,” In Proc. 7th IEEE International Workshop on Factory Communication Systems, pp. 247- 250. [8] B. Kumar, J. Jasperneite, (2010) “UML Profiles for Modeling Real-Time Communication Protocols,” Journal of Object Technology, Vol. 9, pp. 178-198. [9] K. Thramboulidis, A. Mikroyannidis, (2003) “Using UML for the design of communication protocols: the TCP case study,” In Proc. 11th International Conference on Software, Telecommunications, and Computer Networks. [10] J. Al Dallal, (2013) “Time assignment for distributed service and protocol UML-based specifications”, IEEE 10th International Conference on Electronics Computer and Computation ICECCO 2013", Ankara, Turkey. [11] R. Miles and K. Hamilton, (2006) “Learning UML 2.0”, O'Reilly Media, 1ed. [12] J. Al Dallal, (2008) “Testing object-oriented framework hook methods”, Kuwait Journal of Science and Engineering, Vol. 35, No. 1B, pp. 103-122. [13] J. Al Dallal, (2012) “UPSS: a tool for synthesizing UML concurrent communication protocol entities”, Advances in Applied Information Science, Vol. 4, pp. 103-108.
  • 10. International Journal of Computer Science, Engineering and Information Technology (IJCSEIT), Vol. 4, No.4, August 2014 10 Author Jehad Al Dallal received his PhD in Computer Science from the University of Alberta in Canada and was granted the award for best PhD researcher. He is currently working at Kuwait University in the Department of Information Science as an Associate Professor and Department Chairman. Dr. Al Dallal has completed several research projects in the areas of software testing, software metrics, and communication protocols. In addition, he has published more than 80 papers in reputable journals and conference proceedings. Dr. Al Dallal was involved in developing more than 20 software systems. He also served as a technical committee member of several international conferences and as an associate editor for several refereed journals.