「商業協同運作協定的自動協商」 技術探討
description
Transcript of 「商業協同運作協定的自動協商」 技術探討
「商業協同運作協定的自動協商」技術探討
Ching-Long Yeh 葉慶隆Department of Computer Science and Engineering
Tatung UniversityTaipei, Taiwan
Email: [email protected]: http://www.cse.ttu.edu.tw/chingyeh
Web Technology Evolution
Automatic Negotiation of CPA 3
Web Technology
• HTML• XML• Electronic Business• Semantic Web
Automatic Negotiation of CPA 4
InformationPool
WWW
• HTTP (Hyper Text Transport Protocol)• HTML (Hyper Text Markup Language)• URL (Uniform Resource Locator)
Web server
ApplicationClient
HTTP
URL
HTML Document
• Human-to-machine interaction• Information explosion
Automatic Negotiation of CPA 5
InformationPool
Interactions Using XML
• XML (eXtensible Markup Language)• SOAP (Simple Object Access Protocol)
SOAP server
Application
HTTP
XML Document
• Machine-to-machine interaction • Service automation
SOAP server
Application
InformationPool
XML Document
Automatic Negotiation of CPA 6
Web Service Architecture
Serviceregistry
Servicerequester
Serviceprovider
FindWSDL, UDDI
PublishWSDL, UDDI
Bind
Servicedescriptions
Servicedescriptions
Services
Automatic Negotiation of CPA 7
Electronic Business
Transport, routing, packaging
Business processes,business documents
Company A Company B
Transport, routing, packaging
Business processes,business documents
ERPERP
• Application-to-Application• Business Process Automation• RosettaNet (vertical solution)• ebXML (horizontal framework)
Automatic Negotiation of CPA 8
Semantic Web
• The Semantic Web is a vision:
• See “W3C Semantic Web Activity,” by Marja-Riitta Koivunen, for more descriptions.
the idea of having data on the web defined and linked in a way that it can be used by machines not just for display purposes, but for automation, integration and reuse of data across various applications
Automatic Negotiation of CPA 9
Semantic Web
• The Semantic Web is the new generation of the World Wide Web, based on the semantic network knowledge representation formalism, which enables packaging information in the form of object-attribute-value statements, so called triplets.
• By assuming that terms used in these statements are based on the formally specified meaning (for the community of interest), i.e. ontologies, these triplets can be semantically processed by machine agents.
From: http://www2002.org/CDROM/poster/130.pdf
Automatic Negotiation of CPA 10
The Semantic Web Layered Architecture
(http://www.w3.org/2001/Talks/0228-tbl/slide5-0.html)
Tim Berners-Lee:“Axioms, Architecture and Aspirations”W3C all-working group plenary Meeting28 February 2001
URI Unicode
XML Namespaces
XML Schema
Sig
RDF M&S
RDF Schema
Ontology
Rules
Logic
Proof
Trust
Automatic Negotiation of CPA 11
The Big Picture of SW
(http://semanticweb.org/about.html#bigpicture)
Automatic Negotiation of CPA 12
Remainder
• Introduction to ebXML framework• Creating agreement of collaboration protocol between
trading partners• Introduction to CPPA• Agent-mediated architecture for the negotiation of
collaboration protocols• Working examples• Conclusion
Automatic Negotiation of CPA 13
The ebXML Framework at Work
Customer
Supplier
ebXMLRegistry
ProfilesProcessSpecifications
Registry Host1
2
Impl
emen
tatio
n
3
4
5
6
Intermediaries
Automatic Negotiation of CPA 14
Components of the ebXML Framework
• BPSS (Business Process Specification Schema)– Defining how public business-processes are described
• ebCC (Core Components)– Defining the semantics of business documents that are exchanged in public
processes
• CPP (Collaboration Protocol Profile)– Definition of services and the constraints in using the services
• CPA (Collaboration Protocol Agreement)– Description of the mutual agreement between the business partners to carry
out the public business process
• RR (Registry and Repository)– Protocols and store for registering, storing, and retrieving public business
processes and associated business documents, and CPPs
• ebMS (Message Services) – A standard way to send and receive messages between business partners
Automatic Negotiation of CPA 15
The ebXML standards
BPSS
Registry
Repository
CC
CPP
CPA
MS
Business Process Business Document
Dis
cove
ry
Par
tner
Pro
file
and
Agr
eem
ent
Message Service
Automatic Negotiation of CPA 16
Public and private processes
CPA
Bsu
ines
s S
ervi
ceIm
plem
enta
tion
BSI
Partner A Partner B
PrivateProcess
PrivateProcess
Public Process(Business Collaboration)
Bsu
ines
s S
ervi
ceIm
plem
enta
tion
BSI
Business Transaction
BSI=Business Service Interface
Automatic Negotiation of CPA 17
Performing the automation
Business Process andInformation Model
Mad
e in
UM
L(U
sing
UM
M)
BusinessProcess
Specification
BusinessDocument
Specification
Profile A Profile B
Agreement AB
BSI A BSI B
Role=Customer Role=Supplier
RegistryRepository
Map to XML
Sp
eci
fica
tion
in X
ML
Automatic Negotiation of CPA 18
Registry
Party B
(Buyer,Server)
Party A(Seller,Server)
CPP(A)
CPP(B)
CPP(X)
CPP(Y)
CPP(Z)
CPP(A)CPA(A,B)CPA(A,B)
(Document)(Exe. Code)
CPA(A,B)CPA(A,B)
(Document)(Exe. Code)
1. Any Party may register its CPPsto an ebXML Registry.
2. Party B discovers trading partner A (Seller) by searching in the Registry and downloads CPP(A) to Party B’s server.
3. Party B creates CPA(A,B) and sends CPA(A,B) to Party A.
4. Parties A and B negotiate and store identical copies of the completed CPA as a document in both servers. This process is done manually or automatically.
5. Parties A and B configure their run-time systems with the information in the CPA.
6. Parties A and B do business under the new CPA.
2.6.
5.
5.
3.4.
1.
1.
Formation of CPA
Automatic Negotiation of CPA 19
CPP
• An XML document, rooted with CollaborationProtocolProfile element.
CollaborationProtocolProfile PartyInfo+
Packaging+
ds:Signature?
Comment*
Automatic Negotiation of CPA 20
CPP
• PartyInfo describes the company described in the CPP
PartyInfo PartyId
PartyRef
CollaborationRole
Certificate
DeliveryChannel
Transport
DocExchange
Automatic Negotiation of CPA 21
CPP• The CollaborationRole element contains the data
describing the parts or functions played by the company in business processes supported by that company.
CollaborationRole ProcessSpecification
Role
CertificateRef
ServiceBinding
id
ds:reference
name
version
xlink:type
xlink:href
name
xlink:type
xlink:href
certId
name
channelId
Packaging
override
Automatic Negotiation of CPA 22
CPP Layered Structure
Business process
Transport
Document exchange
Transport
Document exchange
Transport
Document exchange
Business process
ProcessSpecificationlayer
Documentexchangelayer
Transportlayer
Deliverychannels
Automatic Negotiation of CPA 23
CPP Structure(1)<CollaborationProtocolProfile
xmlns="http://www.ebxml.org/namespaces/tradePartner"xmlns:ds="http://www.w3.org/2000/09/xmldsig#"xmlns:xlink="http://www.w3.org/1999/xlink"version="1.1">
<PartyInfo> <!--one or more--> ...</PartyInfo><Packaging id="ID"> <!--one or more-->...<Packaging><ds:Signature> <!--zero or one-->...</ds:Signature><Comment>text</Comment> <!--zero or more--> </CollaborationProtocolProfile>
Automatic Negotiation of CPA 24
CPA Structure(1)<CollaborationProtocolAgreement
xmlns="http://www.ebxml.org/namespaces/tradePartner"
xmlns:bpm="http://www.ebxml.org/namespaces/businessProcess"
xmlns:ds = "http://www.w3.org/2000/09/xmldsig#"
xmlns:xlink = "http://www.w3.org/1999/xlink"
cpaid="YoursAndMyCPA"
version="1.2">
<Status value = "proposed"/>
<Start>1988-04-07T18:39:09</Start>
<End>1990-04-07T18:40:00</End>
<!--ConversationConstraints MAY appear 0 or 1 times-->
<ConversationConstraints invocationLimit = "100"
concurrentConversations = "4"/>
Possible values{ “proposed”, “agreed”, “signed”}
CPA lifetime
Automatic Negotiation of CPA 25
CPA Structure(2)
<PartyInfo>
…
</PartyInfo>
<PartyInfo>
…
</PartyInfo>
<Packaging id="N20"> <!--one or more-->
...
</Packaging>
<!--ds:signature MAY appear 0 or more times-->
<ds:Signature>any combination of text and elements
</ds:Signature>
<Comment xml:lang="en-gb">any text</Comment> <!--zero or more-->
</CollaborationProtocolAgreement>
Two for both parties
Automatic Negotiation of CPA 26
ebXML Repository
Buyer Agent
EvaluationEngine
ReconciliationEngine
Seller Agent
EvaluationEngine
ReconciliationEngine
User Interface
User Interface Negotiation
Repository ofPartner’s CPAs
Transformation of BPSS into rule
Repository ofBP rule
WorkingMemory
BusinessCollaboration
rule
Process engine
Message Service Handler
Backend P
rocessing
Business Process Handler
Message Service Handler
Backend P
rocessing
BSI BSIBuyer Seller
CPP CPP
Design Time
Run Time
An Agent-Mediated Architecture for EB Automation
Automatic Negotiation of CPA 27
OAA Architecture
Facilitator Agent
Modality Agents
ApplicationAgent
Application
API
MetaAgent
Registry
NL to ICLAgent
User Interface
Agent
Interagent Communication Language
Automatic Negotiation of CPA 28
System Workflow
:Buyer :Buyer Agent :Facilitator Agent :Seller Agent :Seller
Request (Buyer CPP)
Set the Rule
MatchingEvaluate and
Reconcile
Modified CPA
Negotiation
Finish and Return Result CPA
Seller CPP
Matching
Negotiation
Modified CPA
Finish and Return Result CPA
Evaluate and Reconcile
Automatic Negotiation of CPA 29
Basic Tasks in Forming a CPA
Packaging
Role
Transport
Packaging
Role
Transport
match
match
match
Automatic Negotiation of CPA 30
Two Ways of Creating CPP
Agent2
1
User CPP (XML&KSL)
UI Interface
Automatic Negotiation of CPA 31
Automatic Negotiation of CPA 32
Convert CPP to KSL
Back
Automatic Negotiation of CPA 33
UI for Creating CPP
Automatic Negotiation of CPA 34
Registration of CPP
Automatic Negotiation of CPA 35
Buyer Agent
Automatic Negotiation of CPA 36
Seller Agent
Automatic Negotiation of CPA 37
Buyer Agent Connects to Seller
Automatic Negotiation of CPA 38
Seller Agent Accepted Connection
Automatic Negotiation of CPA 39
Match Sending Protocol(1/4)
Automatic Negotiation of CPA 40
Match Sending Protocol(2/4)
Automatic Negotiation of CPA 41
Match Sending Protocol(3/4)
Automatic Negotiation of CPA 42
Match Sending Protocol(4/4)
Automatic Negotiation of CPA 43
System Output
Negotiation
CPP CPP
CPA
Output
Automatic Negotiation of CPA 44
Conclusion
• EB automation, including the automation of implementation, discovery, and run-time phases
• Agent-mediated architecture for the automation of discovery phase
• A prototype system is developed to show the concept of automation.
• Future work – Using UMM to formalize the negotiation protocol in BPSS– Using the agent-mediated architecture to develop the
automatic negotiation of products trading, probably replacing the CPPs by terms of condition