[IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) -...

4
Service Portfolio Optimization Algorithm Based on Value Model and Graph Theory in SOA Zh' . Y 1 2 a H N' 1 2 b J . S 1 2 J' b Y 1 2 l-Xm ang" , ong-yun mg" , un-qmg un', Ia- ao ang' 1 Tianjin Key Laborato ofIntelligence Computing and Novel are Technolo, Tianjin Universi of Technolo, Tianjin 300394, China 2 Key Laborato of Computer Vision and System, Minist ofEducation, Tianjin Universi of Technolo, Tianjin 300394, China "[email protected], b [email protected] Abstract-Business process reengineering frequently occurs in complex service systems because of its dynamic, random and varied running characteristics. To solve the problem, we proposed a novel SOA portfolio optimization algorithm based on value model and graph theory. Firstly, in order to strengthen the QoS analytical capacity of SOA, the value model is introduced into the SOA system to describe customer's service requirements of both function and non-function aspects. Next, a directed graph of SOA services and a value dependence graph of services are provided, as well as a service portfolio optimization algorithm designed based on the graphs. Finally, the simulated data case is used to analyze and verify the methods proposed in this paper. The result shows that introducing the value model and graph algorithm into the SOA-based service system can effectively improve the quality of service portfolio. Keywords:service-oriented architecture (SOA); value model; graph theory; service poroo optimization I. INTRODUCTION The technology of SOA service portfolio can combine relatively simple atomic services via inteet to form a complex and comprehensive service in accordance with the business process in real time, thus it can flexibly provide more complete, more powerl commercial nctions. In recent years it has been a focus in research, because it provides a huge value-added space for traditional enterises. There are mainly two hot topics in this field, service portfolio technology and service portfolio management [1,2], where the former focuses on the service composition algorithm, and the latter focuses on the analysis of portfolio quality. Typical research includes the following: Sirin[3] proposed an automatic composition method of web services based on a hierarchical task network that can break user tasks down into more fine- grained atomic tasks, until the decomposed atomic task is the most simple task and can be executed by a single atomic service; RAO [4] regarded the problem of automatic service composition as a program logic synthesis analysis problem, providing a multi-agent based web services automatic composition architecture using the principle of linear logic; and Deng [5] proposed a method of automatic service composition based on backtracking tree, greatly reducing the 978-1-4673-5000-6/13/$31.00 ©2013 IEEE 64 scope and complexity of the service search to enhance the efficiency of the service portfolio. Recent research of service portfolio management is based on the QoS (Quality of Service) evaluation and focuses on service resource optimization and dynamic configuration problem [6]. With the increasing number of services on the network, the high-quality composite service to users has become an important aspect for customer satisfaction [7,8,9]. Service-oriented architecture (SOA) is a loosely coupled architecture, in which atomic services are usually in a complex distributed network environment, making it difficult to guarantee quality of service. Therefore, how to determine whether the combination of SOA services achieves customer satisfaction is an urgent problem to be solved. In this paper, we introduce a value model into SOA service system and provide a novel optimized algorithm based on graph theory, to meet the lack of evaluation and validation of SOA service quality. New method can effectively help measuring the degree of satisfaction and feasibility for composite service, improve portfolio quality, and provide usel guidance for service architecture optimization. II. DEFITION OF WEB SERVICE A. General Formal Definition of Graph-based Web Services In general, graphs can provide an intuitive way to describe the complex interactions between entities. Thus, the graph is applied to represent the relationship between services. Here, referring to the concept of dependency graph [10], a rmal definition of web services is given. Supposed W::={W],W2,""Wn } is a set of web services for a business process of a user larger request R. In W, there are some services their nctions are same or similar, however their quality is not same; some are good and some bad. Then, a directed graph G::= (V, A) is defined for the request R, where V::={VO,V),V2,... ,vn,vn+ d is the set of nodes, V),Vz, . . ',Vn are corresponding to W],W2, .. ',Wn, and Vo is the source point indicating the input parameters of R, and Vn+! is the end point indicating the ouut of R. So, I V I = n +2, n is the number of web services. Also, A is the set of edges. In graph G, a directed

Transcript of [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) -...

Page 1: [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) - Beijing, China (2013.05.23-2013.05.25)] 2013 IEEE 4th International Conference on

Service Portfolio Optimization Algorithm Based on

Value Model and Graph Theory in SOA

Zh' .

Y 1 2 a H N'

1 2 b J

. S

1 2 J' b Y

1 2 l-Xm ang" , ong-yun mg" , un-qmg un', Ia- ao ang' 1 Tianjin Key Laboratory of Intelligence Computing and Novel Software Technology,

Tianjin University of Technology, Tianjin 300394, China

2 Key Laboratory of Computer Vision and System, Ministry of Education, Tianjin University of Technology,

