Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Abstract The copious embracing of web services raises the intriguing problem in web service discovery. Web service discovery is the process of finding appropriate services for the user defined tasks. The Service Oriented Architecture (SOA) is more efficient if it supports the event processing. Therefore, in this paper we integrate the SOA with the Event Driven Architecture (EDA) in web service discovery. The interaction between events and services is commonly referred as Event Driven Service Oriented Architecture (EDSOA). It is very desiderate in web service discovery to solve the problem of how we can match the user request with the web service advertisements, accurately and efficiently either manually or automatically from the UDDI. The Event Matchmaking Technique (EMT) has been proposed to enhance the accuracy and efficiency in matchmaking process. The proposed EMT is applied to a sample test and performance analyses are presented demonstrating the effectiveness of the idea. We have also dedicated towards the analysis of proposed system with the existing system. Keywords Event Matchmaking Technique, Service Oriented Architecture (SOA), Event Driven Architecture (EDA).
matchmaking technique, the Event Matchmaking Technique (EMT) has been proposed. In existing, the matchmaking process is done based on the functional based matchmaking technique and the WSM process. In functional based matchmaking technique, the user request matches the web service advertisements based on only the functional requirements specified by the user. The functional based matchmaking technique will be more efficient if it consider the non-functional requirements during the matchmaking process. Later the existing WSM has been proposed, in which the matchmaking is done based on the two sequentially process, the first requirement is that the output of the functional matchmaking process should be the input of the non-functional matchmaking process [6], it increases the time consumption. To reduce the time consumption and to enhance the accuracy and efficiency we designed the proposed Event Matchmaking Technique (EMT) which works in parallel process. The remainder of this paper is organized as follows: In Section II we discuss about the proposed event matchmaking architecture in web service discovery. In Section III we applied the proposed idea to a sample test and performance is analysed for demonstrating the effectiveness of the idea. We have also dedicated towards the analysis of proposed event matchmaking system with the existing matchmaking system. II. ARCHITECTURE FOR EVENT MATCHMAKING TECHNIQUE-PROPOSED The event matchmaking architecture in web service discovery consists of an automated program that resides on an event matchmaker, roams across accessible Universal Description, Discovery, and Integration (UDDI) registries [10]. The event matchmaker matches the user requests with the web service advertisements registered in the UDDI either automatically or manually and offers the desired services according to the users requirements. The SOA encompasses of three components is service consumers, registries (UDDI) and service providers, where service providers advertise their services to registries.
I. INTRODUCTION Web services support the Service Oriented Architecture (SOA), both in open and more constrained environments [9]. The web services are bootless when they do not discover the appropriate services. In web service discovery, the service consumer request for the services and the appropriate services can be discovered either manually or automatically from UDDI (Universal, Description, Discovery, and Integration) [10] to the service consumer [1], [2]. The ample challenges in the matchmaking process are to discover the accurate and efficient services as per user request [1]. Service Oriented Architecture (SOA) is an approach to define integration architectures based on the concept of a service [3]. Event Driven Architecture (EDA) is an architectural style that prescribes that communication between components has to be performed on the basis of event notifications, where events are basically understood as changes in the state of something relevant for the system [3]. The SOA is more efficient if it supports the event processing in web service discovery [3], [4], [5] so the SOA is integrated with EDA and to address the problem of existing
538
IEEE-ICRTIT 2011
Fig 1: Architecture for Event Matchmaking Technique in Web Service Discovery Proposed Model
As shown in the Fig. 1, in the event driven architecture an event flow starts with the event generator, event channel, event processing and event registries. In the proposed architecture we integrated the EDA with SOA in web service discovery process and enhanced the accuracy, efficiency and user satisfaction by constructing the event matchmaker in discovery process. In existing, SOA based matchmaking architecture components can support only one actions at a time where as the proposed technique is based on the events it can support two or more request and the two or more events at a time. The proposed EMT in web service discovery by Event Driven Service Oriented Architecture (EDSOA) are discussed below, Events: Let e be the Event, e is defined as an occurrence or action to initiate the task or the program. Each e occurrence has an Event header (Eh) and Event body (Eb). The e can be expressed as the e {Eh, Eb}. The event header contains elements describing the event occurrence such as the Event ID (Eid), Event name (En), Event time stamp (Ets), Event occurrence number (Eon). The Eh can be expressed as the Eh { Eid, En, Ets, Eon }.The event body describes the process of the matchmaking engine.
Event 1: As illustrated in the Fig. 1, Events are generated by the service consumers. Service Consumers (SC) is the web users who will request for the services. The SC is represented as {SC 1 , SC 2 , SC 3 SC a } SC where, a denotes the maximum number of service consumers in the proposed system. Event 2: As illustrated in the Fig 1, the user requests are sends to the functional based matchmaker and the crawler matchmaker, If the service requested by the user is in the crawler database, it retrieves the desired services as per the user request and sends to the service consumers and send quit message to the bi-matchmaker by event mechanism, if the service is not in the crawler database it wont send any message, the bi-matchmaker continues its process. The user request consists of the functional requirements from the service consumers. The functional requirements (FR) such as input, output, precondition, effect, operation, objects, tasks, functions, relations, concepts, attributes and so forth. As expressed in the Eq.1, FMm consists of the set of functional requirements defined by p Service Consumers. FMm can be represented in the matrix form as follows,
FR11 FR12 FR13 FR1q FR21 FR22 FR23 FR2q FR31 FR32 FR33 FR3q FRp1 FRp2 FRp3 FRpq
Event Matchmaker Processing: In event matchmaker processing, a notable event happens and it reacts based on the events. Event matchmaker processing consists of 4 components are Functional Based Matchmaker (FMm), NonFunctional Based Matchmaker (NFMm), Bi-Matchmaker (BMmC) and Crawler Event Matchmaker (CEM).
(FMm) p*q =
where, FRij=0, then there is no Functional Requirement (FR) stated by the service consumer(s). Here FR11, FR12, ........,
539
retrieves the Appropriate Services (AS). As expressed in the Eq. 4, the appropriate services are denoted as the,
AS11 AS12 AS13 AS 1q AS 21 AS22 AS23 AS2q AS31 AS3 AS33 .AS 3q ASp1 ASp2 ASp3 ASpq
(AS) p*q
where, {AS p1, AS p2, AS p3 , AS pq} denotes the total number of appropriate services retrieved by using bi-matching matchmaker. ASij=0, then there is no appropriate services retrieved by the matchmaking technique. Event 5: The set of appropriate services are further filtered by ranking techniques based on Score (S), weightage (W) and etc. The outputs obtained from the ranking process are the desired services. Ranking process will reduce the number of offered services by ranking the services and it increases the accuracy. Event 6: The Desired Services (DS) are then given to the service consumers and to the crawler queue updater. Event 7: The crawler queue updater checks whether any new desired services are obtained by the event bi-matchmaker. If the desired service has already been fetched, it is discarded; otherwise, it is added to the crawler queue. The crawler queue contains the relevance score, the score on the pages relevance to the target topic and assigns this score to every URL extracted from this particular page, and adds to the priority queue [7], [8]. Based on the priority it stores the relevant page in the database (DB) which in turn stores the desired service. III. EXPERIMENTATION AND PERFORMANCE ANALYSIS A. Experimental Setup Typical component frameworks such as .NET and J2EE often serve as the middleware for providing web services [17]. Therefore, we selected the .NET Framework as platform and the list of web services are stored in databases with the following details name of the services, WSDL URL, and service descriptions are stored in the Sqlserver 2008. We test the effect of each search to discover the services of the proposed technique and existing WSM process by each test scenarios by specifying the keyword. WSDL URL is used to utilize or integrate the service with user application. Description about the services is used to search the service. The existing WS matchmaking process and proposed techniques were used to find out the exact services from database. After searching the list of services, the services can be filtered based on the exact matching and number of hits.
(NFMm) p*q =
where, NFRij=0, then there is no Non-Functional Requirements (NFR) stated by the service consumer(s) or by the developer(s).Here NFR11, NFR12, ........, NFR1q denotes set of non-functional requirements specified by the Service Consumer SC1 or Developers (D). It can be represented as the { NFR11, NFR12, ........, NFR1q } SC1 or D1. Similarly the Service Consumers SC2, SC3, SC4,........, SCp or the developer D2, D3, D4,.Dp specifies their own set of Non-Functional Requirements {NFR21, NFR22, NFR23 , NFR2q}, {NFR31, NFR32, NFR33 , NFR3q},{NFR41, NFR42, NFR43 , NFR4q},......., {NFRp1, NFRp2, NFRp3 , NFRpq} respectively for obtaining the relevant service(s). Event 4: As illustrated in the Fig.1, the bi-matchmaker composer, compose both the functional and non-functional requirements in parallel and matches with the web service advertisements registered in the UDDI and retrieves appropriate services. BMmC can be represented as follows,
BMmC = [(FMm) p*q] + [(NFMm) p*q] 3
The set of functional and non-functional requirements (BMmC) matches the web service advertisements and
540
IEEE-ICRTIT 2011
The natural language is converted into the query is the functional requirements. In the test bed, we predefined some of the non-functional requirements that are 1) Response Time (RT): the time taken to send a request and receive a response. 2) Throughput (TP): the maximum requests that are handled at a given unit in time. 3) Cost of Service (C): the cost per Web service request or invocation. 4) Availability (AV): a ratio of the time period when a Web service is available. B. Result Analysis and Validation In this section we analysis and validate the proposed Event Matchmaking Technique in web service discovery with the existing functional based matchmaking techniques and WS matchmaking process.
TABLE I RETRIEVED SERVICES BY EXISTING AND PROPOSED TECHNIQUES
As expressed in the Eq.7, the recall is the ratio of the total number of retrieved services for the user requirements present in the registries and the total number of relevant services retrieved. If the recall value is high, the effectiveness and accuracy of the system also is also high. The recall value (RV) can be calculated by the formulae, RV= Ri/ Qi 7 If F-Measure value is high the accuracy of the system is also high and vice versa. F-measure that combines precision and recall is the harmonic mean of precision and recall. As expressed in Eq.8, the F-Measure (FM) metric can be calculated by the formulae, FM= (2.PR.RV)/(PR+RV) 8
TABLE II CALCULATED ERROR RATE, PRECISION, RECALL, FAND F-MEASURE VALUE OF EXISTING AND PROPOSED TECHNIQUES
TS 1 2 3 4 5 Ri 19 9 17 26 9
WSM Qi NRi 9 10 6 3 8 9 12 14 6 3
Ri 06 03 07 08 03
EMT Qi NRi 4 2 2 1 5 2 5 3 2 1
Existing WSM PR 0.47 0.67 0.47 0.46 0.67 RV 2.11 1.5 2.12 2.17 1.5 FM 0.76 0.92 0.76 0.75 0.92 ER 0.5 0.5 0.4 0.75 0.5
Proposed EMT PR 0.67 0.67 0.71 0.62 0.67 RV 1.5 1.5 1.4 1.6 1.5 FM 0.93 0.93 0.94 0.90 0.93
Table I represents the total number of the retrieved services (Ri), relevant services (Qi) and non-relevant services (NQi) obtained by the existing WS matchmaking process (WSM) and by the proposed Event Matchmaking Technique (EMT) for the user request. Qi are the services which are more relevant according to the user among retrieved services. NQi are the total number of the non relevant services from the retrieved services. The performances of the proposed EMT are analyzed with the existing technique through the metrics such as error rate, precision, recall and F-Measure. The accuracy of the system is measured from the error rate. As expressed in the Eq.5, the error rate can be calculated by subtracting the retrieved value from the relevant value and then dividing the difference by the relevant value. When the error rate is less, the accuracy is high and vice versa. The error rate can be calculated by the formulae, ER = (Ri - Qi) /Qi 5 The accuracy of a measurement system is the degree of closeness of measurements of a quantity to its actual (true) value [8]. As expressed in the Eq.6, the precision is defined as the total number of relevant services retrieved and the total number of retrieved services for the user requirements present in the registries. When the precision is high the accuracy of the system is also high. The precision (PR) can be calculated by the formulae, PR = Qi / (Qi + NRi) 6
Table II and Fig 2 illustrate the calculated error rate, precision, recall values and F-measure values of the existing and the proposed techniques.
Fig 2. Calculated Values of Error Rate, Precision, Recall and F-Measure of the Existing (WSM) and Proposed (EMT) Techniques
As depicts in the table II and Fig 2, the error rate precision, recall and f-measure Values of EMT are higher than WSM. When precision and f-measure values are high, the accuracy
541
542