Keywords

1 Introduction

With the growth of the number of published web services, many offer similar functionality but different in non-functional properties (quality of service) [1]. A Web services is a software components available on the Web (through a URI), communicating through XML messages over an Internet transport protocol and whose capabilities and modus operandi are described in XML [2, 3]. Web service can be categorized as set of actions that are reachable with open XML standards like SOAP, UDDI and WSDL. Web service framework is categorized in to three main components: Service provider: The service provider develops the service and makes it accessible on the Internet for the users, Service requester: The service requestor is any end user of the web service [4]. The requestor consumes the already accessible web service returned by the service provider. Service registry is a centralized directory of web services that maintains the information about new and existing services [5, 6] as shown in Fig. 1.

Fig. 1.
figure 1

Architecture for web service framework

The problem of selecting a suitable candidate web service from a pool of web services offering similar functions is considered as a MCDM problem [7]. According to [8] the only differentiating factor between similar web services may be their quality of service (QoS), which are the quality aspect of a web service such as response time, availability, throughput, reliability and success ability [9]. Unfortunately, the QoS obtained from service descriptor (WSDL) or service providers (UDDI) do not reflect the real quality of these web services, they differ from a user to another, from a context to another and change dynamically in time according to several parameters [1, 4].

In view of this challenge, this study proposes a web service selection (WSS) hybrid model based on the combination of fuzzy AHP and TOPSIS. The AHP method, initially introduced by Saaty [34] is an effective technique for solving complex decision problems. AHP method represents a decision problem by a hierarchical organization reflecting the interactions between several components of the problem, then using pairwise comparison judgments to identify and evaluate the relative importance of criteria [35]. However, AHP method has some shortcoming due to its ineffectiveness when applied to an ambiguous problem with a high uncertainty [26]. Therefore several researchers such as [7, 24,25,26,27,28, 30] introduce fuzzy logic into the pairwise comparison of the AHP to compensate and deal with this type of fuzzy decision problem. In this paper fuzzy AHP is used to compute the weights of criteria. TOPSIS technique is that is utilized to rank the different alternative based on the computed weights. The basic principle of TOPSIS is that the selected alternative should have the shortest distance from the ideal solution and the farthest distance from the negative-ideal solution [10].

The remaining part of the article is organized as follows: Related works is presented in Sect. 2. Next, the research methodology used in this study is explained in Sect. 3. This is followed by results and discussion in Sect. 4, and lastly, the conclusions in Sect. 5.

2 Related Works

MCDM techniques are very beneficial in assisting decision makers in wide range of circumstances such as a multi-criteria analysis of alternative-fuel buses for public transportation in Taiwan [11], multi criteria selection for a restaurant location in Taipei [12], performance evaluation of customer satisfaction in Turkish banking sector [13]. The common goal is to find an optimal solution from a list of alternatives based on multiple deciding criteria.

In the context of WSS, many MCDM methods have been employed in the selection process such as AHP which has been utilized by [7, 14, 15] as a ranking procedure in select the best web service. Similarly, a web service selection approach based on analytical network process (ANP) was proposed by [16]. In other studies [17, 18] TOPSIS ranking algorithm is used to determine the most suitable web service. A trust based service selection is recommended by [19] using fuzzy modified Vlsekriterjumska optimizacija I KOmpromisno Resenje (VIKOR) method. The Preference Ranking and Organization METHod for Enrichment Evaluation (PROMETHEE) has been employed by [20, 21] as a web service selection approach.

The use of mixed methods as stated by [22] allows exploiting the advantages of every method and having better performance than using each method separately such as a web service selection model integrating AHP and VIKOR methods which was suggested by [33] the AHP method computed the weight of preference, while VIKOR technique ranked the alternatives. Another hybrid approach was proposed by [23] which combines AHP and reference ideal method (RIM). The AHP method is used to calculate the weights constraints assigned to QoS criteria while, RIM is used to rank the various alternatives. Similarly, a hybrid approached is presented by [4] for the selection of efficient web services. In this model, the AHP technique has been applied to calculate the individual weight value of non-functional parameters. Then, the Adaptive Ratio Assessment (ARAS) technique is used to rank web services. Relatedly, [1] suggested a hybrid approach to rank skyline web services, the subjective weight are computed using Fuzzy AHP from user opinions, while PROMETHEE method is used to rank the different alternatives.