Tianjin 300394, China "[email protected], [email protected]

Abstract-Business process reengineering frequently occurs in

complex service systems because of its dynamic, random and

varied running characteristics. To solve the problem, we

proposed a novel SOA portfolio optimization algorithm based on

value model and graph theory. Firstly, in order to strengthen the

QoS analytical capacity of SOA, the value model is introduced into the SOA system to describe customer's service requirements

of both function and non-function aspects. Next, a directed graph

of SOA services and a value dependence graph of services are provided, as well as a service portfolio optimization algorithm

designed based on the graphs. Finally, the simulated data case is

used to analyze and verify the methods proposed in this paper.

The result shows that introducing the value model and graph

algorithm into the SOA-based service system can effectively

improve the quality of service portfolio.

Keywords:service-oriented architecture (SOA); value model; graph theory; service port/olio optimization

I. INTRODUCTION

The technology of SOA service portfolio can combine relatively simple atomic services via internet to form a complex and comprehensive service in accordance with the business process in real time, thus it can flexibly provide more complete, more powerful commercial functions. In recent years it has been a focus in research, because it provides a huge value-added space for traditional enterprises. There are mainly two hot topics in this field, service portfolio technology and service portfolio management [1,2], where the former focuses on the service composition algorithm, and the latter focuses on the analysis of portfolio quality. Typical research includes the following: Sirin[3] proposed an automatic composition method of web services based on a hierarchical task network that can break user tasks down into more fine­grained atomic tasks, until the decomposed atomic task is the most simple task and can be executed by a single atomic service; RAO [4] regarded the problem of automatic service composition as a program logic synthesis analysis problem, providing a multi-agent based web services automatic composition architecture using the principle of linear logic; and Deng [5] proposed a method of automatic service composition based on backtracking tree, greatly reducing the

978-1-4673-5000-6/13/$31.00 ©2013 IEEE

64

scope and complexity of the service search to enhance the efficiency of the service portfolio.

Recent research of service portfolio management is based on the QoS (Quality of Service) evaluation and focuses on service resource optimization and dynamic configuration problem [6]. With the increasing number of services on the network, the high-quality composite service to users has become an important aspect for customer satisfaction [7,8,9]. Service-oriented architecture (SOA) is a loosely coupled architecture, in which atomic services are usually in a complex distributed network environment, making it difficult to guarantee quality of service. Therefore, how to determine whether the combination of SOA services achieves customer satisfaction is an urgent problem to be solved. In this paper, we introduce a value model into SOA service system and provide a novel optimized algorithm based on graph theory, to meet the lack of evaluation and validation of SOA service quality. New method can effectively help measuring the degree of satisfaction and feasibility for composite service, improve portfolio quality, and provide useful guidance for service architecture optimization.

II. DEFINITION OF WEB SERVICE

A. General Formal Definition of Graph-based Web Services

In general, graphs can provide an intuitive way to describe the complex interactions between entities. Thus, the graph is applied to represent the relationship between services. Here, referring to the concept of dependency graph [10], a formal definition of web services is given.

Supposed W::={W],W2,""Wn} is a set of web services for a business process of a user larger request R. In W, there are some services their functions are same or similar, however their quality is not same; some are good and some bad. Then, a directed graph G::= (V, A) is defined for the request R, where V::={VO,V),V2, ... ,vn,vn+d is the set of nodes, V),Vz, .. ',Vn are corresponding to W],W2, .. ',Wn, and Vo is the source point indicating the input parameters of R, and Vn+! is the end point indicating the output of R. So, I V I = n +2, n is the number of web services. Also, A is the set of edges. In graph G, a directed

Page 2: [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) - Beijing, China (2013.05.23-2013.05.25)] 2013 IEEE 4th International Conference on

edge from Vi to Vj exists, if and only if Wi is the prerequisite for Wj, where i, j = 0,1, . . . , n+l, and edges from Vo direct those service nodes in submitting requests, edges to Vn+1 are from those service nodes for feeding back final results. Evidently, user's request R can be realized by a group of services, if and only if a path from Vo to Vn+1 exists. When there exists more than one path, the high-quality service portfolio must exist in a proper path.

