ISSN ONLINE(2320-9801) PRINT (2320-9798)

All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.

A Formal Approach for the Verification of Order of Execution in Long Term Composed Services

M. Thirumaran1, M. Jannani2
  1. Assistant Professor, Department of Computer Science and Engineering, Pondicherry Engineering College, Pondicherry, India
  2. PG Scholar, Department of Computer Science and Engineering, Pondicherry Engineering College, Pondicherry, India
Related article at Pubmed, Scholar Google

Visit for more related articles at International Journal of Innovative Research in Computer and Communication Engineering

Abstract

Web services combine the best aspects of component-based development and the Web. With the increase in the demand for incorporating dynamic changes to services in long term composition, Web service change management has gained a lot of attention. Though a lot of works have focused on providing an optimized solution for dynamic changes only a very few have concentrated on the methodology adopted. In this paper, we focus on providing a formal approach for the evaluation of the changes made. The verification of order of execution in Long term Composed Services (LCS) has been performed using Finite State Machine and has been elucidated using Passport system as the case study.

Keywords

Service Oriented Architecture, Web Services, Change Management, Business Policy, Long term Composed Services

INTRODUCTION

Web services extend the World Wide Web infrastructure to provide the means for software to connect to other software applications. The rapid adoption of Web services is motivating a paradigm shift in enterprise structure from the traditional single entity to a collaboration of Web services. Such enterprises open the door of entrepreneurship to all Web users by facilitating functionality outsourcing on the web. The dynamically changing business environment, however, acts as a hurdle to the success of a business when incorporation of the changes without any issues is considered.
Change management involves a set of processes that are employed to ensure that significant changes are implemented to a business process during its maintenance phase. The purpose of the change management process is to ensure that: business risk is managed and minimized; standardized methods and procedures are used for efficient and prompt handling of all changes; all changes to service assets and configuration items are recorded in the configuration management system; and all authorized changes support business needs and goals.
Today organizations in all industries particularly financial services, retail and communications are increasingly dependent upon IT and a highly available network to meet their business objectives.
The necessity for change increases with the market demand and technology. Though there are many existing change management approaches to satisfy the normal changes, they fail to support the evaluation of dynamic changes within the business constraint.
Therefore, this paper focuses on providing a formal approach for the evaluation of the changes made. Any change made to the logic should not drastically affect the actual order in which the entities are executed, i.e. the change should not affect the order of execution to such an extent that the actual nature of the composed service is altered. So, the verification of order of execution in Long term Composed Services (LCS) has been performed using Finite State Machine. The use of standard and formal approach assures efficiency of the change evaluation.

RELATED WORK

Cuadrado.F et al. [1] proposed a method for automating management operations which provides self-configuration capabilities over the services infrastructure which first defines a model covering all the information required for automating the management of the system, including the means to describe the system and diagnose its correctness (through the stability and desirability formulas) and then describes a satisfiability-based engine that can diagnose the health of any given configuration, and in case it is incorrect, explore the potential solutions and propose the required changes for reaching a new, correct state. It further presents a mechanism for reconfiguring the runtime system through the application of the identified changes. [2] proposed an Ev-LCS, an end-to-end framework that specifies, reacts to, and verifies top-down changes in a LCS. This framework first proposes a formal model which provides the grounding semantics to support the automation of change management and a set of change operators that allow specifying a change in a precise and formal manner by proposing a set of algorithms to automatically implement them.
It then proposes a change enactment strategy that actually implements the changes. Dimitris Apostolou et al. [3] proposed an ontology-based approach for developing and maintaining e-Government services that can effectively deal with changes which enables the systematic response of e-Government systems to changes by applying formal methods for achieving consistency when a change is discovered and also enables the knowledgeable response of service designers and implementers to changes by utilizing design rationale knowledge. Sabri MTIBAA and Moncef TAGINA [4] present a change management framework for a citizen-centric healthcare service platform. A combination between Petri nets model to handle changes and reconfigurable Petri nets model to react to these changes are introduced to fulfill healthcare goals. S. Mtibaa and M. Tagina [5] present a distributed telemedicine environment reaping from both the benefits of Service Oriented Approach (SOA) and the strong telecoms capabilities.

PROPOSED METHODOLOGY

ORDER OF EXECUTION

In a business logic L encompassing set of rules R, functions F, parameters P and dependency D, change evaluation can be determined based on the order of execution of rules and functions. In a normal structural programming language, the order of execution depends on the control, branch and functions.
In an object oriented programming, the message sequence determines the order of execution. This concept is extended further and used in the business logic for analyzing the dependency. Example- In a Passport system domain, consider a change request for verifying the age of the applicant (e.g minor, major) while checking the age, minor means need to check parents citizenship and other proofs.

FSM REPRESENTATION AFTER CHANGE

Here after implementing the change request, order of the execution of the program changes which is shown below. This includes an additional transition from q01 to qo, qo to q11 and q00 to q01.
Here the state represents rule and transition is represented by using the symbol δi which includes the current state and the input which may also be an internal transition.
Within the internal transition, the state is the function and similarly its transition includes current state and input which includes parameter set, policy set and dependency set. Each state has an exceptional state which decides whether that state can be rolled back or not.
Logic is said to be executed successfully, if each and every rule and function under it executes in order. Any change in the order of execution of rules is mapped in the dependency set of that rules. The order of execution is the evaluation methodology in change management that assists in the change measure. In response to the changes from the analyst, the source manager sorts out the required logic.
The corresponding logic is decomposed into rules, functions and parameters. Then the requested change is fetched from the corresponding rule set or function set. The fetched rule or function is analyzed with the dependency set for consistency.
The transition function for that change is analyzed and an equivalent FSM is generated. The next state of the particular rule or function is predefined using the FSM state transition table. This STT can be utilized to provide the appropriate control flow in the logic.
The above algorithm provides an effective approach for analyzing and evaluating the changes based on order of execution using the STT (State Transition Table).