In this paper Fuzzy AHP is used to evaluate the weight of criteria and TOPSIS method is applied to rank the various web services. In the weighting of subjective user judgment, pure AHP technique has some shortcomings. Human judgements are represented with exact (crisp) or ordinary data and also AHP method does not take into account the uncertainty associated with mapping of human judgment to a number by natural language. However, human preference is uncertain and decision maker might be reluctant or unable to assign exact numerical values to the comparison judgments [25, 26]. Therefore in this study, fuzzy extension of AHP is applied to overcome the shortcomings of traditional AHP method. To best of the authors knowledge, the integration of fuzzy AHP and TOPSIS methods have not utilized for WSS. The main contribution of this paper is to displaying the utilization of fuzzy AHP-TOPSIS methods for the WSS. The methodology applied in this paper explained in the next section.

3 Methodology

3.1 Fuzzy AHP Method

The AHP method with its fuzzy extension namely called Fuzzy AHP which is used to obtain more decisive judgments by prioritizing the web service selection criteria and weighting them in the presence of vagueness [7]. Fuzzy AHP can effectively handle both qualitative and quantitative data in the multiple criteria decision making problems. In this paper, triangular fuzzy numbers are utilized for the determination of one criterion over another by applying pairwise comparisons in the judgment matrix. The judgement matrix consists of fuzzy numbers and uses fuzzy arithmetic and fuzzy operations to determine the important weights for each criterion [7, 24, 25].

Table 1. Linguistic variables for pairwise comparison of each criterion [26]

Fuzzy AHP follows the following process [1, 24, 27,28,29]

  • Step 1: Decomposes the problem into a hierarchy.

  • Step 2: To determine relative weights, decision maker makes a pairwise comparison using Saaty’s 1–9 preference scale. The pairwise data is organised in the form of fuzzy triangular numbers. The crisp values are replaced with triangular fuzzy numbers as shown in Table 1. If the decision maker cannot used the preference by form of fuzzy numbers, they can give preferences by linguistic terms, and use Table 1 for values, which can easily derive the corresponding fuzzy numbers.

  • Step 3: Computer the weight by using geometric mean method.

  • Step 4: Compute the consistency ratio (CR) to check the consistency of the decision matrix. If CR is less than 0.1, then the pairwise comparison matrix is consistent and acceptable. The consistency index (CI) and consistency ration (CR) of the pairwise comparison matrix are computed using the following Eqs. (1) and (2)

    $$ CI = {{\left( {\lambda_{max} - n} \right)} \mathord{\left/ {\vphantom {{\left( {\lambda_{max} - n} \right)} {\left( {n - 1} \right)}}} \right. \kern-0pt} {\left( {n - 1} \right)}} $$
    (1)
    $$ CR = {{CI} \mathord{\left/ {\vphantom {{CI} {RI}}} \right. \kern-0pt} {RI}} $$
    (2)

    Where CI is the consistency index, n is the order of the pairwise comparison matrix A, \( \lambda_{max} \) is the maximum eigenvalue, while the random index RI is the average CI value for random matrices.

3.2 TOPSIS Method

TOPSIS is a well-known MCDM method based on the idea that the best alternative must have the least geometric distance from the positive ideal solution, and on the other side the farthest geometric distance of the negative ideal solution [30]. The positive ideal solution reflects the best solution with the most beneficial and lowest cost between all the alternative, while the negative ideal solution represents the worst solution with the lowest benefits and high cost [31]. The process of carrying out TOPSIS approach consists of the following steps [10, 17, 30, 31]:

