Research ArticleA Service Chain Discovery and Recommendation Scheme UsingComplex Network Theory
Guoqi Liu, Yuli Zhao, Zhuang Wang, and Ying Liu
College of Software, Northeastern University, Shenyang 110819, China
Correspondence should be addressed to Ying Liu; [email protected]
Received 24 October 2013; Revised 20 December 2013; Accepted 24 December 2013; Published 16 January 2014
Academic Editor: Yuncai Wang
Copyright Β© 2014 Guoqi Liu et al. This is an open access article distributed under the Creative Commons Attribution License,which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Service chain discovery and recommendation are significant in services composition. A complex network module based algorithmusing services invocable relations is proposed to search useful service chains on the network. Furthermore, a new scheme fordiscovering composite services processes automatically and recommending service chains by ranking their QoS is provided.Simulations are carried out and the results indicate that some useful service chains in the dataset provided by theWSC2009 can befound by the new algorithm.
1. Introduction
Web servicewaswidely applied for its outstanding advantageslike self-describing, self-containing, and easy deployment. Inorder to implement complex business flow, composition ofexisting web services is a common way to solve the problem[1]. Web services composition includes a serious of servicesby service relations and generates a behavior chain to meetuser requirements, which is called a web service chain [2]. Aservice chain should not only satisfy the functional require-ments of users but also make sure that all of the servicesin the chain are correct and reliable. Consequently, how tocompose web services to discover service chains according toservice relations is very crucial.
In web service, the compatibility and integral efficiency ofcomposed services should be considered during the compo-sition procedure of web services. Web services are combinedaccording to the attributes and functions of both servicesprovided and the user requirements [3, 4], especially a lot ofworks have been proposed in this field of quality-driven webservices composition [5β7].
Recently, some researchers have proposed a lot of algo-rithms using graph theory to discover service composition[8], in which the services and the relations among themare treated as nodes and edges, respectively. In this kindof methods, the composition of web services is achieved
by looking for feasible path among the nodes. The flaw ofthese schemes is that the research on graph theory tends tobe theatrical research rather than the actual situation. As amatter of fact, the web services are distributed on the webservers on the Internet, and the basic structure and charac-teristics of it are more like a complex network. Therefore,the basic architecture model of web services is complex net-work rather than a graph. In this paper, we firstly analyze thescale-free and small-world features of the complex networkwe created, which illustrates the basic structure is a complexnetwork. The traditional graph theory cannot reflect theactual distributed structure of web services.
The compatibility problem of web services can be solvedby using a specific complex network model, which is createdby matching the input and output interface of each service.However, there are still two problems, the structure andintegral quality problems among services. In Section 4, amethod for identifying the structure of web services in com-plex network is proposed, and a recommendation algorithmof high quality service chain is proposed. Therefore, the rec-ommendation scheme of service chain in complex networkis shown.
In this paper, a new service chain recommendationscheme based on complex network is proposed, in whichweb services and the relations among them are treated asthe nodes and edges of the network, and both of them
Hindawi Publishing CorporationMathematical Problems in EngineeringVolume 2014, Article ID 157085, 6 pageshttp://dx.doi.org/10.1155/2014/157085
2 Mathematical Problems in Engineering
Inputweb services
relations
Inputstructured node
Inputweb
servicesConstruct complex
modelGenerate service
chainStructured service
chainOutputservicechain
Figure 1: The recommendation process of web service chain.
Webservices Node
Abstraction
Abstraction
Match input andoutput parameters
Invocablerelation Edge
Construct Networkmodel
Check Characteristicsof complex
network
Figure 2: The process of constructing network model.
should match the parameters of web services. Web servicescomposition can be obtained by getting service chain inthe complex network model meeting user requirements andthe composite service chain can be formed automatically byadding structural nodes to the service chain. The whole pro-cess is shown in Figure 1.The discovered service chain shouldbe sorted by their QoS indexed to reflect the performance ofeach service chain according to user requirements. After that,some service chains with good performance are providedto the users. Simulation results show that our scheme canreduce the number of services composition and significantlyimprove recommendation efficiency.
The rest of this paper is organized as follows. In Section 2,the complex networkmodel of web service is introduced.Thediscovery of service chain and the structured service chainare described in Sections 3 and 4, respectively. Simulationresults and performance analysis are report in Section 5. Aconclusion is drawn in the last section.
2. Web Services Complex Network Model
There are many kinds of relations among web services, suchas invoking relation, containment relation, and relevancerelation [9].The invoking relation includes invocable relationand invoked relation. Invocable relation means that one webservice could invoke the other web service. Invoked relationmeans that one service is sure to invoke the other one.
A number of web services combined together completea certain demand by invoking relation among these webservices. These web services get together with invocationrelation and form a directed acyclic graph. Usually, identi-fying the invocable relations is the first step of finding outthe invoking relations. For the purpose of finding out theinvoking relations between web services, we should constructa complex network module by the invocable relation. Theinvocable relation between web services is determined bymatching the input and output attributes of web servicesand the complex network model would be set up based on
Table 1: Some average measures of the complex network modelscorresponding to the dataset Net-1 and Net-2.
Net Numberof nodes
Numberof edges
Averagepath length
Clusteringcoefficient π
1 500 10323 3.1929 0.2348 0.012 1000 25549 3.4746 0.1870 0.01
the invocable relations. Web services are taken as nodes, andnodes which satisfy invocable relation are linked together inthe complex network model. The network module can bepresented by a set π of nodes and a set πΈ of edges, connectedtogether as a graph denoted πΊ = (π, πΈ); each edge π β πΈ isconnected to one pair of web services, one at each end.
The process of constructing the complex networkmoduleis shown in Figure 2.
Letπ represent the input attribute set of πth node and letπ΅be the output attribute set of πth node. Base on the invocablerelations between the set of nodes, an adjacency matrix π΄
withπ rows andπ columns is defined as follows:
πΊ =
[[[[[[
[
0 0 1 β β β 0
1 0 0 β β β 1
0 β β β β β β β β β 1
... d d d...
1 β β β 0 1 0
]]]]]]
]
, (1)
where π΄ππdenotes the (π, π) entry of π΄. If |π β© π΅|/|π΅| > π
(0 < π β€ 1), π΄ππ= 1, which represents a connection between
the πth node and πth node; otherwise, π΄ππ
= 0. The scale ofthe complex network model can be controlled by selectingthe value of π.
The Web Service Challenge 2009 (WSC2009) is used asthe database of the experiment [10]. Considering the small-world and scale-free feature of complex network model [11,12], two datasets are used in the experiments, as Table 1 shows.
We defined the π = 0.01 when we constructed thenetwork module.
Mathematical Problems in Engineering 3
(a)
0 10 20 30 40 50 60 70 80 90 1000
0.01
0.02
0.03
0.04
0.05
0.06
Degree of services (k)
P(k)
(b)
Figure 3: (a)The graph of network model of the dataset Net-1 with 500 nodes, (b)The node-degree distribution of network model which has500 node.
(a)
0 10 20 30 40 50 60 70 800
0.02
0.04
0.06
0.08
0.12
0.14
0.16
0.18
0.2
0.1
Degree of services (k)
P(k
)
(b)
Figure 4: (a) The graph of network model of the dataset Net-2 with 1000 nodes, (b) The node-degree distribution of network model whichhas 1000 nodes.
The network model of the dataset Net-1 shown in Fig-ure 3(a) is amedium-scale network, and it satisfies the featureof small world as it has 500 nodes and 10323 edges, with thesmall average path length being 3.1929 and greater clusteringcoefficient being 0.2348.
In Figure 3(b), the degree ofmost nodes is small and a fewnumber of nodes have large degree, indicating the nodes havethe property of heterogeneity. The node-degree distributionfollows the power-law distribution, and the network modelhas scale-free property. Hence, 500 nodes in the dataset Net-1can build a web services complex network model which iscapacity of small-world and scale-free property.
The network model of the dataset Net-2 with 1000 nodesis shown in Figure 4(a). The node-degree distribution of thisnetwork model is shown in Figure 4(b). The results indicatethat it also satisfies the feature of small world.
Simulation results show that the node-degree distributionfollows power-law distribution, and this network model hasthe scale-free property.
There are two main motivations for the study of thecharacteristic of both the networkmodules.The first one is totest and verify the feasibility of constructing networkmodule.The other is to make sure we can discover the web servicechain by the module. The feature of small world shows mostof the chains in the network are short. And the feature of clus-tering coefficient shows there are lots of relationships amongthese web services.
3. The Discovery of Service Chain
In this section, web service chains can be discovered accord-ing to the complex network model defined in Section 2. For
4 Mathematical Problems in Engineering
discovering service chains, invocable service set and drivenset of each service should be found based on the networkmodule at first. Then we can discover the web service chainsbased on the driven set. Overall, the process of discoveringservice chains can be described as follows.
Step 1. Find the invocable service setππ. An invocable service
set is described asππ= β¨π, π
πβ©, where π is the name of the πth
service in complex network model; ππrepresents the set of
services, which can invoke service π; that is, π΄ππ
= 1, π β
[1,π], in the adjacency matrix π΄.
Step 2. Find the driven set denoted by DSπ. Suppose π
π=
β¨π, ππβ© is the invocable service set of π
π, where π
π=
{ππ1, ππ2, . . . , π
ππ}; Ξπis contained in π
π, and π΅
ππis the output
attributes set of the πth service in Ξπ. Then the driven set of
the πth service can be denoted as follows.
DSπ= {Ξπ| π΅πβ βͺππ} , (2)
where Ξπis the redundant minimal subset and π΅
πis the input
attributes set of service ππ.
Step 3. Find the service chainCh.Assume a sequence of π ser-vices Ch is composed of π
1, π2, . . . , π
π, ππ+1
, . . . , ππ, π β [1,π].
Sequence Ch is a service chain if and only if ππβ DSπ, where
DSπis the driven set of π
πand π < π.
4. Structured Service Chain andIts Recommendation
4.1. Structured Service Chain. In Section 3, we introducedthe complex network model formed by matching input andoutput interfaces, and all the services in the service chainof a specific function can be successfully found using thisscheme. However, we did not identify the relations among theservices. In general, the relations between adjacent servicesare selection relation and parallel relation, and in this section,we introduce the way that identifies the relations of servicesin service chain using complex network model. Although aservice chain can satisfy the requirements of users, it cannotbe executed in the order defined by a business process.Business Process Execution Language (BPEL) combinedwith Web Service Chain Language (WSFL) and XLANGprovides rich vocabulary to describe business process [13].Therefore, service chain can be defined as a complex businessprocess by BPEL through a series of algorithms. Accordingto the invocable relations in the service chain, two typesof relationship among different services can be defined asfollows.
Suppose Ch = {π1, . . . , π
π} is a service chain. Let π΅
πrepre-
sent the input attribute set of service ππandπ΄
1, . . . , π΄
πdenote
the output attribute set of service π1, . . . , π
π.Then, there exists
a parallel relationship among all the services ππin set π =
{ππ| π΅πβ βͺπ΄
π, π < π}. If the number of set π satisfied the
condition just mentioned, larger than 1, there is a selectiverelationship among these sets.
A structured service chain model can be proposed basedon the parallel relationship and the selective relationship. In
S1
S2 S3
S4 S5
S6
S7 S8
S9
S
And /And
And /And Or /Or
Or /Or
Web service Parallel relationship Selective relationship
Figure 5: The structured service chain constructed by 9 webservices.
Figure 6: The complex network representing the service chaindiscovered from 1000 web services.
this model, there are two types of nodes: one is the servicenode that represents the web service, and the other is thestructured node which represent parallel relationship or theselective relationship.
The structured service chain model with 9 service nodesand 4 structured nodes is shown in Figure 5.
In Figure 5, structured node pairs (and, /and) and (oR,/oR) indicate parallel relationship and selective relationship,respectively.
4.2. Service Chain Recommending. The research on serviceselection using web service QoS is widely studied [5, 6]. Inthis section, we will discuss how to measure the integral QoSof the recommended service chain based on complex networkmodel, and the recommendation scheme of service chain thathaving higher quality is proposed.
Recommending service chain according to theQoS basedon composite service chain essentially calculates QoS ofdifferent combinations in service chain, including QoS ofservices in parallel relationship, selective relationship, andserial relationship. The selection of QoS adopts public QoSattributes that canmeasure the service performance: responsetime and throughput [5, 14]. Response time refers to the timerequired to complete a service request; throughput refers toquantity of the completed service requests per unit time. A
Mathematical Problems in Engineering 5
Serv1300982217 Serv816391087
Serv907328169 Serv907328169Serv1092071335
Serv1092071335
Serv1439642678Serv2132326464
Serv1294224112
Serv146045134
Serv2030123731
Serv885823320
Serv193139534
Or
/Or
Or
/Or
And
/And
Figure 7: The structured service chain found from the complex network shown in Figure 6.
service with superior performance tends to have a shorterresponse time and high throughput.
In the process of recommending service chain, overallQoS value should be calculated [15]. We will not discuss thedetails of QoS computing in the paper, just hope to verify thatwe can recommend service chainwithQoS information usingcomplex network. π(π‘
π) represents the response time of ser-
vice ππ, andπ(c
π) represents the throughput of service π
π. The
equation of QoS calculation in parallel relationship is shownas follows:
π (π‘) = Max {π (π‘π)} , π (π) = Min {π (π
π)} . (3)
The equation of QoS calculation in selective relationship isshown as follows:
π (π‘) = Min {π (π‘π)} , π (π) = Max {π (π
π)} . (4)
The equation of QoS calculation in serial relationship isshown as follows, where π represents the number of servicesin serial relationship:
π (π‘) =
π
β
π=1
π (π‘π) , π (π) = Min {π (π
π)} . (5)
QoS calculation of composite service chain is divided intothree cases: parallel, selective, and serial. Calculations of theresponse time and throughput in the three cases are differentfrom each other [16]. Both types of QoS attributes should beconsidered when recommending service chain.The equationof calculating the overall QoS of service chain is as follows:
π =π1
π (π‘)+ π2π (π) . (6)
π1and π
2are weights of the two QoS attributes. By
calculating the overall QoS of composite service chain withthe equations, we can sort the composite service chains whichmeet usersβ needs in QoS value so as to achieve the goal ofrecommending service chain.
5. Experimental Results
Wediscover the service chains in the datasetNet-2; the resultsare shown as follows. The complex network module repre-senting the service chain discovered from 1000 web servicesis shown in Figure 6.
According to the results, we can determine the end tagsof many structure nodes during discovering the compositeservices automatically, while the correspondent start tags areless. We choose the appropriate data and set the user-requestparameters as βserv658888682β and βserv957918420,β and insimulations with the dataset Net-2, the parameter π
1is 0.7
and π2is 0.3 when calculating QoS.
Due to the limit of services quantity during the exper-iment, the data impossibly generate so much complex andcomplete composite service chains. In the experiment result,it shows that this service chain includes structured nodes.Thegraph of two service chains we got is shown in Figure 7.
According to the response time of each service, the QoSvalue of throughput, and the QoS equation of compositeservice chain in WSC2009, the entire QoS value of the firstservice chain is 2139 and the second is 3655.
The experiment results indicate that although both of theservice chains satisfy the requirement of users, the second oneis better. Consequently, the later one is the service chain werecommend.
6. Conclusions
This paper proposed a new scheme to construct complexnetwork based onweb services and analyzed the feature of thenetworkmodule. Based on themodule, we discovered servicechains and structured the service chains. At last, we recom-mended the service chains to user by QoS.We use the datasetprovided on public to generate service chain and recommendthem to verify our scheme.
6 Mathematical Problems in Engineering
In the future, we will further consider the evolution prob-lems of the constructed complex networks taken by dynamicservices and improve the accuracy and efficiency problemsin the discovery and recommending of service chain.
Conflict of Interests
The authors declare that there is no conflict of interestsregarding the publication of this paper.
Acknowledgments
This research was supported by the National Natural ScienceFoundation of China (Grants nos. 61374178 and 61202085),the Liaoning Provincial Natural Science Foundation of China(Grant no. 201202076), the Specialized Research Fund forthe Doctoral Program of Higher Education (Grant no.20120042120010), and the Ph.D. Start-Up Foundation ofLiaoning Province, China (Grants nos. 20111001, 20121001,and 20121002).
References
[1] Y. Z. Zhang,W. Fu, andH.K.N. Leung, βWeb Service publishingand composition based on monadic methods and programslicing,β Knowledge-Based Systems, vol. 37, no. 1, pp. 296β304,2013.
[2] Y. Charif and N. Sabouret, βAn overview of semantic web ser-vices composition approaches,β Electronic Notes in TheoreticalComputer Science, vol. 146, no. 1, pp. 33β41, 2006.
[3] T. G. K. Vasista and M. A. T. AlSudairi, βService-orientedarchitecture(SOA) and semantic web services for web portalintegration,β Advances in Computing and Information Technol-ogy, vol. 177, no. 2, pp. 253β261, 2013.
[4] D. Lee, J. Kwon, S. Lee, S. Park, and B. Hong, βScalable and effi-cient web services composition based on a relational database,βJournal of Systems and Software, vol. 84, no. 12, pp. 2139β2155,2011.
[5] L. Z. Zeng, B. Benatallah, and M. Dumas, Quality Driven WebServices Composition, Budapest, Hungary, 2003.
[6] L. Zeng, B. Benatallah, A.H.H.Ngu,M.Dumas, J. Kalagnanam,and H. Chang, βQoS-aware middleware for Web services com-position,β IEEE Transactions on Software Engineering, vol. 30,no. 5, pp. 311β327, 2004.
[7] K. Kritikos, QoS-based web service description and discovery[Ph.D. thesis], Computer Science Department, University ofCrete, Crete, Greece, 2008.
[8] S. Lagraa, H. Seba, R. Khennoufa, and H. Kheddouci, βA graphdecomposition approach to web service matchmaking,β in Pro-ceedings of the 7th International Conference onWeb InformationSystems and Technologies (WEBIST β11), pp. 31β40, Funchal,Portugal, May 2011.
[9] S.-Z. Chen, Z.-Y. Feng, and H. Wang, βService relations and itsapplication in services-oriented computing,β Chinese Journal ofComputers, vol. 33, no. 11, pp. 2068β2083, 2010.
[10] S. Kona, A. Bansal, M. B. Blake, S. Bleul, and T. Weise, βWSC-2009: a quality of service-oriented web services challenge,β inProceedings of the IEEE Conference on Commerce and EnterpriseComputing (CEC β09), pp. 487β490, Vienna, Austria, July 2009.
[11] M. E. J. Newman, βThe structure and function of complex net-works,β SIAM Review, vol. 45, no. 2, pp. 167β256, 2003.
[12] D. J. Watts and S. H. Strogatz, βCollective dynamics of βsmall-world9 networks,βNature, vol. 393, no. 6684, pp. 440β442, 1998.
[13] G. E. Yu, P. S. Zhao, L. P. Di, A. Chen, M. Deng, and Y.Bai, βBPELPower-A BPEL execution engine for geospatial webservices,β Computers and Geosciences, vol. 47, no. 10, pp. 87β101,2012.
[14] A. Saeed and S. Leon, βMeasuring quality of service for con-tract aware web-services,β in Proceedings of the 1st AustralianWorkshop on Engineering Service-Oriented Systems, Melbourne,Australia, 2004.
[15] D. A. Menasce, βQoS issues in web services,β IEEE InternetComputing, vol. 6, no. 6, pp. 72β75, 2002.
[16] M. F. M. Fudzee and J. H. Abawajy, βQoS-based adaptationservice selection broker,β Future Generation Computer Systems,vol. 27, no. 3, pp. 256β264, 2011.
Submit your manuscripts athttp://www.hindawi.com
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
MathematicsJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Mathematical Problems in Engineering
Hindawi Publishing Corporationhttp://www.hindawi.com
Differential EquationsInternational Journal of
Volume 2014
Applied MathematicsJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Probability and StatisticsHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Mathematical PhysicsAdvances in
Complex AnalysisJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
OptimizationJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
CombinatoricsHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
International Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Operations ResearchAdvances in
Journal of
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Function Spaces
Abstract and Applied AnalysisHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
International Journal of Mathematics and Mathematical Sciences
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
The Scientific World JournalHindawi Publishing Corporation http://www.hindawi.com Volume 2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Algebra
Discrete Dynamics in Nature and Society
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Decision SciencesAdvances in
Discrete MathematicsJournal of
Hindawi Publishing Corporationhttp://www.hindawi.com
Volume 2014 Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014
Stochastic AnalysisInternational Journal of