BEFORE CHANGE

In the evaluation of change request using order of execution, input in the transition includes parameter set and function set. With the help of transition, order of execution can be easily identified.

STATE TRANSITION TABLE BEFORE IMPLEMENTING THE CHANGE

Here the δ 0 (R2, δ 01) represents the transition in which R2 represents the current state and δ 01 represents the input for δ0 and it is also the internal transition for δ0.

STATE TRANSITION TABLE AFTER IMPLEMENTING THE CHANGE

After implementing the requested change, the internal transition δ11 of state q1includes another internal transition δ01 which goes to the internal state q12 through state q0 which finally again goes to the internal state q11 of the state q1.
Thus the Order of Execution has been verified using formal and standard approach. The use of Finite State Machine assures the efficiency in the estimation of order of execution.
Sample OOE Evaluation: The FSM generated for order of execution involves the rules, functions and parameters states through which the transition takes place. In the below transition table, transition is formulated as start state q0 to the business logic which involves rules functions and parameters. The * denotes that transited state involves composite elements. Thus the start state q0 initially enters the rule 1 which is again composite R1*.
Therefore OOE= 2/4 = 50% [50% deviation in order of execution]
The following graph in figure 3 shows the percentage of deviation in order of execution observed considering the similar requests for a sample LCS set. The adoption of formal methodology has increased the detection of deviation which implies that the evaluation process has been fine-tuned.

CONCLUSION AND FUTURE WORK

The proposed methodology, Finite State Machine thus efficiently performs the evaluation of the changes made. Order of execution in LCS has been evaluated with the aid of the state transition table. The elucidation of the proposed approach using Passport system as the case study gives a clear idea of the change scenario and the evaluation of order of execution. The future enhancement is to include more factors for change evaluation which will aid in the assessment of the deviations in the functionality of an LCS after a change.
 

Tables at a glance

Table icon Table icon Table icon Table icon Table icon
Table 1 Table 2 Table 3 Table 4 Table 5
 

Figures at a glance

Figure 1 Figure 2 Figure 3
Figure 1 Figure 2 Figure 3
 

References

  1. Felix Cuadrado, Juan C. Duenas and Rodrigo Garcı´a-Carmona, “An Autonomous Engine for Services Configuration and Deployment,” IEEE Transactions on Software Engineering, Vol. 38, No. 3, May/June 2012.

  2. Xumin Liu, AthmanBouguettaya, Jemma Wu, and Li Zhou, “Ev-Lcs: A System For The Evolution Of Long-Term Composed Services,” IEEE Transactions on Services Computing, Issue 99, 2011.

  3. DimitrisApostolou ,GregorisMentzas,LjiljanaStojanovic, Barbara Thoenssen, TomásPariente Lobo, “A collaborative decision framework for managing changes in e-Government services,” Government Information Quarterly, published by Elsevier, 2011.

  4. Sabri MTIBAA and Moncef TAGINA, “Managing Changes in Citizen-Centric Healthcare Service Platform using High Level Petri Net”, (IJACSA) International Journal of Advanced Computer Science and Applications, 2011.

  5. S. Mtibaa and M. Tagina, “An Automated Petri-Net Based Approach for Change Management in Distributed Telemedicine Environment”, Journal of Telecommunications, Vol. 15, Issue 1, July 2012.

  6. Minhong Wang, Huaiqing Wang, "From process logic to business logic—A cognitive approach to business process management", Elsevier journal of Information & Management, Vol. 43, Issue 2, pp. 179–193, March 2006.

  7. Salman Akram, AthmanBouguettaya, Xumin Liu, Armin Haller, Florian Rosenberg, Xiaobing Wu. “A Change Management Framework for Service Oriented Enterprises”, International Journal of Next-Generation Computing (IJNGC), Vol. 1, No. 1, pp. 1-077, 2010.

  8. Shuying Wang, Miriam A. M. Capretz. “A Dependency Impact Analysis Model for Web Services Evolution, IEEE International Conference on Web Services”, IEEE Computer Society, 2009.

  9. Hua Xiao, Jin Guo and Ying Zou. “Supporting Change Impact Analysis for Service Oriented Business Applications”, IEEE International Workshop on Systems Development in SOA Environments (SDSOA'07), 2007.

  10. Minhong Wang, Huaiqing Wang, "From process logic to business logic—A cognitive approach to business process management", Elsevier journal of Information & Management, Vol. 43, Issue 2, pp. 179–193, March 2006.

  11. H. Yahyaoui, L. Wang, A. Mourad, M. Almullah, Q.Z. Sheng, "Towards context-adaptable Web service policies", in Procedia Computer Science, Vol. 5, pp. 610–617, 2011.

  12. Daniel Żmuda, MarekPsiuk, Krzysztof Zieliński, "Dynamic monitoring framework for the SOA execution environment", in proceedings of ICCS 2010, Procedia Computer Science, Vol. 1, pp. 125–133, Issue 1, May 2010.