Document not found! Please try again

A Novel Approach for Web Service Run Time ...

1 downloads 0 Views 659KB Size Report
collaboration and negotiation framework (ACNF), which is a negotiation support system that uses active documents with embedded business logics or business ...
Available online at www.sciencedirect.com

Procedia Technology 6 (2012) 145 – 152

2nd International Conference on Communication, Computing & Security [ICCCS-2012]

A Novel Approach for Web Service Run Time Exception Handling

Thirumaran.Ma, Dhavachelvan.Pb, Shanmugapriya.Rc, Kiran Kumar Reddyd aDepartment

of Computer science and Engineering, Pondicherry Engg College, India

. bDepartment of Computer science and Engineering, Pondicherry University, India. cDepartment of Computer science and Engineering, Pondicherry Engg College, India. dDepartment of Computer science and Engineering, Pondicherry Engg College, India.

Abstract Service Computing has recently gained significant momentum to enable the IT services and computing technology to perform business services more efficiently and effectively. Runtime management has been given utmost significance as a potential strategy to handle runtime exceptions increases the adaptability of services to exceptional circumstances. service computing aims for efficiently handling run time issues during service computation such as exception handling, change management and dynamic reconfigurable services. There are many exceptions often raised during service consumption and execution at run time and some of them gets resolved, but many of them failed to resolve due to the lack of run time exception handling mechanism. In this paper we propose a model for context aware web service exception handling targeting service life time and service reaction time which could determine whether the exception is solvable or un solvable with respect to the exception context with time and policy constraints . Thus a novel approach for web service runtime exception handling has been proposed which affords facilities for managing the runtime exception with the help of a set of QoS parameters that are satisfying the service computational criteria such as computability, traceability, and decidability. In addition to that, it supports serviceability, manageability, availability and configurability. The results encourage new direction of research with performance upgrade in the field of service computing for runtime exception handling. © 2012 2012The TheAuthors. Authors.Published Published Elsevier Ltd. © byby Elsevier Ltd. Selection and/or peer-review under responsibility of the Department of Computer Selection and/or peer-review under responsibility of the Department of Computer Science & Engineering, National Science & Engineering, National Institute of Technology Rourkela Institute of Technology Rourkela Keywords: Service Computing; Context Aware Computing: Business Logic Model; Exception Handling, Quality of Service (QoS) ; Computational Criteria.

1.

Introduction

Business transactions take place over the basic internet infrastructure through web services. Web services are used primarily as a means for businesses to communicate with each other and with clients.

2212-0173 © 2012 The Authors. Published by Elsevier Ltd. Selection and/or peer-review under responsibility of the Department of Computer Science & Engineering, National Institute of Technology Rourkela doi:10.1016/j.protcy.2012.10.018

146

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