B. Further Definition o{Web Services based on Value-cost Function

Using web service portfolio technology, some new integrated services composed by many atomic services will be established automatically according to the user's request. However, a lot of web services in UDDI centre may perform the same function, but with different non-functional properties that will provide different QoS. Generally, there are five commonly non-functional attributes: price, duration, reliability, availability and reputation. Here, they are extended to more attributes, including response time, timeliness, information accuracy, information integrity, confidentiality, cost of capital and time cost. These attributes express the price to pay in service portfolio, which can be used as service quality evaluation parameters.

Supposing ValueCost ::= Func (Response-time, Timeliness, Information-accuracy, Information-integrity, Confidentiality, Cost-of-capital, Time-cost.) is the value-cost function; usually the smaller the cost of service, the higher the quality of service. In the following definition of web services, the function is used as the edge weight of the corresponding service cost.

Based on the definition of graph-based web services, the edge weight from Vi to Vj is defined as the value-cost function, representing the contribution of node Vi for realizing the service of vi" For example, assume that the web service W2 relies on the service WI, the service W4 relies on WI, the service W4 also relies on the service W3, and WI and W3 have the same function for W4, ell. e14, e34 are weights of the corresponding edges. Then it can be graphically represented in Figure 1. Since WI and W3 have the same effect for W4, WI or W3 will be chosen by their value cost when W4 is executed.

VI �� ____ e�I�2 ________ � V2

Figure 1. An example of graphical web services

III. SERVICE PORTFOLIO OPTIMIZATION ALGORITHM

BASED ON VALUE MODEL AND GRAPH THEORY

Firstly, a SOA system consists of a set of services, and its global function corresponds to a target expectation of customer, called the global value. Next, SOA services can be divided into several smaller parts, which are used to realize the local values of the customer expectation. Therefore, by decomposition of the global target value based on business process, we built a SOA tiered service model, called SOA value model.

65

Supposing Val::= (Vid, Vname, Vlevel, Vnum, FPoint, FSPoint, RBPoint, Vcarrier, Vreceiver) is the value expression, used for recording values in SOA value model, where Vid is the unique identifier for global value or local value; Vname is the name of the value described in service requirements; Vlevel indicates the level of value in the model; Vnum is the number of value; FPoint points to the higher level value; FSPoint points to the first value in lower level; RBPoint points to the first right value in same level; V carrier is the provider of value and it is another business service; Vreceiver is the beneficiary of value and it is another business service.

Figure 2 shows an example of the hierarchical decomposition of business processes and services. For the user's request, SOA value model firstly maps a collection of all those participating services to a coarse-grained service, which is denoted as GVl. called global request. Then the coarse-grained service is decomposed into several fine-grained services in accordance with business process, and the local values are built. Thus, global demand GVI is decomposed into several local requests, denoted as LV2 and LV3. Furthermore, if the particle size is relatively large, further decomposition will occur. In Figure 2, GVI is decomposed into LV2 and LV3, and then LV 3 is broken down into LV 4 and LV 5.

Figure 2. The hierarchal decomposition of business processes and services

Evidently, customer's request is finally completed by some underlying service tasks, which consist of atomic services and have corresponding sub-graph in the service directed graph. In sub-graph there is a path from the sub-request to the sub-goal to meet the local value needs. Therefore, based on the directed graph of web services, we can use path reach ability to judge the local value achievability, while taking advantage of combinatorial dependencies between local values to group SOA services into a hierarchy. Using the SOA value model, the algorithm of service portfolio optimization is designed as follows:

Page 3: [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) - Beijing, China (2013.05.23-2013.05.25)] 2013 IEEE 4th International Conference on

