Research Article
Enhancing Satisfaction of Actors Requirements in Web Service Composition: A Guided Negotiation Based Approach
Department of Computer Science, College of Science, Sultan Qaboos University, P.O. Box 36, Al-Khoudh 123, Muscat, Oman
With the emergence of Web Services technology, people and organizations are increasingly turning to SOA to design and build their applications. The SOA promises to enable rich, flexible and dynamic interoperation of loosely coupled web services (Papazoglou and van den Heuvel, 2007).
The necessity to combine the functionality of several web services known as web services composition is one of the main current research topics in SOA field (Gong and Janssen, 2012). Some of works focus on the web services composition as a means of satisfying the requirements of different parties, whereas others focus on the development of standards and formalisms for composition. Composition formalism can be executable or conceptual. Executable formalisms are languages such as Business Process Execution Language (BPEL). Although, these formalisms describe coordination and collaboration between services, they are essentially technical, developer-oriented and incomprehensible by users. To address this problem, conceptual formalisms based on goal-oriented models are proposed by the requirement engineering community (Liaskos et al., 2011).
Satisfaction is an active research topic in the marketing literature which uses behavioral theories to study the customer satisfaction (Kotler and Armstrong, 2013). In the Goal Oriented Requirement Engineering (GORE) works, satisfaction refers to Hardgoal and Softgoal satisfaction. Hardgoals are goals where satisfaction can be established by using (formal) verification techniques whereas softgoals cannot be satisfied in a clear-cut sense but only satisfied when thresholds of some precise criteria are reached (Oster et al., 2012).
Currently in the SOA context, satisfaction is addressed at two perspectives. The first perspective is concerned with the user request satisfaction and is ensured thanks to the variability concept, whereas the second perspective is related to provider and consumer relationship through Service Level Agreement (SLA) (Yan et al., 2007).
Variability is the capacity of a system or an artefact to be changed, customized or configured in a particular use context (Bennasri and Souveyet, 2004). Currently, in the web service composition literature, the need of accommodating a Business Process (BP) relies on business rules and late modelling techniques for changing BPs. However, these approaches are usually quite low-level and the possible configurations are not explicitly evaluated with respect to business goals and priorities (Ardagna and Pernici, 2007; Oster et al., 2012). To alleviate these problems, new models of high variability web services and BP are proposed such as those described by Nurcan et al. (2005) and Driss et al. (2010).
Active research on SLA management mainly focuses on developing standards for specification and negotiation of SLA. Unfortunately, these standards have several problems. First, they are only carried out in the context of single service offering and the composition process is not addressed (Khadka and Sapkota, 2010). Second, the subject of a SLA is mainly restricted to Quality of Service (QoS) constraints. The QoS are low-level aspects and do not deal with user intentions and business goals. Finally, negotiation is commonly limited to an exchange and acceptance or refusal of contract templates and no decision making support is proposed (Paurobally et al., 2007).
To overcome these problems, the present study fits into approaches that create service compositions based on goal-oriented requirements engineering principles. However, most of these approaches do not care about the actors satisfaction during the composition process. Thus, the main contribution in this study is summarized as follows:
• | A goal-oriented requirements modeling was proposed to enhance actors satisfaction to deal with goal-oriented composition |
• | A new negotiation-based approach was proposed. This approach offer a broker that allows user to interact during the composition process and we propose a negotiation based approach for enhancing the satisfaction of parties involved in the composition process |
STATE OF ART
The present proposal is based on the satisfaction of different actors implied in dynamic web service composition. In particular, variability arisen during early process modeling phases is a mean of accommodating systems to changing business priorities and varying client preferences in order to satisfy all actors.
An actor satisfaction is measured by the fulfilment of his goals by the composition alternatives. In the SOA context, actors may have antagonist interests and may not be satisfied with the same aspects. Negotiation is then adopted to solve undesired conflicts.
These concepts are integrated into an approach through which the gap between variability and satisfaction is bridged. We first introduce these concepts in more detail, before presenting the present proposed approach.
Actors: Different relevant type of actors related to web service composition process were identified in the literature (Feenstra et al., 2007). Basically, two actors namely provider and requester were considered. The provider publishes the service whereas the requester uses the service. Given that the actors are associated with the dynamic web service composition process, the actors roles were expanded and often are called stakeholders in order to emphasize the fact that they can affect or be affected by the actions undertaken during this composition process.
Three stakeholders were considered here: Service Provider, who publishes basic services; Composite Services Provider, who has the capability to describe different manners how to create composite services and End-user who is implied during the dynamic composition process.
Variability: Variability is defined as the capacity of a system or an artifact to be changed, custom or configured in a particular use context (Kang et al., 2002). Variability can concern functional or non-functional aspects. In web service context, functional variability deals with the capabilities offered by the service whereas non-functional aspects concern different service quality dimensions.
Currently, in the web service composition literature, the need of accommodating a business process relays on business rules and late modeling techniques for changing BPs. However, these approaches are usually quite low-level and the possible configurations are not explicitly evaluated with respect to business goals and priorities (Bennasri and Souveyet, 2004).
These limits arisen, the need of modeling and eliciting variability in intentional terms. Many goal-oriented formalisms are used to explore and analyze the variability.
For instance, the I* framework (Lapouchnian et al., 2007) provides a goal and agent-oriented approach for exploring possible alternatives for creating new or improving existing business or information system situations.
Rolland et al. (1998) proposed a formalism that allows representing a process model, expressed in intentional terms, called MAP. This formalism provides a representation mechanism based on a non-deterministic ordering of goals to be accomplished (intentions) and the different alternative ways for achieving them (strategies).
Applying those models in the web service field attracted many researchers who proposed different approaches such as exploring web services from a business value perspective (Nurcan et al., 2005), aligning web services with business strategy (Bleistein et al., 2006) and different others approaches related to web service modelling, discovery, selection and composition (Driss et al., 2010; Halima et al., 2012).
The previously published study (Driss et al., 2010), presented a new concept of service called intentional service that abstracts technical description of a service and stresses on the goal that the service can achieve. An Intentional Service Model (IMS) for describing intentional services is proposed within this study. The IMS model is deduced from the process model described with map and present a high variability composite service.
Satisfaction: To deal with actors satisfaction in an SOA context, four facets must be addressed: the actors, the satisfaction type, its time and functions.
Although, SOA paradigm has introduced new actors and roles such as web service composition brokers and web service intermediary providers (Tang and Cheng, 2005), almost existing approaches still address only a requesters and providers. Cheng et al. (2006), the authors compare three application service strategies for providing Web services with complementary functionalities. These strategies are Independent Service Vendors (ISVs) providing single services, Joint Venture (JV) providing composite services and Strategic Alliance (SA) providing both services. Providing composite web service is a promising strategy and more interest should be accorded.
Obviously, current approaches address only the end-user satisfaction by adapting composition process to the end-user context, the used canal or the end-user requirements (Kaabi et al., 2004). In this sense, satisfaction functions are simply constraints, utility functions or end-user preferences that are considered when discovering process alternatives or selecting candidate services.
In the Requirement Engineering works, in the other hand, satisfaction is related to goal satisfaction. This research area is concerned with the identification of the goals to be achieved by the system to-be, the operationalization of such goals into specifications of services and constraints and the assignment of responsibilities for such services and constraints among human, physical and software components forming the system agents (Letier and van Lamsweerde, 2004).
In GORE, the goals are used in different levels of abstraction, from the strategic goals of high-level technical goals to low-level (Letier and van Lamsweerde, 2004). According to Jureta et al. (2007) there are two taxonomies of goals. The first taxonomy distinguishes between functional and non-functional goals while the second divides goals into Hard and Soft. Functional goals are used for specifying what the service is expected to deliver whereas nonfunctional goals refer to quality requirements that the software needs to satisfy while delivering the services.
Hard goals are goals which satisfaction can be established using (formal) verification techniques while softgoals cannot be satisfied in a clear-cut sense but only satisfied when thresholds of some precise criteria are reached (Oster et al., 2012).
Negotiation: Negotiation is an approach used to settle a conflict. Conflicts are negative undesired interactions. In a web service context, causes of conflicts can be goal conflict, resource contention, deployment and ownership, violation of assumptions, inadequate interface, policy conflict and concurrency (Weiss et al., 2007). Although, other different methods are proposed to resolve conflicts such as competition, arbitration, coercion and education, we only focus on negotiation as it is a widely used approach in the classic marketplace context.
Each negotiation situation is characterized by a set of component. Mathieu and Verrons (2004) proposed, three components: Negotiation objects, negotiation actors and negotiation language acts. Munier et al. (2000) proposed, a more complete model. It covered negotiators (N), decision base (B), language acts (A), negotiation protocol (P), tactics (T) and negotiation effects (E). The negotiation model is the set (N, B, A, P, T, E).
In the negotiation literature, many types of negotiation are cited. According to Weiss et al. (2007), the authors classify different negotiation types from a basic form where negotiation is reduced to a take it or leave it offer to a more complete negotiation form using the argumentation skills.
Between these levels, the voting systems, auctions, Contract Net Protocol, mutli-attribute negotiation, multi-level negotiation and combined negotiation were found.
Negotiation was adopted in some web service composition approaches but it was generally reduced to an agent-oriented negotiation using agents skills and protocols and context dependant decision functions. To compute their decision, agents use utility functions which lack of explicit relation with satisfactions factors.
A considerable number of research efforts on Service Based Application (SBAs) modelling are conducted both in industry and academia. Indeed, these initiatives aimed to propose languages (e.g., BPEL4WS (Pistore et al., 2005) and OWL-S (Martin et al., 2004) and formalisms (Petri nets) (Hamadi and Benatallah, 2003) for modelling SBAs.
Fig. 1: | Business goals for purchasing a book |
All these initiatives adopt a function-driven service modelling focusing on low level technical statements (e.g., coordination messages, input/output parameters and bindings) that are understandable by software programmers but far to be comprehensible by end-users. However, end-users need to interact with service providers to obtain SBAs satisfying their requirements. Thus, SBAs must be modelled in terms of business goals and not in terms of technical statements. Hence, a Requirement-driven approach was adopted that allows a high level modelling of SBAs (Driss et al., 2010; Halima et al., 2012).
The methodology follows three steps: (1) Modelling services in business term, (2) Modelling the Service in intentional term, (3) A negotiation-based approach to support the composition.
Modelling services in business term by MAP formalism: The MAP meta-model was adopted to represent business goals. There are two main reasons for using the MAP formalism: first, the MAP was already applied to service modelling domain (Kaabi et al., 2004), previous knowledge and experiences can be used. Second, the MAP permits to capture variability by focusing on the strategy to achieve an intention and the potential alternatives to accomplish the same intention. This explicit representation of variability offered by MAPs is missing in other requirement engineering formalisms such as TROPOS or KAOS (Nurcan et al., 2005).
A MAP is a meta-process formalism which allows designing several processes (Rolland et al., 1998). A MAP is a labelled directed graph with intentions as nodes and strategies as edges between intentions. A strategy is a manner to achieve an intention. An intention is a requirement that can be achieved by following different strategies. Each MAP has two distinct intentions Start and Stop to respectively begin and end the navigation in the MAP.
Figure 1 represents business goals for purchasing a book with the MAP formalism. The e-books application MAP has four key intentions to be achieved, namely Search a book, Acquire a book, Organize the shipment and Finalize the buy. To achieve the Search a book intention, users can follow the By manual search strategy or the By formulating a request strategy.
A MAP is composed of one or more sections. A section is a triplet <Source Intention Ii, Target Intention Ij, Strategy Sij> that captures a specific manner to achieve the target intention Ij starting from the source intention Ii with the strategy Sij.
Fig. 2: | Refinement of a section of the MAP |
For instance, <Start, Search a book, by formulating a request> represents a way to achieve the target intention Search a book from the source intention Start following the By formulating a request strategy.
There exist four relationships between sections: bundle, multi-thread, path and multi-path relationships (Driss et al., 2010).
Bundle relationship: Sections in a bundle are mutually exclusive; exactly one strategy can be used to realize the target intention. In Fig. 1, By formulating a request is a bundle consisting of three different strategies: By ISBN, By author(s) and finally By editor.
Multi-thread relationship: a target intention can be achieved from a source intention in many different ways. Each of these ways is expressed as a section in the MAP. One or more of these sections can be used to realize the target intention. For example, By formulating a request and By manual search are two different strategies to Search a book. These two strategies are in a multi-thread relationship.
Path relationship: This establishes a precedence/succession relationship between sections. For example, the sections <Start, Search a book, By formulating a request> and <Search a book, Acquire a book, By purchase> constitute a path.
Multi-path relationship: Given the three previous strategies, a target intention can be achieved by combining several sections. For instance, there are two distinct paths to achieve the intention Finalize the buy from Start. The first is the path via Search a book, acquire a book and organize the shipping intentions. The second is the path via only the Search a book and the Acquire a book intentions.
In general, a MAP from its Start to its Stop intention is a multi-path and may contain multi-threads. Finally, it is possible to refine a section of a MAP into another one. Refinement is an abstraction mechanism by which a complex assembly of sections at level i+1 is viewed as a unique section at level i. Figure 2 shows the refinement of the section <Finalize the buy, Stop, By payment> as a MAP. This MAP is composed of two key intentions Sign in and Finish the payment and it provides several strategies to achieve each of them.
Fig. 3: | Intentional Service Model (ISM) |
Modelling the service in intentional term: Intentional services are services presented by MAPs. Intentional services allow the achievement of users requirements represented as intentions using the MAP formalism. Intentional services are specified by the Intentional Service Model (ISM). Figure 3 presents the ISM meta-model using UML notations (Driss et al., 2010; Halima et al., 2012). As shown in Fig. 3, the ISM describes intentional services through four main aspects: The intentional service interface, behaviour, composition and soft goal:
• | Intentional service interface: There are two elements that constitute interface, namely Intention and Situation (Initial or Final). The key idea of the ISM is that an intentional service allows the achievement of an intention given an initial situation and terminating with a final situation. The intention replaces the functionalities that can be achieved by the service. The achievement of an intention will ultimately lead to a state that is expected to be reached or to be maintained. The initial situation and the final situation represent, respectively the input and output parameters of the intentional service |
• | Service behaviour: Pre-condition and post-condition describe the service behaviour aspect. Pre-condition and post-condition are respectively the initial and final state, i.e., the state requiring the achievement of the intention and the state resulting from its achievement |
• | Intentional service composition: Atomic and aggregate services are involved in the service composition aspect. An atomic service has an operationalized intention that can be achieved directly by an atomic operational service. An aggregate service has a high level intention that should be decomposed till atomic operational services are identified. Aggregation of services can result either by composite or variant services. Composite services express the precedence/succession relationship between intentional services. Three types of composition can be distinguished: Sequential, Parallel and Iterative. Variant services describe variability needed for SBAs. There are three variants in the ISM, namely Alternative, Choice and Multi-path |
• | Intentional service softgoal: There are two elements specifying soft goal of intentional services, namely sub goal and NFR. A soft goal is high level goal that should be decomposed till NFRs are identified |
Support the composition by a negotiation-based approach: The proposed approach supports high level goal-driven configuration of BP. In the BP model, atomic services are mapped to web service communities, hence giving more flexibility to the web service selection step. According to choices made at the conceptual level, the BP is configured at runtime through a negotiation process. This approach is based on an interactive broker supporting web service composition, satisfaction evaluation and negotiation.
The negotiation process is based on a meta-strategy which supports the decision-making process by guiding every negotiator to choose the appropriate decision. The decision function of the meta-strategy is based on the satisfaction degrees.
This section details the approach of the composition process. First, a motivating sample was introduced. Then, the architecture of the broker was described and explained how the end-user interact during the composition followed by the models to capture actors satisfaction. Finally, the negotiation process was described.
Motivation sample: The motivation sample is taken from the e-Book application which is presented in Fig. 4. A part of the ISM related to users requirement of an e-Book store application is presented in Fig. 4. The e-Book store application is composed of the following intentions: Search a book, acquire a book, organize the shipment and finalize the buy. We especially focus on variability when achieving a user intention. For instance, acquire a book can be performed with or without organizing shipment. To buy a book, user has the choice between organizing shipment and selecting the nearest seller store.
Sometimes, requester and provider may not have the same preference because they have different goals.
Fig. 4: | e-Books store sample |
Fig. 5: | Brokers architecture |
For instance to acquire a book, the service consumer may prefer by selecting the nearest seller manner because it lets him personalize his buying but this service variant may not suit the provider who prefers to organize a shipment. In such a case, a choice cannot be systematically done. Detecting conflict between customer and provider is based on their satisfaction factors.
Architecture: The architecture of the broker is illustrated in Fig. 5. It contains databases for storing BPs, users data and negotiation historic and web services communities. As proposed in several web service negotiation brokers (Issarny et al., 2011), the assumption behind this approach is that web service providers feed the broker with required information and let it negotiate on their behalf. In the present case, two provider types can use the broker: Virtual organizations, i.e., composite service providers and single web service providers that publish their services in the broker. In this study, focus is put in negotiation with composite web services providers.
To use the broker, such provider connects and supplies a high-variability intentional service. Service model and related data are stored in the broker databases. Provider also expresses his satisfaction requirements in terms of wished satisfaction degree and customizes his negotiation behaviour.
When a user is connected, he interact at run-time during the composition process and the system responses with a list of possible providers. Once the user makes a choice, the corresponding BP is loaded and a high-variability executable BP is generated and deployed in the orchestration engine.
As shown in Fig. 5, the composition process is an iterative process. At each iteration, the BP model is explored to discover candidate composition strategies, select services and execute them. Unlike classical approaches that choose the best alternative according to the user profile or preferences, the variant that satisfies both service requester and provider is picked. If any conflict is detected and cannot be ignored, a negotiation process is launched. To detect conflicts, actors goals are elicited in an approach similar to the WinWin approach (Kazman et al., 2005) that starts by eliciting the win conditions. Win conditions are factors that satisfy an actor. For this reason, a more complete satisfaction model was introduced for both web service consumer and provider. Since, provider preferences are stocked in the broker databases and requester preferences are unknown, the broker starts by selecting alternatives according to the provider strategy and then proposes them to the user. The system invites user to evaluate his satisfaction with the proposition. If he feels unsatisfied, he can launch negotiation. Once a service is executed, each user satisfaction is assessed on the basis of stored information and/or direct judgments for the service requester.
Expression of users interaction: In the present approach, during the composition process the user interact continuously to adapt the composition to its expectations. We consider two types of interactions: Before the composition and during the composition. Before the composition, the user expresses its target goals. During the process, the user expresses his feedbacks and/or some corrections actions.
Goals in the present approach are divided into two categories: Functional and non-functional (Driss et al., 2010; Halima et al., 2012). The functional goal expresses what the user needs to achieve by executing a service. Non-functional goals are considered as values given to possible and available characteristics related to the service.
Functional goals: These are expressed in the terms of a meta-model defined in a previously published paper (Driss et al., 2010). Briefly, a goal is represented upon a verbal sentence by using the following syntax: Verb <Target> [<parameter>]*, where Target is a verb complement which can be object or result and parameters are complementary information related to the goal (i.e., source, beneficiary, destination, means, manner, place, time, quantity, quality, reference).
For example, if the user needs a service offering possibility of searching and buying books, he would express: (buy) verb (a book)target. So, buy a book is a functional goal of the user. Search a book is also a functional goal. But if we consider that searching a book is a part of a complex process called buy a precise book then this goal can be reached by different strategies.
Non-functional goals: These are presented with a list of values requested by the user for each chosen characteristic. For example, if the user requires exploitation cost that does not exceed certain amount means that the maximal value of the characteristic cost will be that amount. The user is satisfied when the characteristic is obtained with the precise values at precise time.
The non-functional goals, noted NFR, are a set of tuples where each element is a value of SATLEVEL, CHARAC, OPERATOR, VALUE, where:
• | SATLEVEL is the satisfaction level that can be satisfied, not satisfied, or partially satisfied. More generally, NFR is a rate that means the satisfaction level of the user |
• | CHARAC is the considered characteristic related to operational service, infrastructure or network. It can be cost, reliability, etc |
• | OPERATOR is a conditional operator used to compare a characteristic to a value. Operators can be>, =, etc. |
• | VALUE is a value of a characteristic. For qualitative requirements, VALUE is a string whereas it is a numeric for quantitative requirements |
In the following, an example of quantitative non-functional requirement is given:
NFR = {(100% SATISFIED, COST, <, 10), (70% SATISFIED, COST, >, 10),
(60% SATISFIED, COST, <, 20), (0 % SATISFIED, COST, >, 20)}
This example states that the user is satisfied when the cost is less than 10. The user is partially satisfied when the cost is between 10 and 20 and not satisfied when the cost is greater than 20.
The following example is a qualitative non-functional requirement:
NFR = {(100% SATISFIED, RELIABILITY, =, HIGHT),
(0% SATISFIED, RELIABILITY, =, LOW)}
This later example means that the user is satisfied when the reliability is in a HIGH. The user is not satisfied when the reliability is LOW.
Satisfaction models: The present approach support actors satisfaction all over the composition process. We elicit actors satisfaction at an early phase through softgoals that are imprecise, subjective, idealistic and context-specific goals (Jureta et al., 2007). Taking into account an actor satisfaction all over the composition process is motivated by the influence of past and current experience on the future perceptions. This idea is clearly expressed in the marketing research area that distinguishes between transaction-specific satisfaction and cumulative satisfaction (Shou et al., 2007). While transaction-specific satisfaction may provide specific diagnostic information about a particular service encounter, cumulative satisfaction is concerned with all of consumers previous experiences with a firm, product, or service cumulatively (Shou et al., 2007).
Taking the state-based conceptualization of satisfaction, a local satisfaction measurement was defined relative to each step of the composition process and a cumulative one relative to all the achieved steps in the process. To measure the cumulative satisfaction, we introduce the excelling concept suggested by Jureta et al. (2007). Jureta et al. (2007), authors noticed that satisfying soft goals does not cover situations in which continual improvement of thresholds is expected. They introduced the excelling notion to express this need. The concept of the satisfaction degree as a customized measure of the satisfaction was also introduced. The satisfaction degree plays the role of the negotiation decision function. All these concepts are presented in the proposed meta-model of Fig. 6.
Although, these concepts are proposed in the consumer satisfaction context, it was believed that they also reflect the buyer satisfaction. The difference between the two parties resides on the satisfaction factors. We introduce for each actor his satisfaction factors and a method to measure them.
Provider satisfaction: We suppose that the alignment and therefore the provider satisfaction are traduced in terms of benefits (Bleistein et al., 2006). Benefit is the difference between the value and the cost of a service.
Fig. 6: | Satisfaction meta-model |
According to the present approach, the provider satisfaction should be considered at different steps. For this end, we need to evaluate the benefit of functional choices (composition strategies in the ISM) and non-functional choices (concrete services among a service community). To measure a composition strategy benefit, the following technique was used:
• | A decision model for the organization is built. It consists in a goal model described with softgoals hierarchy and reflects its long term vision. The top of this hierarchy is the main goal and the lower levels are the refinement of the main goal in more concrete goals. For example, as shown in Fig. 7, the mission of e-Book store is to become the first virtual seller |
• | We enrich the goal model by numerical annotations showing the contribution of each subgoal to goals of the upper level. To rank these contributions, we use the smart method and give 1 to the weakest contribution and multiply it to more important contributions. For instance, satisfying its consumers has a high contribution to the e-Book store mission |
• | The contribution of each leaf goal to the mission is calculated by an inference rule defined as follow: If C(Oi/Oj) = x and C(Oj/Ok) = y then C(Oi/Ok) = x*y, Oi, Oj and Ok are goals |
• | To measure the contribution of a service variant to the enterprise mission, we use a method similar to that exposed on (Papadacci-Stephanopoli et al., 2006). This approach uses MAP to model BPs and evaluates the contribution of each section to the leaf goals of the goal model. This contribution is first estimated in terms of value then in terms of cost. The contribution of each section to the organization mission is then calculated |
• | Finally, the obtained values are used to calculate the cost and the value of each service by using the following rules: |
• | A section of the MAP corresponds to an atomic service and so service value and cost are directly deduced |
• | At a variation point, the maximum of the variant costs (or values) is selected to evaluate the aggregate service |
• | At a composition point, the component costs (or values) are summed |
Fig. 7: | Provider decision model |
Unlike functional strategy evaluation which is done in a static manner, measuring the benefit of a concrete service is done dynamically. The value and cost of a service are determined according to its non-functional attributes. In our current work, we consider only price and response time. In the study of Tang and Cheng (2005), authors mentioned the importance of both service requester and single service provider location to price the integrated web service provided by a web service intermediary due to the added delay cost.
The price of a web service is defined by t*x where t is the cost per unit of distance and x is the distance between the service requester and provider. In the case where the service requester is in turn another intermediary provider he will inflict an added t*y cost on his consumer where, t is the cost per unit of distance of the integrated service and y is the distance between him and his consumer. To price the integrated service, the Service Provider (SP) should take into consideration that consumers expect that buying an integrated service is cheaper than buying all its components separately. Thus, more the distance from the single service provider is short, more the SP is lucky to win benefit. To measure the provider satisfaction after executing each service, the real benefit is calculated.
Finally, to bind benefit with the satisfaction degree, the provider can clearly make assumptions such as A benefit over 10 unities satisfies me to 80%.
Requester satisfaction: In the context of Internet-based services, satisfaction factors encompass service attributes, system attributes and information quality attributes (Khalifa and Lui, 2003). Although requirement engineering has studied extensively end-user satisfaction, it doesnt focus on the process of satisfaction formation (Khalifa and Lui, 2003). In the marketing literature, on the other hand, many models are provided to describe satisfaction formation. An important framework for understanding the satisfaction formation process is the disconfirmation paradigm. According to this theory, satisfaction is determined by the discrepancy between perceived performance and cognitive standards such as expectations and desires (Kotler and Armstrong, 2013). On line with those paradigms, a model of user satisfaction was proposed based on his expectations and desires which distinguishes between two stages: before the execution time and after it. To determine the user satisfaction at the discovery and selection times, we use a technique similar to the service provider case. However, unlike service provider, the service requester has a short term vision of its goals and objectives. In this sense a decision model is associated to each discovery and selection step. For instance, a book search service satisfies the user if he makes a minimum effort and gives him pertinent results. However a good book search service is a service that allows him to customize his choices. To select a concrete service, the user may require a high security rate for a payment service and not wonder about the security rate of the search service. The decision model is also a goal model described with softgoals related to the current step.
After the service execution step, the user is asked to give a macro feedback of his impressions about the adopted service on the basis of perceived performance. He is asked to answer the following questions: To what extent the service fulfils your expectations? and To what extent the service fulfils your desires? Users responses to these questions are mainly qualitative and subjective. In such kinds of situations, fuzzy values are adequate. As proposed by Ounaies et al. (2008), response can be possibly performed by linguistic variables like: bad, poor, fair, good and excellent. A triangular fuzzy number is associated to each linguistic value. Finally, assuming that expectations and desires have the same weight for the user, the two assessments are summed and then defuzzified with the center of area method to get a non- fuzzy value expressing the user satisfaction degree.
Negotiation process: As mentioned in the description of our approach, negotiation is adopted in situations where interest conflicts are detected and cannot be ignored. The negotiation model was used in the study of Munier et al. (2000) and focus especially on negotiation strategies that are used by a negotiator to decide its negotiation behaviour and tactics as manners to realize them.
Obviously, how to effectively make a good decision in a negotiation process is critical to the success of the negotiation (Yan et al., 2007). In the decision theory literature, some models of strategy, based on game theory, heuristics and argumentation are proposed. However, most of those models are related to some specific problems and fall short from being adapted in other circumstances (Rahwan et al., 2007). The problems with those models are the lack of methodology to use them, the subjectivity of the evaluation of a negotiation situation and the difference of experience in negotiation. To alleviate the above problems, a negotiation meta-strategy was proposed. Assets of our proposal are its independence from any specific context, particular negotiator attitude and the guidance of the negotiator decision formation. Our aim is to improve the negotiation process by achieving more satisfaction degrees for the negotiators.
A negotiation meta-strategy: The motivation of the meta-strategy is to guide a negotiator to make his negotiation decision on the basis of a judgment on a negotiation situation which takes into account the actual satisfaction degree, the cumulative satisfaction value, the opponent behaviour and anything he finds important to make his decision. For instance, a negotiation situation can be qualified as bad if the satisfaction degree is in a continuous decrease; he is conceding more than his opponent or the later does not respect his commitments.
Fig. 8: | Negotiation meta-strategy |
Based on the literature review (Yan et al., 2007; Rahwan et al., 2007; Sycara, 1990; Faratin et al., 2002) we ended up with the meta-strategy illustrated in Fig. 8.
Figure 8 describes the meta-strategy using the MAP formalism. Indeed, this latter allows specifying process models in a flexible way by focusing on the process intentions and on the various ways to achieve them (Rolland and Prakash, 2000).
Making a decision in any negotiation situation may lead to one of the three following states: The negotiator may maintain the same satisfaction degree, decrease, or increase it. These three states represent negotiator intentions. To reach an intention in the MAP model, strategies are used. Three types of strategies are proposed in the negotiation literature:
• | Concession strategy: Allows negotiator to decrease, within the acceptance range, his utility function to reach an agreement. Many tactics can be used to generate concession. For instance, time dependent tactics are adapted if the time has an impact in the negotiator decision, behaviour dependent are used when a negotiator tries to imitate the opponents behaviour and resource dependent can be applied if the negotiator takes into account the existing resources |
• | Trade-off strategy: Allows a negotiator to make offers that keep his same satisfaction degree as in the previous step but expecting to be more acceptable for its opponent. A trade-off algorithm is proposed by (Faratin et al., 2002). The idea of this algorithm is to generate propositions that increase progressively some variables values |
• | Argumentation strategy: Allows negotiators to add explications or to exercise persuasion forces on opponents. Possible tactics for persuasion are threats, rewards, appeals and explications. By using different arguments, a negotiator can increase or maintain his satisfaction degree by convincing his opponent to accept his offer (Sycara, 1990) |
Fig. 9: | Intention achievement guideline |
Meta-strategy guidelines: A goal/strategy MAP contains a number or paths from Start to Stop. No path is recommended a priori. Decision is rather based on situations encountered. To make his choice, a negotiator is supported by guidelines. A guideline is a set of indications on how to achieve a goal or execute an activity. The signature of the guideline is a couple <situation, intention>. Guidelines are classified according to their size into three types: simple (executable, informal), tactic (choice, plan) and strategic. We distinguish between 3 types of directives:
• | Intention Achievement Guideline (IAG): They explain how to achieve the selected intention and specify the operationalizing mechanism of this intention. For instance, as shown in Fig. 9, the IAG1 explains how to maintain a satisfaction degree by the trade-off strategy. It is an action plan and indicates different steps of the trade-off algorithm |
• | Intention Selection Guideline (ISG): They help the progress in the MAP by indicating how to pick an intention. In Fig. 10, we present an ISG that explains how to progress from the intention maintain the satisfaction degree. A negotiator can continue with this intention if no agreement is reached and his situation is good. He can choose to concede if his situation is very good and he can generate concessions. If he finds that his situation is bad, he can choose the argumentation strategy. He stops if an agreement is reached or he decides to withdraw |
• | Strategy Selection Guideline (SSG): They allow progress in the MAP by helping the choice of a strategy among a range of available strategies. To explain the usage of the argumentation strategy, a SSG should guide the choice between different argumentation tactics. Reward tactic can be used if it is possible for the negotiator to give an offer and the cost of the offer is under his value. Threats are useful in some critic cases but should not be commonly used. Explanation tactic is appropriate when the opponent is expected to ignore the benefit of the proposed solution |
To deal with the dynamic web service composition process, we defined rules that generate in a semi-automatic manner the high variability BPEL from the ISM model. The idea of these rules is to define a pick activity for each variation point in the ISM model. Each variant is integrated in an On-Message event allowing the choice of an alternative on the run-time.
Fig. 10: | Intention selection guideline |
To supply the pick activity with the necessary information, we use the human task extension that allows feeding the orchestration process with a human decision. Other generation rules for sequence and loop are trivial in the sense that they have the same nature in ISM and BPEL.
The obtained result is an abstract BPEL that has the structure of the process but lacks for necessary information required by the execution that we complete manually. To implement the web service community concept, we used the dynamic binding mechanism that allows dynamic selection of concrete services. We used an expert system to implement our negotiation meta-strategy. We defined the generic template of the MAP and let every party customize the definition of its negotiation situation.
To validate the present approach, we experiment our tool with a small population of users. In Fig. 11, the x-axis represents composition steps, the y-axis the satisfaction degree. The solid lines inform about average of local satisfaction degrees of provider and requester populations. Cumulative satisfaction is plotted in dotted lines.
Figure 11 shows that considering cumulative satisfaction gives clearer idea about the real state of negotiators satisfaction. Even if the local satisfaction degrees seem to be distant, cumulative satisfaction degrees are quite close and converge to close values thanks to the use of our meta-strategy. Cumulative satisfaction reflects the negotiator experience and is more expressive than simple utility functions.
Service composition is a wide research area. Our focus in this area was the actors satisfaction through a composition process. The empirical results were satisfying.
Fig. 11: | Local vs. cumulative satisfaction |
In the following we discuss our findings in comparison to some related work:
• | Authors focus on selecting a provider among a set of possible providers (Esmaeilsabzali and Larson, 2005). They present a pricing strategy that helps a service provider to beat his opponent among a web service community in a reverse auction. They also provide an algorithm that allocates for each service in a composition process the most suitable supplier according to the requester constraints. Although this work considers the provider and requester perspectives, it does not deal with the process of reaching accord between them |
• | Menasce and Dubey (2007) proposed an extended QoS brokering approach that maximizes the utility function for service consumer under a cost constraint and use a provider selection algorithm. The extended broker support SLA negotiation on behalf of web services providers. The novelty of this approach is the concept of Super QoS Broker (SQB) that provides support for web service providers to locate a QoS broker offering the best QoS brokering services for a given cost. Although the described broker supports SLA negotiations, the authors have not demonstrates how the negotiation takes place |
• | In the study of Kovacs et al. (2007), authors presented a semantic web service discovery engine that uses WSML goals and provides a list of matching semantic web services and additional data for web service selection. They proposed the added value concept that allows providers to make more attraction and consumers to add preferences to their goals. The added value is considered as another factor of the user satisfaction. However, that approach does not outline the user satisfaction formation according to their goals and optional values |
• | Negotiation based semantic web service composition (Kungas and Matskin, 2005; Kumar and Mastorakis, 2010) uses combined agent based symbolic and non-symbolic negotiation for web service composition and Morge et al. (2007) proposed a modular architecture of argumentative agents to compose services. Another approach proposed by Yan et al. (2007) deals with the SLA negotiation for composite web services. All these approaches use the agents skills to negotiate and focus on QoS as satisfaction factors. The considered provider is the single web service provider and a broker is generally responsible of the composition process without addressing his position and interests |
We have presented an approach for enhancing actors satisfaction within web service composition. It is motivated by the potential conflicts of interest between different parties involved in the composition process. This latter is based in negotiation as a resolution method.
Our approach supports all composition steps and defines methods and models to assess composite web service provider and consumer satisfaction within each step. We have contributed in the definition of negotiation decision function by introducing locale and cumulative satisfaction degrees and negotiation decision making thanks to a meta-negotiation strategy.
The benefit of the present proposed approach includes the fact that actors satisfaction, especially cumulative satisfaction degree, gives an important negotiation decision function. Another asset is the negotiation meta-strategy that guides negotiators to choose the most appropriate negotiation decision and strategy to achieve it in order to reach high satisfaction degrees.
The proposed work can be further extended with different directions. One possible extension is the support of customer satisfaction. In fact, in the Internet-based services, offers are changing so rapidly introducing an important novelty element that the customers ability to define its satisfaction factors are limited. Customer can be guided to choose satisfaction elements according to his profile and past system experiences. An extension for the negotiation approach is the introduction of methods to automate situations configuration. A Case Base Reasoning technique can be used to automate this configuration. Another extension concerns the support of negotiation with providers of single web services that we have not considered here.
In addition, as we are currently defining method fragments that challenge both IT and business service engineering by considering the Welkes SOA maturity model (Welke et al., 2011), we intend to consider more complex situations caused by the high variability of these fragments.
The author gratefully acknowledges use of the services and facilities of the Sultan Qaboos University of Oman, funded by TRC project Grant TRC/SCI/COMP/15/01.