Businesses realize that the cost of automating transactions with trading partners is very high in [11]. The mapped to web service business logic which in turn requires business policy enforcement. Most of the services are just being ignored by the service consumers due to unhandled exceptions at runtime [3] and [5]. Service providers cannot manage all kind of runtime exceptions during service computation or service composition time since most part of exceptions are raised from service business logic. Targeting the preliminary level of business logic is not easily identifiable because it requires further analysis over the implemented business logic. A new business model is required. Hence the need for self manageable web services has been recognized by both service providers and service consumers, in order to synchronize with ever-changing businesses. Business Logic Exception Handling Model aims to resolve the complexities involved, by decomposing the business logic into set of computable entities such as business rules, functions and parameters, also preserving the functional dependencies among the business rules, functions and parameters with the business policy constraints. Any service oriented application domain which adopts this model for their service development could be easily managed in terms of handling run time exceptions towards service reliability and manageability. This model enables web services to realize their computational criteria such as computability, traceability and decidability with the supporting QoS attributes like manageability, configurability, serviceability and dependency. The section 2 discusses about the related works in this field. The significance of factors , web service Qos parameters which are ignored by those models, with respect to handling exceptions at service computation is discussed in section 3. The applicability of the proposed model is discussed in section 4. In section 5, the results of experimentation with the proposed model are discussed. 2. Literature survey Many research works on web service discovery and composition have been proposed and implemented.Hence Exception Handling mechanism is highly recommended for web services which are to be composed. In this session we discuss about the related works and compare their pros and cons. Zongmin shang analyzed the types of exceptions in business process execution and proposes several corresponding handling strategies and identified the role of chorographic in which business process plays during execution and present a collaborative approach for exception handling in business process execution by cooperative works in [1]. Qin Lu and Weishi Zhang discussed briefly about Exception handling process and described exceptions based on the predication logic and state chart. A framework to handle exception detection,exception diagnosis and exception recovery in [2] . San-Yam Hwang has designed a system MPEHS which uses rule-based system to handle exception in [4]. Alexander Romanovsky found that developers who integrate complex web applications face are dealing with legacy web services and incorporating means for tolerating errors in [7]. Roman Vaculín, Kevin Wiesner, Katia Sycara they presented an approach for exception handling and recovery of semantic web services based on OWL-S in this paper [8]. Minhong Wang, Huaiqing Wang, Kwok Kit Wan and Dongming Xu several types of intelligent agents are proposed and a multi-agent framework is presented for exception handling in securities trading. Here they extracted business knowledge such as business rules and strategies identified the role of chorographic in which business process plays during execution and present a collaborative approach for exception handling in business process execution by cooperative works in [9]. In this paper [3] The exception handling process is described based on policies which are used to promote the validity of exception handling for composite Web services. And Event-Condition-Action rules are used to express the events, conditions and exception handling actions during exception handling.San-Yam Hwang has designed a system MPEHS which uses rule-based system to handle exception [4]. Went Jiajia consider the critical thing for the user to decide how to handle exception in business process and they provide predefine policies to support system level solution in [5].Policies differ the management logic from its application and vigorously capture exception regulating and

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

adding policy, make the exception handling process of system more flexible. Alexander Romanovsky found that developers who integrate complex web applications face are dealing with legacy web services and incorporating means for tolerating errors in [7]. Roman Vaculín, Kevin Wiesner, Katia Sycara they presented an approach for exception handling and recovery of semantic web services based on OWL-S in [8]. Minhong Wang, Huaiqing Wang, Kwok Kit Wan and Dongming Xu, several types of intelligent agents are proposed and a multi-agent framework is presented for exception handling in securities trading. Here they extracted business knowledge such as business rules and strategies from securities trading and settlement practice, and applied to the design of individual agents to make them act autonomously and collaboratively to fulfill the goal of exception reconciliation and hence enhance the flexibility and adaptability of our agent-based exception handling system in [9]. Yuliang Shi, Liang Zhang designed a framework to dynamically handle exception in workflow based on web services and enhance the flexibility of workflow system, based on defined for ontology supported services in [10]. Timon C. Du and Hsing-Ling Chen propose an active collaboration and negotiation framework (ACNF), which is a negotiation support system that uses active documents with embedded business logics or business rules that can adapt to different collaborative strategies in a business-to-business (B2B) environment [6]. 3. Exception Handling Scenario Automatic Notification of Check Bounce within the reaction time of check clearance 1. Account Verification of payer and receiver 2. Check the account type for transaction 3. Check for sufficient amount exist in the account of the paying party 4. If no sufficient amount then send message notification to the paying party 5. Wait for the grace period This application enables the guest to enquire about his returned checks and also to make payments over phone. As per the Theory of Computation, There exist two kinds of problem the (P-problem) solvable and (NP problem) unsolvable for DFA and NFA respectively. Solution has to be found within the reaction time. There are multiple solutions for a NFA and a finite solution for DFA. One particular Solution found from the NFA can be converted in to DFA if there is a solution for the problem within the reaction time. There exists a finite algorithm for all solution.

