=Paper= {{Paper |id=Vol-1294/paper2 |storemode=property |title=Hybrid Web Service Selection Based on Functional and Non-Functional Properties |pdfUrl=https://ceur-ws.org/Vol-1294/paper2.pdf |volume=Vol-1294 |dblpUrl=https://dblp.org/rec/conf/icaase/MerabetB14 }} ==Hybrid Web Service Selection Based on Functional and Non-Functional Properties== https://ceur-ws.org/Vol-1294/paper2.pdf
    ICAASE'2014                                         Hybrid WebService Selection based on Functional and Non-Functional Properties




       Hybrid Web Service Selection based on
      Functional and Non-Functional Properties
                   Halfaoui Amal                            Hadjila Fethallah                       Didi Fedoua
                 Computer science                          Computer science                       Computer science
                    department                                department                            department
             Tlemcen university-Algeria                Tlemcen university-Algeria            Tlemcen university-Algeria
          a halfaoui@mail.univ-tlemcen.dz           f hadjila@mail.univ-tlemcen.dz          f didi@mail.univ-tlemcen.dz



Abstract - Web service composition enables seamless and dynamic integration of business application
on the web. The performance of the composed application is determined by the performance of the
involved web services. Therefore, the selection of composite services is a very complex and challenging task, it
becomes a decision problem on which component services should be selected so that user’s preferences are
satisfied, especially when it has to consider not only the user’s QoS preferences (non-functional aspect) but
also user’s functional Preferences (functional aspect). In this paper we address this problem and present a
solution that combines local selection with global optimization. The proposed solution consists of two
steps: First, in the local selection, we take into account both of users’ preferences and QoS requirements
and use dominance relationship to select the top-k services and reduce the services involved in the
composition. Second, we use a global optimization to fulfil the global requirement and select the Optimal
composition by using the Tabu Search Algorithm. The experimental evaluation indicates that our approach
significantly outperforms existing solutions in terms of optimality.

Keywords - Web Services Selection, Optimization, Services Composition.



1     INTRODUCTION                                                     constraints. In order to explain our motivations let
                                                                       us consider the following example:
                                                                       The example [6] in Table-1 presents an e-
The Selection of an appropriate Web service for                        commerce system supporting users to buy cars.
a particular task has become a difficult challenge                     Each service has its input i() and output o() pa-
due to the increasing number of Web services of-                       rameters. Services providing the same function-
fering similar functionalities. The functional prop-                   ality belong to the same class( S21 , S22 , S23 belong
ertie mtd      mmmzmzmb s describe what the                            to S2 ). Each service has:
service can do and the non-functional properties                       i. Functional constraints on the data it manipulates,
depict how the service can do it.                  The                 For instance the cars returned by S22 have prices
requirements of the user are rarely satisfied by                       between 5500 and 7000 euro.
one web service but generally we need more                             ii. N-functional constraints, Services set their val-
than one.       The web service com-position                           ues associated to three parameters q1,q2,q3 cor-
consists in building a value-added ser-vices                           responding to price, response time and availability.
and web applications by integrating and com-                           Suppose that a user x wants to buy a french car
posing existing elementary web services. A lot                         preferably at an affordable price[5000,7000] with
of approaches have been proposed, they include                         warranty between 12 and 18 months, having a
AI planning techniques [15], formal models [7] (fi-                    power [60,80] and consumption [10,11]. The user
nite states machines, petri nets,...) and meta-                        preference concern also the global constraints, like
heuristics[8][19]. The majority of them does not                       the total price of the composition don’t exceed 10
address the functional, the non functional aspects                     euro.
and the global constraints in the same time. Our                       The user will have to invoke S11 , he can then invoke
purpose is to take into account both of the two as-
pects(functional, n-fonctional) and fulfill the global

    International Conference on Advanced Aspects of Software Engineering
    ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                       20
 ICAASE'2014                                           Hybrid WebService Selection based on Functional and Non-Functional Properties


                                                                     and satisfy each global constraint, to this end we
           Table 1: Example of Web Services.
                                                                     use the Tabu Search Algorithm. U(c): denotes
                                 functional    N-Functional
 service      functionality                                          the Fdominance Score of the functional and n-
                                 constraints   q1 q2    q3
                                               () (ms) (ms)          functional properties of c. The Fdominance Score
            Return    the
                                                                     is detailed further.
 S11 (i(x), automakers y                                             The main contributions of this paper are summa-
 o(y)       made in x            -              8   120 70           rized as follow :
                                 z           is                      1.We consider both of the functional and the non-
 S21 (i(x),                      [5000,7000],                        functional user preferences at the same level. We
 o(y, z, t)) Return the car y    t is [12,24]   1   140 50
             along with their
                                                                     notice that the best services which fulfill the func-
                                 z           is
 S22 (i(x), prices z and         [5500,7000],t                       tional properties are not always those which max-
 o(y, z, t)) waranties t for a   is [12,18]     1   145 35           imise the QoS properties and vice versa, so consid-
             given               z           is                      ering the two properties is a compromise to match
 S (i(x), automaker x
  23                             [15000,20000]                       as possible the two aspects at the same time.
 o(y, z, t))                     t is [6,24]    3   160 30
                                                                     2.We Combine the local and the global optimiza-
 S31 (i(x),                      y is [50,70],
                                                                     tion. Since the number of candidate services for a
 o(y, z))    Return the          z is [4,10]    3   170 40
 S32 (i(x), power y and the      y is [50,90],
                                                                     composition may still too large, we use the FDomi-
 o(y, z))    concumption z       z is [8,12]    8   150 50           nance relationship to reduce the search space and
             for a given car x   y           is                      select the Top-k services. After that we use the
 S33 (i(x),                      [200,400], z                        Tabu Search for the global optimization to satisfy
 o(y, z))                        is[10,20]      4   160 30           global constraints. We notice that the best service
                                                                     in each class produces the best composition, this
                                                                     one is not the best for the user if it violates the
                                                                     global constraints.
one or more of services belongs to class S2 finally,
                                                                     The rest of the paper is organized as follows. In
he invoke one or more of services belongs to class
                                                                     the next section we discuss related work. In Sec-
S3 .
                                                                     tion 3, we formalize the problem and present our
How to find the optimal composition c that satisfy:
                                                                     approach. Section 4 presents performance analy-
i. The user preferences (functional Aspect) and
                                                                     sis and experimentations. Finally, section 5 gives
at the same time satisfy (non functional Aspect)
                                                                     conclusions and an outlook on possible continua-
i.e the services involved in the composition c must
                                                                     tions of our work.
maximize the positive QoS Criteria such as reliabil-
ity and availability, and minimize the negative crite-
ria such as cost and execution time.                                 2   STATE OF THE ART
ii. The global constraints which relate to the QoS
attributes of the composition.                                       A lot of efforts have been devoted to the service
To face theses challenges                                            selection/composition. We distinguish three major
- We compute the matching degrees between ser-                       categories: the selection based on QoS, the selec-
vices’ constraints and user’s preferences and in or-                 tion based on functional preferences and the selec-
der to select the most relevants services and re-                    tion based on QoS and functional preferences.
duce space search, we use the concept of Fdom-                       The first category takes only the user preferences
inance relationship to select the top-k services of                  into account to rank candidate services. Many
each class that will be involved in the composition                  searches have been made in this domain, some of
process.                                                             them uses the Pareto dominance [18] [17], the oth-
- We satisfy the global constraints by using the tabu                ers use the fuzzy set theory to models preferences
search algorithm which has been successfully ap-                     to select top k dominant skylines [1] [5] [6].
plied to a wide variety of problems because of it’s                  The second category is based only on the QoS
simplicity and practical effectiveness.                              parameters, it can use two types of approaches
Formally our proposal can be described as follows:                   [2] the multi-objective optimization and the mono-
i. we have to find the top-k services Sij in each                    objective optimization. The multi-objective selec-
class Si that match the user preferences QoS by                      tion can be supported by using database tech-
using the matching degrees M and ranking them                        niques like the divide and conquer algorithm, the
by considering both of QoS and Functional con-                       bitmap algorithm, the index based algorithm(b-tree,
straints by using the Fdominance score.                              hash table) and the nearest neighbor algorithm (R
ii. we have to search a composition c=(s1, ..., sn)                  tree). The mono-objective class involves several
such that we have to maximise the function U(c)                      approaches [4][9] [16] [23], which can use global


 International Conference on Advanced Aspects of Software Engineering
 ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                         21
    ICAASE'2014                                         Hybrid WebService Selection based on Functional and Non-Functional Properties


selection pattern[4] [23] or local selection pattern                   value of the i-th functional constraint of the service
or hybrid selection pattern [11]                                       Sij .
The third category is based on the QoS constraints                     We      use       the     Vector   M (cfi , Sij )    =
(non functional aspect) and Users preference con-                      (m1 (Sij ), .., mn (Sij )) to represent the match-
straints(functional aspect). The majority of re-                       ing degrees between f (Sij ) and the subset vector
search does not address the functional and the non                     of preference constraints f ci of the user’s query Rq
functional aspects in the same time, especially for                    where the function mk (Sij ) is the value of matching
the workflow based composition. Our contribution                       degrees (the Jaccard coefficient) between the k -th
belongs to this category.                                              functional constraint off ci and the k-th functional
                                                                       constraint of fi (Sij ).The table 2 show the Jaccard
                                                                       value macthing of the example 1
3     THE PROBLEM FORMULATION

                                                                       Table 2: Matching degrees between The query and
Our proposed approach contains two phases.
                                                                       services
Phase 1 (The local selection): we compute the top                                                     M (f ci , f (Sij ))
k services and reduce the search space by using                                        f ci    Sij
                                                                                                      m1       m2
the FDominance. Phase2 (The global optimiza-                                           f c1    S11    -        -
tion): We find the near optimal composition that                                               S21    1        0, 5
satisfy the global constraints by using Tabu search                                    f c2    S22    0.75 1
Algorithm.                                                                      Rq             S23    0        0.33
                                                                                               S31    0.6      0.14
3.1     The local selection                                                            f c3    S32    0.50 0.25
                                                                                               S33    0        0.1
Let be Rq a user’s request where Rq = {f c, gc}, f c
is a vector of user preferences f c = {f c1 , .., f cm }
and gc = {gc1 , gc2 , .., gcn } is a vector of n QoS
                                                                       3.1.2 Non-functional Constraints (QoS))
global constraints like time, reputation.
Given a set of services classes S = {S1 , .., Sn }
                                                                       We suppose that we have R quantitative Qo S
where a class Sj regroups the services that had
                                                                       values for a service Sij . we use the vector
the same functionalities but different constraints.
                                                                       Q(Sij ) = {N q1 (Sij ), .., N qr (Sij)} to represent the
Let be Sij the j-th service of the class i. It is de-
                                                                       Qo S attributes of a service Sij where the func-
scribed as a set of two vectors : vector Q for Qo S
                                                                       tion N qk (Sij ) represent the k-th Normalized qual-
attributes and Vector f for Functional constraints.
                                                                       ity attribute of Sij . We convert the negative at-
we use the vector f ci to represent the subset of f c
                                                                       tributes(time, cost) into positive attributes by multi-
that corresponds to the constraints involved in the
                                                                       plying their values by -1 such that the higher value
services of the class Si.
                                                                       is the higher quality. To allow for a uniform mea-
The request of the example is
                                                                       surement of Web service qualities independent of
Rq=fc(f c1 =(),f c2 =([5000, 7000], [12, 18]),f c3 =([60, 80]
                                                                       units, we normalize the different QoS values in the
,[10, 11]),gc(q1 < 10).
                                                                       range [0, 1], as follow :
3.1.1 The Functional Constraints                                                                qk (Sij ) − Qmin(qk )
                                                                               N qk (Sij ) =                                  (1)
                                                                                               Qmax(qk ) − Qmin(qk )
The service selection process starts with comput-
ing the matching degree between the request Rq                         Where N qk (Sij ) is the normalized QoS value of
and services Sij .                                                     the Web service Sij on the QoS parameter qk and
Given the users preferences on service description                     Qmin(qk ) (resp.Qmax(qk ) is the minimum (resp.
attributes f c, the degrees of match between a re-                     maximum) value of the QoS parameter qk . Table3
quested Rq and an available service (see e.g.,[10]                     is the extention of the table 2 with the QoS values
) are computed. In this work, we use the Jaccard                       of Web services example of Table 1 after normal-
coefficient for matching service descriptions. If                      ization.
I1, I2 are two intervals, their Jaccard coefficient is
J(I1, I2) = |I1∩I2|
              |I1∪I2 , where |I| measures the length                   3.1.3 The top-k relevant services
of the interval.
We suppose that we have m functional constraint                        Let us consider the services in Table 3, to compute
f (Sij ) = {f1 (Sij ), .., fm (Sij )} where fi (Sij ) is the           the Top-K services by taking into account the


    International Conference on Advanced Aspects of Software Engineering
    ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                       22
 ICAASE'2014                                             Hybrid WebService Selection based on Functional and Non-Functional Properties


                                                                       Where µ >> (ui , vi ) expresses,the extent to which
Table 3: Web services with Matching score and Nor-
                                                                       ui is more or less greater than vi it’s defined as
malized QoS values
                     M (f ci , f (Sij ))            Q(Si )
      f ci     Sij
                                                                                           
                                                                                            0           if x − y ≤ ε
                     m1       m2           N q1     N q2      N q3
                                                                          µ  (ui , vi ) =   1           if x − y ≥ λ + ε      (3)
      f c1     S11   -        -            1        1         1                             x−y−ε
                                                                                                  λ      otherwise
               S21   1        0, 5         1        1         0
      f c2     S22   0.75 1                1        0.75      0.75
 Rq            S23   0        0.33         0        0         1                                1   X
                                                                             F DS(Sij ) =            deg(Sij > Sik )           (4)
               S31   0.6      0.14         1        1         0.5                           Si − 1
                                                                                                   Sik ∈Si
      f c3     S32   0.50 0.25             0        0         0
               S33   0        0.1          0.8      0.5       1        Let’s return to our example deg(S21 > S22 ) = 0.4
                                                                       and deg(S22 > S21 ) = 0.29 with  = 0.1 and λ = 0.2.
                                                                       This is more significative than S21 and S22 are not
                                                                       comparable.
                                                                       We compute F DS(Sij ) of all services for each
functional and non- functional parameters,we have
                                                                       class in order to rank them. After that we take
to compare the services of the same class by
                                                                       the Top-K services. Only the Top-k services will
considering the vectors (M (), Q()) of each service
                                                                       be considered in the global optimization step.
Sij (see Table 3) .

Definition1 (Service Dominance) A Web ser-                             3.2    The Global Optimization
vice Sij is said to dominate (Pareto dominance)
another Web service Sik if and only if Sij is better                   3.2.1 The Global QoS Constraints
than or equal to Sik in all parameters and better
than Sik in at least on one parameter.                                 Let C = {S1i1 , .., Snin } be a composition of n ser-
                                                                       vices. The global Qo S constraints gc may be ex-
Definition2 (User Preferences-aware Service                            pressed in term of upper and/or lower bound for
Dominance) Given a user Functional-preference                          the aggregated values of the different Qo S criteria.
space M, and a user non-Functional space Q, a                          we only consider positive Qo S criteria to have only
service Sij is said to dominate an other service                       lower bound constraint. We say that a composition
Sik on M and Q if and only if ∀mi ∈ M , ∀N qi ∈ Q,                     C is feasible if all the request’s global constraints
(mi (Sij ) ≥ mi (Sik )) ∧ (N qi (Sij ) ≥ N qi (Sik ))                  are satisfied, this means that Qc(c) ≥ gc. where
and ∃N qt ∈ Q, ∃mt ∈ M , (mt (Sij ) > mi (Sik ))∧                      Qc(c) is the vector of the Qo S value of a composite
(qt (Sij ) > qi (Sik ))                                                service c.
according to our example table 3 we have S21                           The Qo S value of a composite service depends on
dominates S23 , let consider now S21 and S22 , in                      the Qo S values of its components as well as the
fact neither S21 dominates S22 nor S22 dominates                       composition model used. In this paper we con-
S21 because S21 is better than S22 in m1 and q2 ,                      sider the sequential composition. The Qo S vec-
and S22 is better than S21 in m2 and q3 , so S22 and                   tor of composite service C is defined as Qc(C) =
S22 are incomparable. However we can consider                          {Qc1 (C), ..Qci ). Where Qci (c)} represents the
that S22 is better than S21 since q3 (S22 ) = 0.75 is                  value of the i-th Qo S attribute of C and can be ag-
much higher than q3 (S21 ) = 0, and q2 (S22 ) = 0.75                   gregated from the Qo S values of its components
is almost close to q2 (S21 = 1). here for, it is                       services by using the aggregation function inspired
more interesting to use the FuzzyDominance                             from [22], see Table 4.
score(FDominance) relationship defined in [5] to
express the extent to which a matching degree
(more or less) dominates another one.                                          Table 4: The Qo S Aggregation functions
                                                                          Qo S                Agregation function
                                                                                                        Pn
Definition3 (FDominance) given two d-dimentional                          Reponse Time        Qc1 (C) = j=1 q1 (Sj )
                                                                                                               Pn
point u and v the Fdominance express the extent                           Reputation          Qc2 (C) = 1/n ∗ j=1 q2 (Sj )
                                                                                                        Pn
to which u dominates v as                                                 Price               Qc3 (C) = j=1 q3 (Sj )
                                                                          Reliability         Qc4 (C) = Πnj=1 q4 (Sj )
                            Pd                                            Availability        Qc5 (C) = Πnj=1 q5 (Sj )
                               i=1 µ  (ui , vi )
             deg(u > v) =                                    (2)
                                      d


 International Conference on Advanced Aspects of Software Engineering
 ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                           23
 ICAASE'2014                                         Hybrid WebService Selection based on Functional and Non-Functional Properties


3.2.2 The Utility function                                          initial solution. A move can be defined as a permu-
                                                                    tation between two services rank of two classes.
                                                                                   0
Different service composition can be generated                      A solution c ∈ X is a neighbor solution c ∈ X if
from different Si Top-K service Classes to answer                   it can be obtained by applying a move to c. Let’s
                                                                                                       0
a user query. In order to evaluate the service com-                 consider C = {S11 , S23 , S34 } , C = {S13 , S21 , S34 }
positions, we need an objective function u(c) that                  in this example, we replace the service s3 by the
associates a value to the composition.                              service s1 into the class 1 and change the service
                                                                    s1 by the service s3 into the class 2, we apply the
               u(c) = F DS(c) + P (c);                 (5)          move: permutation of the rank 1 and 3.
                                                                    The Tabu list in our approach is the structure
where F DS(c) is the FDominance(see defini-                         that contains the service composition used in the
tion3) Score associate to a composition C =                         previous iterations. We use the objective function
{S1i1 , .., Snin } as follows                                       u(c) (see formula 1) to evaluate each neighbor
                           n                                        solution.
                        1X                                          We define the diversification strategy as restarting
               u(c) =         F DS(Siji )              (6)
                        n i=1                                       the process after a certain number of iterations
                                                                    when the Optimal local solution stagnates.
The function p(c) is the penality function which
decreases the utility score u(c) of the composition                 c- The Tabu-Search optimization algorithm
that violates the global
                     Pn constraints gc, it’s defined                The algorithm, TSOptSelection, selects the
as follow P (c) = − i=1 Dk (c) where                                Optimal or near optimal services composition
                                                                   according to the objective Function u(). The
             0              if Qk (c) ≤ Gck
   Dk =                                           (7)               algorithm proceeds as follows.
             |Qk (c) − Gck| otherwise
                                                                    Step.1 Process the neighborhood of a solu-
3.2.3 The Tabu-Search optimization approach
                                                                    tion compoition (line 6-13).
                                                                    For each solution, we generate all the neighbor
In this paper we apply metaheuristic optimization
                                                                    solutions by using SwapMoves() that defines all
techniques to select the optimal or a near-optimal
                                                                    the possible moves, then we compute the score
solution in Web service composition, we use
                                                                    of all the composition solutions in Ls (line 8) and
the Tabu search-based method and propose
                                                                    choose the best neighbor of Ls (line 10). The best
The TSOptiSelection Algorithm to maximize the
                                                                    neighbor is the one having the highest score. if the
objective function u(c). Our algorithm (Algorithm1)
                                                                    best neighbor solution is in the tabu list, we choose
uses a Tabu Search algorithm with diversification
                                                                    the next Best solution that not in the tabu list (line
strategy. The Tabu search meta-heuristic relies
                                                                    12). This one will be used in the next iteration.
on the principles of forbidding a set of elements
which are stored in tabu list. The basic concepts
                                                                    Step.2 Update the Tabu list and the optimal
defined in Tabu search are: The initial solution ,
                                                                    Solution (line 14).
neighborhood of a solution , tabu-active elements
                                                                    Add the best neighbor solution to the tabu list
, tabu list, the objective function and diversification
                                                                    (avoid a cycle)
strategy.
                                                                    Step.3 Restart the processing (line18-19).
a- The initial Solution
                                                                    if we reach p% of iteration and we have no ame-
In our approach, the initial solution C0 is a random
                                                                    lioration of the optimality we restart the processing
composition, we choose a random service from
                                                                    Algorithm.
each class, for an efficient initial solution the
                                                                    The algorithm ends when it satisfies the stop
services should not have the same rank in order
                                                                    condition (reach the number of iterations or the
to have different composition by moves services
                                                                    stagnation of the solution for it iterations)
between classes
let Co = {S1j1 , .., Snjn } be an initial so-
lution, C0 is an efficient initial solution iff
∀Sijk ∈ Co, ∀Smjl ∈ Co/i 6= m, k 6= l

b- The neighborhood
The search space of our algorithm is the set of
compositions obtained by moves applied to the


 International Conference on Advanced Aspects of Software Engineering
 ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                       24
    ICAASE'2014                                         Hybrid WebService Selection based on Functional and Non-Functional Properties


Algorithm 1 TSOptiSelection                            CPU @ 1.40GHz 4 processors, 4.0GB of RAM,
Input: T op-kRelevantsServices, t, it, p // t is the   Ubuntu 13.10, Netbeans 7.4. several simulations
    lenght of Tabulist,it is the number of iterations, have been made to compare our Approach:hybrid-
    p is the stagnation rate                           Optimization(Tabu Search with Top-K).) to the
Output: C ∗ the optimal composition                    Standard Tabu Search. For simplicity we denote
 1: C 0 ← ComposeServices(random(Sij ), ..random(Sij)) our approach (TS (Top-K)).
    // an initial solution
 2: C ∗ ← C 0                                          We compare the optimality rate of TS (Top-K) and
 3: Ls ← {C ∗ } // set of composition solution         the standard Tabu Search . We consider several
 4: LT abu ← {} // Set of composition Tabu             top k (top 100, top 50, top 20 and top 10) The opti-
 5: while N otStopCondition do                         mality Score is defined as follows: rate=the fitness
 6:    Ls ← SwapM oves(C 0 ) // Generate all the       of the current solution/the fitness of the optimal so-
       Neighborhood solutions of C ∗                   lution. The optimal solution’s fitness for this base,
 7:    for all Cs in Ls do                             is equal to 0.62, therefore the optimality rate of a
 8:        score = ComputeU tililyScore(C) // use      solution ’a’ is u(a)/0.62
           the objectif function u(c)                   As depicted in the Figure 1 the use of the top-k se-
 9:    end for
10:    C 0 ← M axScoreComposition(lS)
11:    while C 0 is Tabu do
12:        C 0 ← N extM axScoreComposition(lS)
13:    end while
14:    LT abu ← LT abu ∪ C 0
15:    if Score(C 0 ) > Score(C ∗ ) then
16:        C∗ ← C0
17:    end if
18:    if it = it*p and stagnation and Restart number
       < threshold then
19:        TTSOptiSelection(T op-k)
20:    end if
21: end while                                          Figure 1: The optimality rates of the Tabu Search/
22: return C ∗                                         TS(Top-K) with constraints(it=500,p=0.2,t=10)

                                                                       lection combined with the tabu search largely out-
4     EXPERIMENTAL EVALUATION                                          performs the standard tabu search in term of opti-
                                                                       mality rate for all simulations, The main reason why
This section briefly reports our experiments re-                       the optimality rate of our aproach is better than the
lated to our approach. For this purpose we use a                       standard tabu search is the use of the Top-K ser-
data set by assigning arbitrary values to 2000 ser-                    vices which reduces the search space of services
vices , we have 10 classes of services and each                        composition and consider only the best services in
class contains 200 instances,each service has 02                       each class.
functional-constraints and 5 QoS attributes. The
QoS value of each attribute is generated by a uni-
form random process which respects the bound                           5   CONCLUSION
specified as follow: Response time (0-300s),
Reputation (0-5), Price(0-30), Reliability(0.5-1.0),                   In this paper, we have presented an optimization
Availability(0.7-1.0).                                                 approach for web services composition. this latter
several parameters have been modified to find the                      takes into account the functional and n-functional
new optimal result in term of optimality                               properties at the same time. Our approach re-
i.     The maximum number of iteration:           is                   duces the search space and handles the global
[100,10000].                                                           constraints. Experimental results show that the
ii. The size of the Tabu List [7, 20].                                 proposed approach is effective and efficient. For
iii. The stagnation rate P and the threshold of                        future work, we will consider alternative algorithm
restart number.                                                        like Particle Swarm Optimization with the use of
All the experiments are taken on the same soft-                        dominance relation ship for efficient and fast Web
ware and hardware, which were Intel i3-2365M                           Service Composition.


    International Conference on Advanced Aspects of Software Engineering
    ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                       25
 ICAASE'2014                                         Hybrid WebService Selection based on Functional and Non-Functional Properties


6. REFERENCES                                                       [12] F. Glover and M. Laguna. Tabu Search.
                                                                         Kluwer Academic Publishers, 101 Philip
 [1] S. Agarwal and S. Lamparter. User prefer-                           Drive, Assinippi Park, Norwell, Massachusetts
     ence based automated selection of web ser-                          02061, USA, 1998.
     vice compositions. K. V. A. S. M. Z. C Bussler,
                                                                    [13] F. Hadjila, Chikh A, and A Belabed. Seman-
     editor, ICSOC Workshop on Dynamic Web
                                                                         tic web service composition: a similarity mea-
     Processes, page 112, Decembre 2005.
                                                                         sure based approach algorithm. In ICIST11
 [2] E. Alrifai and T. Risse. Selecting skyline ser-                     Tebessa Algeria, 2011.
     vices for qos-based web service composition.                   [14] F. Hadjila, Chikh A, M. Merzoug, and
     In in Proceedings of the WWW, pages 26–30,                          Z Kameche. Qos-aware service selection
     Raleigh, North Carolina, U SA., April 2010.                         based on swarm particle optimizatio. In IEEE
 [3] M. Alrifai, D. Skoutas, and T. Risse. Select-                       ICITES12, 2012.
     ing skyline services for qos-based web ser-                    [15] F. Hadjila, A.Chikh, and A.Belabed. Semantic
     vice composition. WWW, page 1120, 2010.                             web service composition: a similarity m ea-
 [4] D. Ardagna and B. Pernici. Adaptive service                         sure based approach algorithm. In ICIST11
     composition in flexible processes. IEEE Trans-                      Tebessa Algeria, 2011.
     actions on Software Engineering,, 33(6):369–                   [16] F. Hadjila, A.Chikh, and M.Dali Yahia. Qos-
     384, 2007.                                                          aware service selection based on genetic al-
                                                                         gorithm. In CIIA, 2011.
 [5] K. Benouaret and D. Benslimane. On the use
     of fuzzy dominance for computing service sky-                  [17] D. Skoutas. Ranking and clustering web ser-
     line based on qos. ICWS, 2011.                                      vices using multicriteria dominance relation-
                                                                         ships. IEEE, 2010.
 [6] K. Benouaret, D. Benslimane, and A. Hadjali.
     A fuzzy framework for selecting top-k web ser-                 [18] D. Skoutas, D. Sacharidis, A. Simitsis, V. Kan-
     vice compositions. Applied Computing Re-                            tere, and T. K. Sellis. Top- dominant web ser-
     view, 2011.                                                         vices under multi-criteria matching. EDBT,
                                                                         page 898909, 2009.
 [7] D. Berardi, D. Calvanese, G. De Giacomo,
     R. Hull, and M .M ecella. Automatic composi-                   [19] Weise T, Steffen B, and Kurt G. Web ser-
     tion of transition-based semantic web services                      vice composition systems for the web ser-
     with messaging. In ACM, editor, 31st VLDB                           vice challenge a detailed review. Tech-
     Conference on Very Large Data Bases (VLDB                           nical report, A technical report number:
     05), page 613624, 2005 Tronheim, Norway.                            urn:nbn:de:hebis:34- 2007111919638 univer-
                                                                         sity of kassel., 2007.
 [8] Steffen Bleul, ThomasWeise, and Kurt Geihs.
     Making a fast semantic service composi-                        [20] H. Wang, J. Xu, , and P. Li.           Incom-
     tion system faster. In In Proceedings of                            plete preference-driven web service selection.
     IEEE Joint Conference (CEC/EEE 2007) on                             IEEE SCC, 2011.
     E-Commerce Technology (9th CEC07) and                          [21] Q. Wu, A. Iyengar, R. Subramanian, I. Rouvel-
     Enterprise Computing, E-Commerce and E-                             lou, I. Silva-Lepe, and T. A. Mikalsen. Combin-
     Services (4th EEE07), 2007.                                         ing quality of service and social information for
 [9] J. Cardoso, J. M iller, A. Sheth, and J. Arnold.                    ranking services. ICSOC/ServiceWave, page
     Quality of service for workflows and web ser-                       561575, 2009.
     vice processes. Journal of Web Semantics,                      [22] Q. Yu and A. Bouguettaya. Fondations for ef-
     pages 281–308, 2004.                                                ficient web service selection. Springer Sci-
                                                                         ence+Business Media, 2010., page 481488,
[10] X. Dong, A. Y. Halevy, J. Madhavan,
                                                                         2010.
     E. Nemes, and J. Zhang. Simlarity search for
     web services. in VLDB, page 372383., 2004.                     [23] L. Zeng, B. Benatallah, M . Dumas,
                                                                         J. Kalagnanam, and Q. Z. Sheng. Quality
[11] E.Alrifai and T. Risse. Combining global op-                        driven web services composition. In the Inter-
     timization with local election for efficient qos-                   national World Wide Web Conference, pages
     aware service composition. In WWW09, April                          411–421, 2003.
     2024, 2009, M adrid, Spain.


 International Conference on Advanced Aspects of Software Engineering
 ICAASE, November, 2-4, 2014, Constantine, Algeria.                                                                       26