An OASIS SOA-EERP White Paper
End-to-End Resource Planning (EERP) Model and Use Case
Detailed Context and Example for SOA-EERP Technical Committee Specifications
The purpose of the OASIS SOA-EERP TC is to define standards for End-to-End Resource Planning (EERP) in a Service-Oriented Architecture context. EERP is a technology that optimizes deployment of services onto a SOA description of an application. This work is being carried out through continued refinement and the addition of interoperation protocols to Business Quality of Services (bQoS), Business Rating of Services, and Business Services Level Agreement (SLA) specifications. See the TC Charter for more information.
This white paper was produced and approved by the OASIS SOA-EERP Technical Committee as a Committee Draft and as part of Public Review Draft 01. It has not been reviewed and/or approved by the OASIS membership at-large.
Copyright © 2010 OASIS. All rights reserved.
All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Table of Contents
This document introduces Service Oriented Architecture (SOA) End-to-End Resource Planning (EERP). We discuss the motivations, then describe the conceptual framework, model, specifications, and end with a detailed example of how the Technical Committee’s work to date is used applying EERP. As of this writing, the OASIS SOA-EERP TC has approved three XML vocabulary specifications as committee drafts; those committee drafts and this white paper are part of Public Review Draft 01.
For a given service there may a number of potential suppliers. EERP optimizes deployment of services onto a SOA description of an application. Describing the required information—business characteristics of a service, the reputation of potential service providers, and business service-level agreements—enables analysis and optimization of business results in the space of possible service deployments.
The specifications can be applied to other areas. For example, bQoS might be used for describing the characteristics of energy or goods bought and sold, and the characteristics of services such as medical, shipping, and more. The reputation of a trading or business partner is useful in many contexts.
This whitepaper is coordinated with and part of the SOA-EERP Public Review 01.
As Service-Oriented Architecture (SOA) has matured as a development, deployment, and governance paradigm, the performance of SOA deployments has received increasing attention.
End-to-End Resource Planning (EERP) applies service discovery, composition, simulation, and optimization techniques in a novel way to improve business results. As the software industry has applied SOA to eBusiness deployments, self-optimizing systems as exemplified by EERP have become more feasible and more useful.
Different deployments of services onto a business process have varying business value. For example, a shipper might offer faster but more expensive service. EERP models the business process and the range of potential services, and then guides the selection and deployment of services based on the overall end-to-end business value.
Modeling the business characteristics of a service is a prerequisite for estimating the business value of the process that uses those services; likewise, the reliability of the service provided needs to be understood. Finally, establishing agreements about the business service is essential to long-term value chain improvement.
Many of these parts of EERP are useful separately. For example, descriptions of a service can be part of defining characteristics of specific services or goods bought or sold, from energy to medical services.
The following issues are not addressed in Public Review Draft 01 and are not part of the current work plan of the Technical Committee:
v The discovery, selection, assembly, and management of services supporting business processes
v Monitoring and evolution over time of both the set of services selected and of the performance of the business process itself
v Determining and implementing the types of optimization to be supported
The definition of the interoperation protocol is on the work plan of the Technical Committee; however Public Review 01 defines message content rather than message sequencing and exchanges. Examples in later sections are not intended to indicate the final work of the Technical Committee.
We define "optimization" as maximizing business value by enabling improved real-life eBusiness process and resource planning. Optimization can take place at both design time and run time. The focus of the SOA-EERP Technical Committee is on enablers for optimization and process improvement rather than on the complete EERP environment.
Enabling technology defined by the Technical Committee to date include definition of the framework for representing business service characteristics (how to represent cost, time, and cost), a means to describe the reputation of the service providers to solicit and report information, and a means to describe what we call business service-level agreement.
Services are performed by people, machines, and hardware/software applications, and represented by SOA services. The qualities of a business service are expressed by means of the Business Quality of Service (bQoS) specification. The nature of bQoS varies across industries and services.
Businesses improve their business processes in order to reduce cost, improve efficiency, and otherwise improve business results. The definition and annotation of business processes are outside the scope of the Technical Committee’s work.
Parties interested in this work would include enterprises that deploy and manage solutions that use SOA techniques and which want to develop effective business processes and improve the performance and agility of those solutions.
The EERP specifications can be applied to other areas. For example, bQoS may be applicable for definition of characteristics of energy, goods bought and sold, and services such as medical, shipping, and more. The reputation (Rating) of a trading or business partner is useful in many contexts.
Extensive applications of SOA-EERP techniques will likely be most cost-effective for long-running business processes, although SOA-EERP enabling specifications will also help in the definition, design, and deployment of SOA end-to-end business processes.
Early versions of EERP and the SOA-EERP specifications are currently deployed in industry portals in China to facilitate service selection and business process improvement, For example, www.10109555.com , which is China's largest agricultural information service platform, has used early versions of EERP.
As of this writing, Committee Draft 2 of the SOA-EERP specifications has been approved by the Technical Committee. This white paper will be edited and released with the specifications as part of Public Review 01. The specifications are:
v SOA-EERP Business Quality of Service (bQoS) [EERP-BQoS]
v SOA-EERP Business Rating of Service (Rating) [EERP-Rating]
v SOA-EERP Business Service Level Agreement (SLA) [EERP-BSLA]
These XML vocabulary specifications address the exchange of information that models the business characteristics of a service, permits assertions or queries related to the credibility of the service and its provider, and the establishment of agreements about the business service.
The SOA-EERP TC will continue the standards development process toward to its ultimate goal of standardizing protocols and message contents so users may apply EERP to guide the selection and deployment of services based on end-to-end business value.
This section describes a conceptual framework in which the current Technical Committee XML vocabulary specifications would fit. In addition to the current work in progress, the conceptual framework describes work that would facilitate service selection and business process improvement from end-to-end. See the Technical Committee charter for the scope of the work.
We include a diagram of the conceptual framework, and of messages flows with brief descriptions to demonstrate how the current specifications fit into the overall EERP architecture. We also include timeline and sequence diagrams to show how an implementation would use these specifications in an end-to-end fashion and build a continuous business process improvement loop.
Figure 1 is the conceptual framework for EERP. In this figure, the Business Quality of Service is abbreviated as bQoS, Business Rating is abbreviated as Rating, and Business Service Level Agreement is abbreviated as SLA.
Service providers provide business services. Each service provider may provide the same service but with different bQoS and Ratings. Services may be running on different platforms with different implementations, but they all support EERP exchanges of bQoS, Rating, and SLA information in the XML formats defined by the Technical Committee.
The EERP Portal accepts the request from the Service requester, performs bQoS and rating queries, calculates optimal solution(s), and then returns the result to the service requester.
The Rating Provider, such as a third party rating organization, given a reference to a particular business service and provider, issues either a number or a classification description.
We show the message exchanges graphically then in tabular form. Public Review Draft 01 (PR01) describes the XML vocabulary for the content of the message inside a SOAP or REST request/response. For example, an EERP system might have the following messages exchange flow as shown in Figure 1 below.
Figure 1 -- EERP Conceptual Framework
Information exchanged in messages 2 through 9 is defined by Public Review Draft 01 versions of the specifications. The results of these requests are used to calculate the optimal deployment for a given set of services requests.
A list of alternatives might be returned in message 10. Each step in the process would have a service provider determined for each service and for each alternative.
Messages 11 and 12 are exchanged between the service requester and the selected service providers to define the business SLA.
The service requester wants to search for the optimal end-to-end solution for a given set of services. The following sequence of messages would work. Note that the Technical Committee has not defined the messages in steps 1, 10, 11, and 12.
Service Requester sends EERP Request message to EERP Portal
EERP Portal sends bQoS Request messages to all Service Providers to query the business quality of services
bQoS Response Message
Service Providers send bQoS Responses back to EERP Portal
EERP Portal sends Rating Request message to all Service Providers to query the credentials of the Provider
Rating Response Message
Service Providers send Rating Response message back to EERP Portal
EERP Portal sends Rating Request message to third party Rating organization to query the rating for the given Provider
Rating Response Message
Third party Rating organization sends Rating Response message back to EERP Portal
Based on the behavior of the Service Requester, EERP Portal can send SAL Request message to the Service Provider to obtain the commitments from the Provider
SLA Response Message
Service Provider commits to the agreement and sends the SLA Response message back to EERP Portal
The optimization will take place in the EERP Portal, which is not part of these three specifications.
After the optimization calculation on all the information that EERP Portal received from all Service Providers, EERP Portal sends EERP Response message back to Service Requester
Service Requester sends SLA Request message to the Service Providers to obtain the commitments from the Service Providers for those no SLA service in the set
SLA Response Message*
Service Provider commits the agreement and sends SLA Response message back to Service Requester
* The contents of the indicated messages are not currently defined by the Technical Committee
Optionally, a protocol might send a single message combining messages 2 and 4 with the response combining messages 3 and 5. These are shown in Figure 1 as messages 4a and 5b.
We conclude this section with a timing diagram:
As described previously, the current work in the TC includes the following three specifications:
v SOA-EERP Business Quality of Service (bQoS)
v SOA-EERP Business Rating of Service
v SOA-EERP Business Service Level Agreement (SLA)
This section gives brief descriptions on these three XML vocabulary specifications, their relationship and provides high-level diagrams for their XML schemas.
XML schema diagrams are produced by Altova XML Spy. For readability, some detail is omitted. A key to the notation is available.
EERP applies service discovery, composition, simulation, and optimization techniques in a novel way to improve business results. It takes as input a model of a business process and the range of potential services, and then guides the selection and deployment of services based on the end-to-end business value.
EERP Business Quality of Service (bQoS) Specification is an XML vocabulary by which a business application may communicate selected business characteristics of the service it provides. Modeling the business characteristics of a service is a prerequisite for estimating the business value of the process that uses those services.
EERP Business Rating of Services Specification is an XML vocabulary for information exchange on business creditability, reliability and reputation of the service providers. The creditability, reliability and reputation of the service need to be understood for estimating the overall business quality of the process that uses those services.
The business characteristics of the service defined in the bQoS specification and the business rating characteristics of the service defined in the Business Rating specification together will enable EERP to determine the varieties of optimization to be supported, and to select optimal end-to-end solution.
EERP Business Service Level Agreement for (BSLA) Specification is an XML vocabulary for information exchange by which a business application can manage and evaluate services with agreed business quality of service, obligations and terms.
Modeling the business service-level agreements to manage and evaluate services and establishing agreements about the business service is essential to long-term value chain improvement. The details of the business service level agreement defined in the BSLA specification will enable EERP to determine the varieties of optimization to be supported, and to effectively manage the end-to-end business process.
For example, when a service requester sends an EERP request message to the EERP Portal, the EERP Portal can query the business characteristics and the business rating characteristics of each service within the business process for all qualified service providers in the network, and calculate the possible optimized alternatives for the requester. To achieve end-to-end business value for the business process, additional message exchanges can be done to establish the business service-level agreements, and to manage and evaluate services.
The Business Quality of Service (bQoS) of the XML vocabulary is defined in XML Schema format that defines many quality measurement indicators. It has the following major elements:
v BQoSPrice indicates price or cost for the service
v BQoSPerformance indicates time to complete the service, or in the alternative, throughput and latency
v BQoSQualities indicates additional properties and attributes
v Additional elements for quality of service
The Business Rating specification is for business reliability and reputation of the service and its services provider. It can have one or more of the following elements:
v ListOfRating element is for the third party rating of service. Each Rating element in the ListOfRating is issued by a rating organization that has either an aggregated numeric rating or an aggregated classification description to represent the rating of the given business service.
v Credentials element is for credentials for the service that the service provider owns or holds. Credentials are issued by organizations regulating the service, such as licenses, permissions, certifications, associations, or affiliations. Each individual element in Credentials contains a single credential for the given business service. .
v Any additional elements for rating the service. For example, this could be one or more elements of PerformanceQualityAssertionEvaluation that provides a mechanism for Service Rating Entities to provide their evaluation for how well the Service Provider fulfills the Service Provider’s own Quality Assertion(s) of its service.
Figure 4 is the diagram of the XML Schema for Business Rating:
EERP Business Service Level Agreement Specification defines business Service Level Agreement (SLA) between the service requestor and service provider for a give service. Business SLA is a formal contract between a service provider and a client guaranteeing quantifiable business quality of service (bQoS) at defined levels.
It can have one or more of the following elements:
v SLAParties describes the parties involved in the SLA for the service
v SLAParameters describes the parameters for the service, which are defined ways of monitoring of QoS metrics.
v SLAObligations describes the agreed SLA obligations for the service.
v SLATerms describes the agreed SLA Terms for the service.
v Any additional elements for the agreement of the service.
Figure 5 is the diagram of
XML Schema for Business SLA:
Figure 4 XML Schema for Business Rating
Figure 5 -- XML Schema for BSLA
The following is the diagram of XML Schema for SLAObligations element within the Business SLA:
Figure 6 -- XML Schema for SLAObligations Element
This section describes a use case to illustrate how these specifications, EERP bQoS, EERP Rating and EERP SLA, would be used.
A typical EERP application system may be drawn as follows.
Figure 7 -- EERP Application Use Case
The Requester in our example is Sichuan My Gas Corporation (http://www.mygascorp.com.cn), a Chinese gas company that supplies natural gas to citizens living in the Sichuan Province, in Western China. It needs to order some gas meters for its customers.
The service is to provide a batch of gas meters. One of the Service Providers is Hangzhou MyGasMeter Technology Co. Ltd. (http://www.mygasmeter.com.cn), a gas meter producer that produces high quality IC-gas-meter in a timely fashion. Our example Service Provider is located in Zhejiang Province, in Eastern China.
The rating organization is 51Honest.org (http://www.51honest.org/), a rating organization that has the experience to evaluate and certify a service provider in the industry. 51Honest.org is located in Northern China.
Detailed example XML instances are listed in this section. These examples follow the schemas in Public Review Draft 01 for EERP bQoS, Rating and SLA.
v Service Requester: requests a service through the EERP systems to find the optimal solution
v Service Providers: provides the service, each with a different bQoS and Rating
v EERP Portal: a system that accepts the request from the Service requester. It performs bQoS and Rating queries, calculates the optimal solution, and returns the result back to Service requester.
v Third Party Rating Provider: provides the rating service for the service providers
Unless overridden by a namespace declaration inside an XML fragment, this document uses the following namespaces:
This bQoS example demonstrates the use of the EERP bQoS specification. The business quality of service on the gas-meters, including price, throughput and some properties, are described in XML to meet the specification provided by the gas-meter producer, Hangzhou MyGasMeter Technology Co. Ltd. (http://www.mygasmeter.com.cn), the EERP Service Provider.
The bQoS instance has the following items:
1. The price of the gas-meters is CNY(RMB) 120,000.00 per batch, and1,000 gas-meters a batch delivery
2. The throughput is 1,000 gas-meters in one batch, one batch per week or 7 days
3. Some of the gas-meter properties are listed in our example: integrated IC-Card-Box, with a solid iron shell.
(01) <?xml version="1.0" encoding="UTF-8"?>
(02) <bqos:BQoS ...
(04) xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
(05) <bqos:BQoSPrice >
(07) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(08) <bqos:Amount currencyID="CNY">120000</bqos:Amount>
(12) <bqos:Throughput >
(13) <bqos:Duration unitCode="DAY">7</bqos:Duration>
(14) <!-- batch production, generally 1000 sets a batch -->
(16) <bqos:Latency unitCode="DAY">0</bqos:Latency>
(21) <bqos:PropertyName languageID="zh-cn">外壳</bqos:PropertyName>
(22) <bqos:PropertyValue languageID="zh-cn">铁壳</bqos:PropertyValue>
(25) <bqos:PropertyName languageID="en">IC-Card-Box</bqos:PropertyName>
(26) <bqos:PropertyValue languageID="en">integrated</bqos:PropertyValue>
This Rating example illustrates ratings and credentials for the gas-meter producing service. In this example the service provider is Hangzhou MyGasMeter Technology Co. Ltd. (http://www.mygasmeter.com.cn):
The Rating message has the following items:
1. Credit rating on provider is 980.1, rated by 51Honest.org (http://www.51Honest.org), a third-party organization in northern China
2. License on gas-meter production is issued in December 1997, by the Zhejiang Bureau of Quality and Technical Supervision in the P. R. of China (http://www.zjbts.gov.cn/), a government agency.
3. Certificate on gas-meter product is the first Dual-Explosion-Proof Certificate in November 1997. The Certificate is issued by a third-party organization, the National Supervision and Inspection Center for Explosion Protection and Safety of Instrumentation (NEPSI) in Shanghai in the P. R. China (http://www.sipai.com/sitiias/nepsi.asp)
(01) <?xml version="1.0" encoding="UTF-8"?>
(02) <BRating xmlns="http://docs.oasis-open.org/ns/soa-eerp/rt/200903" >
(04) <Rate Type="Credit" >
(06) <IssuerName languageID="zh-CN">信星计划51Honest.org </IssuerName>
(16) <Credential Type="License" >
(18) <IssuerName languageID="zh-CN">浙江省质量技术监督局</IssuerName>
(21) <CredentialClass languageID="zh-CN">中华人民共和国计量器具生产制造许可证</CredentialClass>
(22) <License languageID="en-us">ZJJHJDJ-JL1997120001</License>
(28) <Credential Type="Certification">
(30) <IssuerName languageID="en">National Supervision and Inspection Center for Explosion Protection and Safety of Instrumentation ( NEPSI ) in Shanghai, P.R.China</IssuerName> <IssuerUri>http://www.sipai.com/sitiias/nepsi.asp</IssuerUri>
(32) <CredentialClass languageID="en">the first Dual-Explosion-Proof Certificate</CredentialClass>
(33) <License languageID="en-us">NEPSI-FB1997110001</License>
This SLA example shows the following agreement on the gas-meters between Hangzhou MyGasMeter Technology Co. Ltd. (http://www.mygasmeter.com.cn), an EERP Service Provider, and Sichuan Mianyang Gas Corp. (http://www.mygascorp.com.cn), an EERP Service Requester:
The SLA will have the following terms:
(01) <?xml version="1.0" encoding="UTF-8"?>
(02) <BSLA xmlns="http://docs.oasis-open.org/ns/soa-eerp/sla/200903"
(08) Service Provider=杭州西湖电子
(10) <ServiceProvider SPID="1">
(12) <ServiceProviderName>Hangzhou MyGasMeter Technology Co. Ltd, Zhejiang Prov., P.R.China</ServiceProviderName>
(15) ServiceRequester:服务请求人 四川燃气公司
(19) <ServiceRequesterName>Mianyang Gas Corp., Sichuan Prov., P.R.China</ServiceRequesterName>
(24) <ServiceProfileUri>http://UnkownServiceURL (http://www.mygasmeter.com.cn)</ServiceProfileUri>
(31) <!-- SLA Obligation elements -->
(36) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(37) <bqos:Amount currencyID="CNY">120000.00</bqos:Amount>
(42) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(43) <bqos:Amount currencyID="CNY">10.00</bqos:Amount>
(49) <CommittedTime timeZone="CST" description="+08:00 China Stand Time, Beijing Time or HK Time">
(50) <bqos:Duration unitCode="DAY"> 7</bqos:Duration>
(56) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(57) <bqos:Amount currencyID="CNY">0.00</bqos:Amount>
(62) <!-- No. 3 delivery after 7 days, BUT before 2009-04-01 -->
(64) <CommittedTime >
(65) <bqos:Duration unitCode="DAY"> 7</bqos:Duration>
(73) <Availabilities >
(74) <Availability isAvailable="true">
(84) <CommittedThroughput >
(85) <bqos:Duration unitCode="DAY">7</bqos:Duration>
(86) <!-- batch production, generally 1000 sets a batch -->
(87) <bqos:Quantity unitCode="EA">1000</bqos:Quantity>
(88) <bqos:Latency unitCode="DAY">0</bqos:Latency>
(95) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(96) <bqos:Amount currencyID="CNY">0.00</bqos:Amount>
(99) <bqos:Unit unitCode="EA">1000</bqos:Unit>
(100) <bqos:Amount currencyID="CNY">10.00</bqos:Amount>
[EERP-BQoS] OASIS Committee Draft 03, “SOA-EERP Business Quality of Service Version 1.0, 6 January 2010.
[EERP-Rating] OASIS Committee Draft 03, “SOA-EERP Business Rating of Service Version 1.0”, 6 January 2010.
[EERP-BSLA] OASIS Committee Draft 03, “SOA-EERP Business Service Level Agreement Version 1.0”, 6 January 2010.
 While we describe services and their characteristics in the context of the Reference Model for Service-Oriented Architecture [SOA-RM], we are not assembling or otherwise manipulating services in the descriptions in this white paper.
 Other OASIS Technical Committees and other standardization work have addressed many of these challenges. For example, the Web Services Device Discovery and Device Profile OASIS Standards address discovery and criteria by which a selection can be made. The OASIS Service Component Architecture addresses assembly of SOA services.
 The specifications as of this writing do not define the relationships between service providers and multiple bQoS and Ratings.
 The XML Schema diagrams were drawn using Altova XMLSpy. For an explanation of the symbols used in these diagrams, see http://www.e.govt.nz/standards/e-gif/authentication/data-formats-v1.1/chapter15.html or http://www.diversitycampus.net/Projects/TDWG-SDD/Minutes/SchemaDocu/SchemaDesignElements.html.