4. Proposed Model for Web Service Run time Exception Handling Exception Handler in figure 1. mainly consist of four major components the context analyzer, decidability evaluator, runtime environment, computational Engine. The Exception information is given as a request, the request is in turn given to the context analyzer. The context analyzer has the context, rule, policy, constraint, and resources at what time Exception request is raised, then further it is taken to the complexity. From complexity, time complexity and space complexity is calculated. Scheduler has rules execution plan how the flow of Execution plan will take place. It is taken to the execution plan, execution plan find the exception point, which is connected to the computational engine. There is a check for functions, rules and parameters. Traceability is a point at which exception is raised. Access control has permission to change the code. Communication Engine communicates to the problem classifier the changes it gets from access control. The problem classifier associates parameter, composite function. Decidability Evaluator is connected to TM, solution set, R-Time, class-NP, class-P. class-P has solvable solution and class-NP may have a solvable solution, the class-NP mainly is of two types NP-hard(may be solvable) and NP-complete(solvable),R-Time is the Reaction time,solutionset is one where there may be number of solutions available before the reaction time,turing machine is mainly designed to find solution for a problem within the reaction time using a fixed

147

148

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

Figure 1. Exception Handling Model Algorithm. This block is then connected to the auto execution and audit log. The Auto Execution is connected to runtime environment. Thus the Exception handler will handle the exception. Audit log consits of various solved solution stored in it. 4.1 Web Service Run-Time Exception Management Normally in web service consumption scenario an user can make a change request at any time and the request is handled by the business analyst with respect to the context and business policy. These change requests are often raising run time exceptions which can be handled at run time with higher priority. Let L={R,F,P,D} be the business logic set composed of rules, functions, parameters and dependency relation. Let the user makes change request (say F23) at time tcr . let te be the time at which the user makes a request which raise an exception. The exceptions are basically classified into two types based on the change request (i.e.) internal (alter) /external (cancel). Assume that the service in execution generates an exception for which change request is raised. Then the request is accepted and loaded into the stack for easily extracting the bounded functions and rules. So whenever an exception is raised the corresponding change request (CR) loaded on the stack is popped out and ready for processing. The finite state machine (Turing Machine) is used in this approach in order to fetch and extract the module associated with the run time exception. Now the exception the Turing machine accepts the exception, we prove how the request F23 is accepted by the T. The Turing machine goes through the following sequence of configuration to accept the change request CR(F 23). The change request F23 is split into R2F3 (q0 , 2F3) (q1 2F3) (q2 2F3) ( ha 2F3

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

Therefore the Turing machine accepts the change request which in turn implies that the exception accepted. 4.1.1 Time Constraint Time constraint is defines as the time limit fixed for a particular event to take place. If the event appears after ce. Let L={R,F,P} be a business logic set. Assume at a certain time tcr there comes a change request. Let it be F23. Then a time limit (grace time) Tg is given so that the user can cancel / alter the change request CR within the fixed time limit. Since the grace time is fixed only after the change request comes, so the grace time is never less than t cr. If the time at which the change request comes is he range tcr then the time grace time tg>tcr but to certain limit ,so that any exception raised of tcr>te>tg . Give L is a business logic set and tcr is the time at whish change request made. And tg is the grace time given to raise an exception. 4.1.2 Reaction Time When the change request CR from the user is under processing, the time take by the user to raise an exception g . The faster the exception is raised , the better exception handled. Consider a business logic set L={R,F,P,D}. Assume that every rule or function in the set is of polynomial time complexity. Time complexity of the entire business logic TL d ------------------------------(i) Assume that user makes a change request CR, Time complexity of the change request made TCR a(logn)d Time at which the user makes a change request is tcr. Grace time is tg = tp (where grace time is nothing nut until the change request completes i.e processing time tp) Assume now the user raises an exception Time at which the user raises an exception be te Therefore reaction time is given by, T R = tcr te which is strictly lesser than tg. 4.1.3 Context Analysis Context analysis means analyzing whether a particular change CR has been finished processing . If the CR is exception is proceeded provided that te(time at which the exception is raised) is not less than the time constraint. Let L={R,F,P,D} be a business logic set. Assume at time TCR an user makes a change request. Let it be the changes in F23. Then the business analyst proceeds with the change request. Since the exception is either cancel or alter we consider both as follows: Now at time te the user raises an exception (say to alter / cancel the request F23).Now the last change request CR accepted is popped and matched with the CR . If matches then whether the request is completed or not is ot completed, then the exception is proceeded. 4.1.4 Complexity Analysis Whenever an user raises an exception, the business analyst has to exercise the exception and manage the

149

150

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

developed framework. Normally in a web service, the exception is with respect to cancel /alter the change request that has been already made. Now let us derive how the change request is evaluated. Let L={R,F,P} be a business logic set. Assume at time T CR an user makes a change request. Let it be the changes in F23. Then the business analyst proceeds with the change request. d Time complexity of the change request made TCR + , where Pi are the parameters dependent on SF3.

Since the time complexity of the parameters are constants, TCR constant value.

d

+ kc, where k-no of constants c-

4.1.5 Computability Computability is a measure that is used to examine the desirable characteristics of a change request (a business function or a business rule). Theorem: A change request is said to be computable if the change request is a primitive recursive function. Proof: Let L={R,F,P,D} be a business logic set. Assume that the business logic set to be primitive recursive. Now the user makes a change request. Let the change request CR is to add a sub-function to the existing business function. To prove that the CR is computable it is enough we prove that CR is primitive recursive. Let e recursive Let f1(x,y)= x v y (x or y) f2 Our goal is to add new sub-function. Let f3(x,y,z) be a new function where s the newly added subfunction. Then, f3 = f2 = f2((f2(x,y)v z),f1(x,y)) = f2((f2(x,y)v z),f1(x,y)) = f2(f1(f2(x,y),z),f1(x,y)) Sine any function obtained from computable function by primitive recursion is a total computable function. Finally, since the sub-function f3(x,y,z) = f2(f1(f2(x,y),z),f1(x,y)) we can use that fact that composition preserves primitive recursiveness to conclude that f3 is primitive recursive. Hence the function f3 is primitive recursive and it is said to be computable. 4.1.6 Traceability Traceability in service computing environment means tracking the particular defected functions which are partially computable under primitive recursive function. This partial computation is occurred due to run time exception and detected by Business Logic. According to computability, If the business function is given a k-tuple x in the domain of f, then after a finite number of discrete steps the function must terminate and produce f(x). So that f(x) is computable otherwise (x) is not computable. This happens for few instances of x but these are all traceable with the context and type of exception. Traceability of the parameters or sub functions are easily found at domain B when mapping all business functions from domain A in xi , f(xi) is unable to produce the output. are represented as primitive recursive function as given below is set to be Null (Null Pointer Exception)

151

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

ßf (x,0) = ßg1 (x) for some limited value of x (ii) ßf (x,y +1)= ßh ( ßg2 (x,y ), ßf(x,y )) (iii) From defined functions ßg1, ßg2, ßh. In that the function ßg1 is found to be non computable since initial functions like Nßf, Ißf [ßf1 ßf2] is not computable by holding null pointer and input/output exception. So the whole service is set to be non computable. The proposed model has the inbuilt capability to detect the failure business function with its exception type. If any function which is not by primitive recursive is easily identified and the cause of which the failure happened is tracked by the business logic model. 4.1.7 Problem Classification (a) NP problem Theorem: Let L be the business logic set and CR be the change request made (say F1 ). If F1 due, then F1

p

F2 and F2

Proof: Let TD be a deterministic Turing machine such that D reduces F1 F2 in polynomial time. i.e. F1 that there exists a non-deterministic Turing machine TN which solves F2 in polynomial time .ie. F2 Now let us construct a new composite Turing machine T such that T=T D*TN and this Turing machine produces the following: 1. TD* TN solves F1. 2. TD* TN is a non-deterministic Turing machine. 3. TD* TN runs in polynomial time. 4. T computes F1. 5. F1 (B)NP-Hard /NP-Complete Theorem: A change request is said to be NP- Complete if and only if it is NP-Hard. Proof: To prove a CR to be NP-Hard it is enough if show that F1 p F2 change request. Assume that there exists a Turing machine T2 accepting F1 in polynomial time and there is a function * * L1 L2 computed by another Turing machine T f within polynomial time.

p

F2.

f:

*

6. 7. 8. 9.

FSo1 isthatpolynomialforanyF time

reducible

to Fonly2as

ifF1f(F)

pF 2Ldue2. to the CR

-deterministic Turing machine which solves CR in polynomial time F is NP-hard.Since F is NP-hard, F is NP-Complete.

Decidability Let L={R,F,P} be a business logic set such that R ,F, P are the subset of L and CR be the change request from the end-users, then a change request is said to accepted if CR(T) =CR i.e. there exists a Turing machine that accepts the request. *

*

function CR :L {0,1} .in other words, T decides CR if T halts in a state h a for every R / F/ P in L , producing output it also decides the *

) undergoes the characteristic

