Open Framework for Web Service Selection Using Multimodal and Configurable Techniques
Oscar Cabrera 1, Marc Oriol 1, Xavier Franch 1, Jordi Marco 1, Lidia López 1, Olivia Graciela Fragoso Díaz 2, and René Santaolaya 2 1 Universitat Politècnica de Catalunya (UPC), Barcelona, Spain
2 Centro Nacional de Investigación y Desarrollo Tecnológico (CENIDET), Morelos, Mexico {ocabrera, moriol, franch, llopez}@essi.upc.edu, [email protected], {ofragoso, rene}@cenidet.edu.mx
Abstract. Services as part of our daily life represent an (QoS), non-functional requirement (NFR), service level important means to deliver value to their consumers agreement (SLA), ranking services. and have a great economic impact for organizations. The service consumption and their exponential proliferation show the importance and acceptance by 1 Introduction their customers. In this sense, it is possible to predict that the infrastructure of future cities will be supported In today´s world, there are different kinds of by different kind of services, such as smart city services created to facilitate the life of citizens in services, open data services, as well as common their daily tasks. These services have been services (e.g., e-mail services), etc. Nowadays a large developed to solve different needs according to percentage of services are provided on the web and certain requirements of different human desires. are commonly called web services (WSs). This kind of As a result, an enormous explosion in offering services has become one of the most used services has occurred. In fact, it can be observed technologies in software systems. Among the that for a given need, a plethora of services can challenges when integrating web services in a given system, requirements-driven selection occupies a be found. In addition, according to [1] there is a prominent place. A comprehensive selection process growth in consumer services driven by various needs to check compliance of Non-Functional social, economic, and technological factors (e.g., Requirements (NFRs) which can be assessed by a demand for social services, the size and role of analyzing the Quality of Service (QoS). In this paper, the public sector, complexity of work we describe a framework called WeSSQoS that aims at environments, etc.). ranking available WSs based on the comparison of A generic definition of a service is provided by their QoS and the stated NFRs. The framework is the Office of Government Commerce (OGC) in its designed as an open Service Oriented Architecture ITIL standard as follows [1]: “A service is a means (SOA) that hosts a configurable portfolio of normalization procedures and ranking algorithms which of delivering value to customers by facilitating can be selected by users when starting a selection outcomes customers want to achieve without the process. The QoS data from WSs can be obtained ownership of specific costs and risks” . either from a static, WSDL-like description or The OGC considers that the outcomes dynamically through monitoring techniques. WeSSQoS mentioned are possible through the performance is designed to work over multiple WS repositories and of different tasks and are limited by the presence QoS sources. The impact of having a portfolio of of certain constraints. In this sense, the presented different normalization and ranking algorithms is paper is focused on quality constraints that illustrated with an example. characterize services. Specifically, web services
Keywords. Web service (WS), web service selection, (WSs), since a large amount of services are being service oriented architecture (SOA), quality of service provided using this technology.
Computación y Sistemas, Vol. 18, No. 4, 2014, pp. 665–682 ISSN 1405-5546 doi: 10.13053/CyS-18-4-2057 666 Oscar Cabrera, Marc Oriol, Xavier Franch, Jordi Marco, Lidia López, Olivia Graciela Fragoso Díaz, and René Santaolaya
WSs integrate a set of protocols and standards The main goals that we aim to address in this for data interchange among software applications paper are: how NFRs are expressed; what developed in different programming environments measure of the satisfaction of an NFR in a given and languages, and executed in different WS is; how these individual measures are platforms. This interoperability is provided mainly combined in order to rank the WS according to a by the following open standards: XML, SOAP, set of NFRs; how the QoS of a WS may be HTTP, WSDL, and other web-related obtained; where the WSs are obtained from; and standards [2]. what the value obtained by combining different normalization procedures and ranking algorithms WSs have become a useful technology to to select WSs is. To attain these goals we have implement any kind of software, providing greater designed WeSSQoS (Web Service Selection interoperability and scalability. This success has based on Quality of Service), a framework for triggered the emergence of a huge WSs selecting WSs based on their QoS and NFRs. marketplace. Consequently, for a given WeSSQoS proposes an open Service Oriented functionality we may find a large set of WSs that Architecture (SOA) that is able to manage several can be selected in several ways. This proliferation ranking algorithms and normalization procedures of WS increments the chances to find existing for computing the adequacy of a WS with respect software that satisfies the stated needs, but at the to NFRs. These NFRs are expressed by means of same time raises new problems and challenges. formulae stated over QoS attributes (i.e., SLA Among them, there is an increasing need for clauses) coming from the quality model proposed selecting the most appropriate WS in a given in an earlier work [5]. NFR are classified as context of usage [3]. Usually this problem is mandatory and optional, and this information may studied in relation with the requirements elicited be used for ranking the results. WeSSQoS is from the stakeholders. In other words, the goal is designed to work over several WS repositories to select the WS that “better” satisfies the that eventually can be built using different stakeholder requirements. technologies. In order to get the behavior of the We consider here the classical distinction accessible WSs with respect to the selection among functional and non-functional criteria, it is possible to use either the description requirements [4]. With respect to functional of the QoS (if included in the WS definition), or requirements, it is necessary to validate that a the results of WS monitoring (obtaining then the WS fulfills the functionality expected by the real, updated QoS of the WS). In this sense, we stakeholders. On the other hand, non-functional share the vision of [6] that proposes to define a requirements (NFRs) refer to the Quality of priori only static attributes like cost, whilst Service (QoS) that a given WS offers, i.e., dynamic attributes like response time or behavioral and non-behavioral characteristics that availability should be obtained through the WS exhibits for offering a given functionality: monitoring. cost, response time, availability, etc. Usually, The rest of the paper is organized as follows. NFRs are expressed in terms of conditions over In Section 2 a review of some similar frameworks the QoS in a document named Service Level is provided. Then, Section 3 describes the Agreement (SLA). Therefore, we can assess if a proposed WS selection process. Section 4 WS w satisfies an NFR r by checking if the QoS introduces normalization procedures and ranking of w satisfies the clauses from the SLA that refer algorithms. Section 5 describes the framework to the concepts inherent to r. architecture proposed. Sections 6 and 7 describe Given this context, our work proposes a a prototype and provide some validation. Finally, framework for ranking a set of WSs that belong to Section 8 presents conclusions and future work. a certain software domain. We assume that the functional requirements are used to determine 2 Related Work this software domain, therefore our framework focuses on the ranking based on the satisfaction In the academic research, different frameworks of NFRs. for ranking and selecting WSs according to their
Computación y Sistemas, Vol. 18, No. 4, 2014, pp. 665–682 ISSN 1405-5546 doi: 10.13053/CyS-18-4-2057 Open Framework for Web Service Selection Using Multimodal and Configurable Techniques 667
QoS have been proposed. In Table 1 we show a b. Attributes: quality attributes considered in representative sample of these proposals, those systems. In some cases, a small including our WeSSQoS framework, comparing predefined set of quality attributes is used, them according to the following criteria: whereas other frameworks allow the usage of arbitrary ones (although they may validate the a. Architectural style: architecture in which proposal with a given set). We represent the the framework has been developed. We find value of this criterion by using the amount of Component Based Architectures (CBA), attributes defined as dynamic (d) or as static Service Oriented Architectures (SOA) and a (s). In case of configurable attributes, i.e., the combination of both. We represented each of possibility of adding new attributes, we use an the styles by using C, S, and CS, respectively. asterisk (*). It is worth noting that adopting SOA allows c. QoS data source specifies if quality data integrating heterogeneous systems more are declared in the service description easily. (represented by using S) or for dynamic quality
Table 1. Comparative table of frameworks
Proposal (a) (b) (c) (d) (e) (f) (g)
E. Al-Masri et al. [6] C 6d 3s SM X X V V
T. Yu et al. [7, 8] C 4d 1s S X V X X
X. Wang et al. [9] - *1d5s S X X X X
D. D’ Mello et al. [10] CS *3d2s SM X X X X
H. Wang et al. [11] C 6s SM X X X X
P. Wang et al. [12] - *6d S X X X X
R. Mohanty et al. [13] - 9s S X V X X
Q. Tao et al. [14] C 6s SM X X X X
H. Cai et al. [15] CS *0s SM X X X X
L. Sha et al. [16] CS 7s SM X X X X
M. Alrifai et al. [17] C 0s SM X X X X
A. Huang et al. [18] - 0s S X X X X
C. Lin et al [19] C 0s S X X X X
Z. Gao et al. [20] - 5s S X X X X
WeSSQoS CS *9d1s SM * V * V *V V
Computación y Sistemas, Vol. 18, No. 4, 2014, pp. 665–682 ISSN 1405-5546 doi: 10.13053/CyS-18-4-2057 668 Oscar Cabrera, Marc Oriol, Xavier Franch, Jordi Marco, Lidia López, Olivia Graciela Fragoso Díaz, and René Santaolaya
attributes, if their value is obtained through not a SOA, it does not allow adding external monitoring (represented by using M). In cases algorithms in an easy manner. where the proposals provide both kinds of Regarding the criterion of prototype available , sources we represent the value by using SM. we identified that although in most of the d. Multinormprocedure specifies if the proposals a prototype is being described and framework is able to work with more than one even some of them have a web page (e.g., [7, 8]), normalization procedure in order to obtain the there is not a framework available. In fact, we normalized QoS data about WSs and have only found a tool available from Al-Masri et stakeholders. We represent the value of this al . [6]. criterion by using yes (V) or no (X). In case of proposals which allow adding new procedures, 3 The Proposed Web Service Selection we use an asterisk (*). Process e. Multialgorithm specifies if the framework is able to work with more than one selection Figure 1 shows the proposed web service algorithm. We represent the value of this selection process with the following inputs and criterion by using yes (V) or no (X). In case of selection phases: proposals which allow adding new algorithms, we use an asterisk (*). Inputs:
f. Multirepository specifies if the framework - WSlist, a QoS matrix of size k×n , where (w 1, is able to obtain data from different …, w k) are the candidate WS and (q 1, …, q n) repositories and combine information to extend are the quality attributes referred in the NFRs. the number of services and quality attributes to WSlist[ i, j ] stands for the value of the quality evaluate. We represent the value of this attribute q j in the WS w i. criterion by using yes (V) or no (X). In case of - lreqs, a NFR vector of size n, where lreqs[ i] proposals which allow adding new specifies (1) the value that is required for the repositories, we use an asterisk (*). attribute q i, (2) a Boolean value that indicates g. Prototype available specifies if the if the attribute’s value is to be minimized or framework is available to be used for the maximized, and (3) another Boolean value research community. We represent the value that indicates if the required attribute’s value of this criterion by using yes (V) or no (X). is mandatory or not. A value is mandatory when it cannot be higher than the required As a result of the previous evaluation we threshold when it has to be minimized, or identified different gaps, such as a lack of cannot be lower than the threshold when it frameworks with the capability to retrieve a list of has to be maximized, e.g., a NFR may state web services from different sources. As far as we to minimize the cost mandatorily with a know, the only framework that fulfills this criterion maximum of 100 euros per month. is provided by Al-Masri et al . [6], whose framework obtains a list of WSs from several Selection phases: sources (UDDIs, ebXMLs, search engines, and - Normalization. This phase has the purpose of service portals). However, it does not specify the integrating the heterogeneous QoS attributes’ method to combine the services data when values over which decision-making in the different sources have the same service with WSs selection problem relies. Both inputs different QoS data: cost, brand reputation, etc. WSlist and lreqs must be normalized to Another important gap is a lack of frameworks compensate the different measurement units with the capability to reuse existing normalization of the different QoS values by projecting them procedures and selection algorithms, which would onto a normalized interval. Interval allow assessing results obtained from different boundaries are established by the proposals. In fact, only QCWS [7, 8] offers the normalization procedure used. Details of the capability of multialgorithm . However, since it is different normalization procedures are
Computación y Sistemas, Vol. 18, No. 4, 2014, pp. 665–682 ISSN 1405-5546 doi: 10.13053/CyS-18-4-2057 Open Framework for Web Service Selection Using Multimodal and Configurable Techniques 669
Fig. 1. Flow diagram for the web services selection process
described in the next section. The result of 4 Normalization Procedures and this phase is the normalized structures Ranking Algorithms denoted by WSlistN and lreqsN. - Ranking. Starting from the normalized data in One of the main characteristics of the proposed the previous stage, a ranking algorithm can framework architecture is that it supports the be applied with the goal of computing a coexistence of normalization procedures and similarity measure between the NFR (lreqsN) ranking algorithms offered as services. and the QoS of each service (WSlistN). This algorithm may be any of the commonly 4.1 Normalization Procedures employed in Vector Space Models (VSM) to evaluate the similarity between two objects The normalization service that WeSSQoS described by vectors [21]. For example, the currently offers has four normalization procedures Euclidian Distance algorithm looks for the (see equations 1 to 4). Nevertheless, as shortest distances between the QoS of each mentioned before, users can extend it by candidate WS and the user NFR. As a result, providing their own normalization procedures. In we obtain the values of the algorithm and the this sense, providing or selecting these WSs ranked according to them. Next section procedures depend on both the user’s needs and describes different ranking algorithms. the properties of such procedures, i.e., the - Priority evaluation . In this phase two main selection process involves analyzing and types of WSs ranking are carried out, one by evaluating their advantages and disadvantages the number of mandatory requirements that as well as their applicability. services fulfill and one by the selection 0< ≤1, (1) algorithm used. ⁄
Computación y Sistemas, Vol. 18, No. 4, 2014, pp. 665–682 ISSN 1405-5546 doi: 10.13053/CyS-18-4-2057 670 Oscar Cabrera, Marc Oriol, Xavier Franch, Jordi Marco, Lidia López, Olivia Graciela Fragoso Díaz, and René Santaolaya
0< ≤1, (1a) , ⁄ ∑ ( ∗ ) (5) ( , ) ∑ ∗∑ 0≤ ≤1, (2) − ⁄ −