Step 1: Construct decision matrix. Assume there are m alternatives and n number of criteria. Then, decision matrix is constructed with m rows and n columns as shown below.

$$ {\text{DM = }}\left[ {\begin{array}{*{20}c} {x_{11} } & \ldots & {x_{1n} } \\ \vdots & \ddots & \vdots \\ {x_{m1} } & \ldots & {x_{mn} } \\ \end{array} } \right] $$
(3)

Step 2: Construct a normalized decision matrix: The matrix is normalized using the application of Eq. (4).

$$ p_{ij} = \frac{{x_{ij} }}{{\sqrt {\sum\nolimits_{i = 1}^{m} {x_{ij}^{2} } } }} $$
(4)
$$ \begin{aligned} & {\text{Where}}\;i = 1,2, \ldots ,m;\;j = 1,2, \ldots ,n\;{\text{and}}\;x_{ij} \;{\text{is}}\;{\text{a}}\;{\text{crisp}} \\ & {\text{Value}} .\\ \end{aligned} $$

Step 3: Calculate the weighted normalized decision matrix. The weighted normalized matrix is generated by multiplying the normalized matrix with criteria weight. Equation (5) is applied in this stage.

$$ v_{ij} = w_{j} \cdot p_{ij} $$
(5)
$$ i = 1,2, \ldots ,m;\;j = 1,2, \ldots ,n $$

and wj represents weight of jth criteria obtained by Fuzzy AHP method.

Step 4: Determine the ideal and negative-ideal solution

$$ \begin{aligned} & A^{*} \;\; = \;\left\{ {v_{1}^{*} , \ldots ,v_{n}^{*} } \right\} \\ & \;\;\;\;\;\; = \;\left\{ {\left( {\mathop {\hbox{max} }\limits_{j} v_{ij} \left| {i \in I^{\prime } } \right.} \right),\left( {\mathop {\hbox{min} }\limits_{j} v_{ij} \left| {i \in I^{\prime \prime } } \right.} \right)} \right\}, \\ \end{aligned} $$
(6)
$$ \begin{aligned} & A^{ - } \;\; = \;\left\{ {v_{1}^{ - } , \ldots ,v_{n}^{ - } } \right\} \\ & \;\;\;\;\;\; = \;\left\{ {\left( {\mathop {\hbox{min} }\limits_{j} v_{ij} \left| {i \in I^{\prime } } \right.} \right),\left( {\mathop {\hbox{max} }\limits_{j} v_{ij} \left| {i \in I^{\prime \prime } } \right.} \right)} \right\}, \\ \end{aligned} $$

where I is associated with the benefit criteria, and I’’ is associated with non-benefit criteria.

Step 5: Calculate the separation measure, using the n-dimensional Euclidean distance. The separation of each alternative from the ideal solution is given as

$$ D_{j}^{*} = \sqrt {\sum\limits_{i = 1}^{n} {\left( {v_{ij} - v_{i}^{*} } \right)^{2} }} ,\;\;\;\;j = 1, \ldots ,J. $$
(7)

Similarly, the separation from the negative-ideal solution is given as

$$ D_{j}^{ - } = \sqrt {\sum\limits_{i = 1}^{n} {\left( {v_{ij} - v_{i}^{ - } } \right)^{2} }} ,\;\;\;\;j = 1, \ldots , J. $$
(8)

Step 6: Calculate the relative closeness to the ideal solution. The relative closeness of the alternative aj with respect to A* is defined as

$$ C_{j}^{*} = {{D_{j}^{ - } } \mathord{\left/ {\vphantom {{D_{j}^{ - } } {\left( {D_{j}^{*} + D_{j}^{ - } } \right),\;\;\;\;j = 1, \ldots ,J}}} \right. \kern-0pt} {\left( {D_{j}^{*} + D_{j}^{ - } } \right),\;\;\;\;j = 1, \ldots ,J}}. $$
(9)