function

CR is defined by the formula CR(x)= 1 0 otherwise

152

Thirumaran.M et al. / Procedia Technology 6 (2012) 145 – 152

The Turing machine T accepts every change request and distinguishes between two types of output configuration (ha , 1) in one case and the configuration (ha , 0) in the other case. If we have a Turing machine T computing CR then we can easily obtain one that accepts the raised exception. Let L={R,F,P} be a business logic set such that R ,F, P are the subset of L .Assume that the user raises an exception to alter the change request. Let the change request be F23 . Hence the Turing machine decides the exception if change request F23 satisfies characteristic function CR(x)= 1

0 otherwise After accepting the exception, the Turing machine has to decide whether the exception is to be carried or not and whether the CR satisfies the characteristic function. Since the change request F 23 is already available, hence the exception made is said to be decidable. 5. CONCLUSION Business models plays an important role in expressing the business needs in concrete ways, controlling the business operation work flow, handling run-time exception, managing the business object, consisting of the business logic with respect to the context, etc. Subsequently on implementation and analysis of the model, the quality attributes like computability, traceability and decidability have been evaluated for an enhanced performance. Finally, the proposed business logic used in the devised Web Service computing system varies from the models discussed in the existing literature by not involving any other external resource dependency or technology and has encouraged the arrival of novel QoS parameters such as Manageability, Serviceability, dependency etc. As directions of future research, in addition to the exception handling mechanism proposed in the Business Logic as discussed above, this Web Service Computational Model can be extended to prevent violation, that exist frequently in the existing Web Service Discovery models, such as Loss of Generative Power . References eption Handling in Business Process [1]. Execution , 11 th, IEEE International Conference on Computer Supported Cooperative Work in Design 2007, Volume, Issue, Page(s): 914 919, Apr. 2007. [2]. Qin Lu, Weishi Zhang, Xiuguo Zhang and Bo Su, 2008. An Exception Handling Framework for Service-Oriented Computing , International Conference on Network and Parallel Computing 2008, Volume, Issue, Page(s): 315-322 . 2008. [3]. Qin Lu, Weishi Zhang, Bo Su, "An Exception Handling Framework for Service-Oriented Computing 2008," IFIP International Conference on Network and Parallel Computing, npc, pp.315-322, 2008. [4]. San-Yih Hwang,Sun6th International Conference on Database Systems for Advanced Applications, 1999. -Policy Exception Handling System for BPEL Process 2007 Volume, [5]. Wn Jiajia Chen Junliang Peng Yong Issue, Page(s): 1-5, Oct 2007. Multiple-Criteria Negotiation Support System , IEEE transactions on knowledge [6]. Timon C. Du and Hsingand data engineering, vol. 19, no. 6, June 2007. ional [7]. Symposium on Autonomous Decentralized Systems, ISADS 2003, Volume,Issues,Page(s) : 99-106, Apr,2003. [8]. Roman Vaculín, Kev International Conference on Networking and Services, ICNS 2008, Volume, Issue, Page(s): 16-21, Mar. 2008. -based Exception Handling in Securities [9]. Minhong Wang, Huaiqing Wang, Kwok Kit Wan and D Transactions Proceedings of the 37th Annual Hawaii International Conference on System Sciences, 2004, Volume, Issue, Page(s): 10, Jan 2004. [10]. Yuliang Shi; Liang Zhang; Baile Shi, Exception handling of workflow for Web services 2004 , The Fourth International Conference on Computer and Information Technology, 2004. Volume, Issue, 14-16, Page(s): 273 277, Sept. 2004. [11]. Fung, C.K. Hung, P.C.K. Folger, D.H. , Achieving survivability in business process execution language for Web services (BPEL) with exception-flows 2005 Proceedings of IEEE International Conference on e-Technology, e-Commerce and e-Service, 2005. Volume, Issue, Page(s):68-74, Apr, 2005.

Suggest Documents