Step 1. For any request R of users, the global value of R, denoted as GV I, is mapped to a directed graph of coarse­grained service including all participating services. Suppose G1::=(V1) is the original directed graph, where V1::={vo, so, vd, Vo is the requesting service, Vt is the target service, So is the coarse-grained service corresponding to the original service graph.

Step 2. In SOA value model, the lowest level of service tasks are selected, such as LV z, LV 4 and LV 5 in the example of Figure 2. According to their value expression, their carrier and receiver are found.

Step 3. For each service tasks, the sub-graph is established from G1 according to their carrier and receiver. Referring to graph theory, in this paper, we get the sub-graph by calculating the intersection between backward connected components of carrier node and forward connected components of receiver node, since in sub-graph, the carrier service is the source node and the receiver service is the ending node.

Step 4. In sub-graph, whether there is a path from the carrier node to the receiver node is judged; if there is, the value of service task can be achieved, otherwise it is unattainable. If the task is achievable, the shortest path will be found as the optimal service path.

Step 5. The above steps 3-4 are repeated for all the lowest service tasks. In the example of Figure 2, for the selected service tasks LV z, LV 4, LV 5, the above steps 2-4 are repeated.

Step 6. Once the lowest level of service tasks LV 2, LV 4, LV5 are achievable, the global value GV1 is achieved; otherwise, GV1 is not satisfied to the global value. Since all low-level service tasks of GV1 select minimum cost path, the quality of local services are effectively improved, so that the global value of quality is assured.

IV. RESULTS AND DISCUSSION

Global value based service portfolio can help a system find better solutions to meet customer satisfaction. To test the algorithm, some simulation experiments have been conducted in the laboratory. The process is as follows:

Step 1. Suppose VI::={ rt. tim. ia. ic. conf. mc. tc } is the collection of the price indicators. They are response-time, timeliness, information-accuracy, information-integrity, confidentiality, cost-of-capital, and time-cost.

Step 2. Suppose A::={Act), Actz, . . . , Actm} is the collection of actions of all atom services related to price indicators. Data of indicators for each action are generated by simulation. These data are provided by service providers or calculated by past data automatically. Here, suppose Act.rt:'( 0.3(hours), Acttim ? 95%, Act.ia ? 95%, Act.ic ? 95%, Act.conf?95%, Act.mc:,(20(million), Acttc:'( O.1(hours).

Step 3. Define formulas for each indicator of global value [S]. Supposed ValueCost;::=( rt(sD, tim(sD, ia(sD, ic(sD, conf(sD, mc(si+I), tc(sD),

where, rt(si+I)=rt(sD+rt(Acti+I), tim(si+I)=tim(sD*tim(Acti+I),

66

ia(si+I)=ia(s;)*ia(Acti+I)' ic(si+I)=ic(s;)* ic(Acti+I)' conf(si+I)_ =conf(si)*conf(Act;+I),

mc( Si+ I)=mc( sD+mc(Acti+ I), tc( Si+ 1)=tC( sD+ tc( Acti+l).

Step 4. Input simulation data into the pre-designed business process, and run the program with simulation data and formulas to get result of GV I.

Table 1. Expectation and result of value indicators

VI Expectation result rt Basic( {GV1 } ,(rt,:'(,2 hours) :'( 1.2 hours

tim Basic( {GV1 } ,(tim,?,SO%)) ?Sl% Ia Basic( {GV1 } ,(ia,?,SO%)) ?Sl% IC Basic( {GV1 } ,(ic,?,SO%)) ?S4%

conf Basic( {GV1 } ,(conf,? ,SO%); ?S2% mc Basic( {GV1} ,(mc, :'(,$SO)) :'($60 tc Basic({GV1} ,(tc,:'(,1 hours)) :'(0.6 hours

The simulation result shows that response-time, timeliness, information-accuracy, information-integrity, confidentiality, cost-of-capital, and time-cost meet the constraints of customer expectations of global target value indicators.

V. CONCLUSIONS AND FUTURE WORK

SOA technology can effectively solve the problem of system renewal cost. SOA value model can compensate for the lack of service quality management to support customer's value expectation. In this paper, we consider the service performance including functional attributes and non-functional attributes in web service discovery and composition, improving service quality to meet global value of customer's request. Compared with other methods, service portfolio optimization algorithm based on value model and graph theory can produce integrated service with better QoS. Our next work, on the one hand, is to study automatic data-gathering techniques of value indicators, and on the other hand, to build a common method to realize the business process decomposition.

REFERENCES

[I] Liu, D.M., Shao, Z.Q., Yu, C.z.: Optimizing Web Service Selection Driven by User's QoS Expectation. Journal of East China University of Science and Technology. 35(3), 416-421 (2009)

[2] Zeng. L.Z .. Benatalliah, B.: QoS-aware Middleware for Web Services Composition. IEEE Trans on Software Engineering. 30(5), 311-327 (2004)

[3] 3Sirin. E., Parsia. B .. Wu, D .. et al.: HTN Planning for Web Service Composition Using SHOP2. Journal of Web Semantics. 1(4), 377-396 (2004)

[4] Rao, J.: Semantic Web Service Composition via Logic-based Program Synthesis. Trondheim: Norwegian University of Science and Technology(2004)

[5] Deng, S.G., Wu, J., Li, Y., etc.: Autmatic Web Service Composition Based on Backward Tree. Journal of Software. 18(8), 1896-1910 (2007)

[6] Abramowicz, W., Haniewicz, K: E-marketplace for Semantic Web Services. Berlin: Springer-Verlag. 271-285 (2008)

[7] Chen, Z.Y., Wang H.Y.,: An Approach to Optimal Web Service Composition based on QoS and User Preferences. Proc. of International

Page 4: [IEEE 2013 IEEE 4th International Conference on Software Engineering and Service Science (ICSESS) - Beijing, China (2013.05.23-2013.05.25)] 2013 IEEE 4th International Conference on

Joint Conference on Artificial Intelligence, pp. 96-101. IEEE Press, Hainan Island (2009)

[8] Yang, J. B., Ning, H.Y., Sun, J.Q.: Modeling and Analysis of Procurement Logistics System based on the Value Model and SOA. Systems Engineering- Theory & Practice. 31 (2), 19-27 (20 I I)

[9] Wang, Z.J., Xu, X.F.: Multi-level Grahical Service Value Modeling Method. Computer Integrated Manufactureing Systems. 15 (12), 2319-2327 (2009)

[10] Song, L., Ma, J., Liu, Y.q., Liu, G.: A Graph-based Approach to Web Service Composition. Computer Science. 33(lOA),196-199 (2006)

67