Step 7: Lastly, rank the preference order of alternatives by comparing Cj* values; the best alternative is the one with the highest score of Cj*

4 Experimental Example

The study uses five real – world web services: Cweather, PluralsightWeather, DOTSFastWeather, WeatherStationService, and GlobalWeather. These web services and their measurements were obtained from quality of web service (QWS) dataset [32]. Response time, Availability, Throughput, Successability, and Reliability are the QoS parameters utilized as evaluation criteria in the selection process. Fuzzy AHP computes the weights, while TOPSIS ranks the different alternatives.

4.1 Calculation of the Criteria Weights Using Fuzzy AHP

Fuzzy AHP method is utilized to compute the criteria weights which are used during the selection process.

The service consumer enters preferences. A pairwise comparison matrix is generated using Saaty’s 1–9 preference scale. The pairwise comparison matrix in Table 2 shows the user preference which have been captured.

Table 2. Pairwise comparison matrix

The using fuzzy relative scale of importance shown in Table 1, a fuzzified pairwise comparison matrix is created by substituting the crisp number with a triangular fuzzy number. Table 3 illustrates a fuzzified pairwise comparison matrix where crisp numeric values have been replaced with fuzzy numbers.

Table 3. Fuzzified pairwise comparison matrix

Once the fuzzified matrix is created, the geometric mean value and the weight for all criterions are computed. The computed weights are in fuzzy form which can be used in the WSS process or can be de-fuzzified to get crisp numerical values. Table 4 shows the weights in a fuzzy form, in crisp numeric for, and the normalized weight which will be used in the ranking process by TOPSIS technique.

Table 4. Geometric Mean values, Fuzzy weight, Crisp weight, and Normalized weights

4.2 Ranking Alternative Using TOPSIS

Once the weights of the various QoS criterion have been computed, TOPSIS technique is applied to calculate and ranking the different web services. The weights calculated using Fuzzy AHP are shown in Table 5 and are used as input in the ranking process.

Table 5. Weights based on user preference

A quality of web service (QWS) dataset used in this study contains 2 507 web services that exist on the web. Table 6 present five web services measurements that are considered in the selection process.

Table 6. Web service attributes measurements from the QWS dataset [32]

The web service attribute measurements are normalized using the application of Eq. (4). Table 7 illustrates the different web service measurement read from the QWS dataset after normalization.

Table 7. Normalized decision matrix

The next step involves calculating the weighted normalized decision matrix. The weighted normalized decision matrix is computed using Eq. (5). Table 8 shows the weighted normalized decision matrix after applying Eq. (5).

Table 8. Weighted normalized decision matrix

For every criterion, the positive ideal (best) solution and the negative ideal (worst) solutions are defined. Thereafter, the Euclidean distance for each alternative from the ideal or the negative – ideal is also determined by applying Eqs. (7) and (8).

Fig. 2.
figure 2

Separation of ideal and negative – ideal solutions, and rank of preference

Calculating the relative closeness to the ideal solution is determined by applying Eq. (9). Lastly, the alternative with the highest Pi score is selected the best alternative. Figure 2 illustrates the separation of each alternative from the ideal solution (Si +), the separation from the negative-ideal solution (Si) and the relative closeness to the ideal solution (Pi). WeatherStationService is ranked best, based on the Pi score.

5 Conclusion

In this paper, related researchers were investigated with the focus on their strengths and shortcomings. A hybrid approach for WSS is presented. Although the data related to the weight is gathered from users, the fuzzy AHP method is applied for computation of criteria weights. Subsequently, the TOPSIS technique is utilized to rank the various web services based on the computed weights. To demonstrate how the proposed hybrid model works and how it can be applied on WSS, an example using QoS criteria and QWS dataset for web services (alternatives) measurements is provided. The result shows that WeatherStationService performed better than other web search services under the selected QoS requirements. The model can effectively rank and select the best suitable web service. For future work, the comparison of the results obtained by our proposed model with another replicated study using other MCDM method, such as ELECTRE or PROMETHEE.