Upload
evadne
View
30
Download
0
Embed Size (px)
DESCRIPTION
UN/CEFACT‘s Modeling Methodology (UMM 1.0) towards UMM 2.0. DissertantInnen Seminar – Mo, 21.05.2007 Christian Huemer Marco Zapletal Philipp Liegl Rainer Schuster. Outline. Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business Transactions - PowerPoint PPT Presentation
Citation preview
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
UN/CEFACT‘s Modeling Methodology (UMM 1.0)
towards UMM 2.0
DissertantInnen Seminar – Mo, 21.05.2007
Christian HuemerMarco Zapletal
Philipp LieglRainer Schuster
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .2
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .3
We are going to talk about …
UN/CEFACT‘s Modeling Methodology (UMM)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .4
UN and e-Business?
To maintain international peace and security
To develop friendly relations among nations
To achieve international co-operation;
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .5
UN Layout Key
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .6
Application Application
Goal: Exchange of business related data,Goal: Exchange of business related data,independent of independent of SoftwareSoftware, , HardwareHardware and and Communication ProtocolsCommunication Protocols
EDIEDI EDIEDI
Electronic Data Interchange (EDI)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .7
United Nations Centre for Trade Facilitationand e-Business (UN/CEFACT]
UN/EDIFACT
ebXML
UMM & CC
UN Layout Key
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .8
Open-edi Reference Model – ISO 14662
Business Operational View
Functional Service View
Comply with
Covered by
Comply with
Covered by
Business aspects of
business transactions
Information technology aspects of
business transactions
Viewedas
Transformed To
Business Operational View
Functional Service View
Covered by
Business aspects of
business transactions
Information technology aspects of
business transactions
as
BU
SIN
ES
S T
RA
NS
AC
TIO
NS
BOV RelatedStandards
FSV RelatedStandards
UN/CEFACT`s ModelingMethodology (UMM)
UN/EDIFACTWeb Services
ebXML
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .9
UN/CEFACT´s Modeling Methodology
Customizing UML for modeling inter-organizational processes
Concentrates on business semantics Independent of the IT platform Describes a choreography from a global perspective UML Profile: Stereotypes, Tagged Values, Constraints on
top of the UML Meta Model
BDVBusinessDomain
View
BRVBusiness
RequirementView
BTVBusiness
TransactionView
UMM
BSVBusiness Service
View
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .10
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .11
UN/CEFACT‘s Modeling Methodology (UMM)
Customizing UML for modeling B2B Concentrates on business semantics Independent of the IT platform Describes a choreography from a global perspective UML Profile: Stereotypes, Tagged Values, Constraints
on top of the UML Meta Model– ~ 40 stereotypes defined in the meta model
UMM
BDVBusiness
Domain View
BRVBusiness
Requirements View
BTVBusiness
Transaction View
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .12
Import AuthorityExport Authority
UMM by example European crossborder waste management
Notifier Notifiee
Announce Waste TransportAnnounce Transport Arrival
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .13
Top-level UMM Packages<<BusinessDomainView>>
<<BusinessArea>>
<<BusinessRequirementsView>>
<<BusinessProcessView>>
<<BusinessEntityView>>
<<TransactionRequirementsView>>
<<CollaborationRequirementsView>>
<<CollaborationRealizationView>>
<<BusinessTransactionView>>
<<BusinessInteractionView>>
<<BusinessChoreographyView>>
<<BusinessInformationView>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .14
UMM by example - BRV ud Announce Waste Transport
Notifier
«BusinessTransactionUseCase»Announce Waste
Transport
Notifiee
«participates»«participates»
ud Announce Transport Arrival
Notifier Notifiee
«BusinessTransactionUseCase»Announce
Transport Arrival «participates»«participates»
ud Manage Waste Transport
Notifier Notifiee
«BusinessCollaborationUseCase»Manage Waste
Transport
«BusinessTransactionUseCase»Announce
Transport Arrival
«BusinessTransactionUseCase»Announce Waste
Transport
«include»«include»
«participates»«participates»
<<m
apsT
o>>
<<mapsTo>> <<mapsTo>>
<<m
apsT
o>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .15
<<BusinessPartner>> <<BusinessPartner>> <<BusinessPartner>> <<BusinessPartner>>
ImporterExportAuthority
ImportAuthorityExporter
UMM by example – Business Partner
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .16
ud Manage Waste Transport, Ex - ExA
«BusinessCollaborationRealization»Manage Waste
Transport
Notifer Notifee
Exporter
(from Waste Management)
ExportAuthority
(from Waste Management)
(from Manage Waste Transport)
«BusinessCollaborationUseCase»Manage Waste
Transport
Notifiee
(from Manage Waste Transport)
Notifier
(from Manage Waste Transport)
«participates» «participates»
«mapsTo»«mapsTo»
«mapsTo»
«participates»
«mapsTo»
«participates»
«realize»
UMM by example - BRVSubview: CollaborationRealizationView
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .17
Top-level UMM Packages<<BusinessDomainView>>
<<BusinessArea>>
<<BusinessRequirementsView>>
<<BusinessProcessView>>
<<BusinessEntityView>>
<<TransactionRequirementsView>>
<<CollaborationRequirementsView>>
<<CollaborationRealizationView>>
<<BusinessTransactionView>>
<<BusinessInteractionView>>
<<BusinessChoreographyView>>
<<BusinessInformationView>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .18
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMovementFormEnvelope
«RespondingBusinessActivity»Process Waste Movement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»:WasteMovementResponseEnvelope
[Success][Failure]
ad Announce Transport Arrival
Requestor :Notifier
«BusinessTransactionSwimlane»
Responder :Notifiee
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:TransportArrivalFormEnvelope
«RespondingBusinessActivity»Process Transport Arrival Form
«RequestingBusinessActivity»Notify Transport Arrival
[Success]
[Failure]
ad Manage Waste Transport
«BusinessTransactionActivity»Announce Transport Arrival
«BusinessTransactionActivity»Announce Waste Transport
UMM by example - BTV
BTUC
BTUC
BCUC
<<map
sTo>
>
<<mapsTo>>
<<mapsTo>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .19
The UMM Add-In
First prototypical implementation which supports the UMM approach
Developed by the University of Vienna in cooperation with the Research Studios Austria
Available for free from the project’s website– http://ummaddin.researchstudio.at
Extension of the Enterprise Architect Developed in C#
Current version: 0.8.2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .20
UMM Add-In Overview
Semi automatic artifact generation
Requirements EngineeringSupport
Model validation
Transformation tochoreography languages
Core Components supportUMM Add-In
UMM specific toolbar
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .21
<<BusinessPartner>>
uc Actualization
ExportAuthority
(from Waste Management)
«BusinessProcess»Pre-Inform on
Waste Transport
Exporter
(from Waste Management)
«participates»
«participates»
<XML>UMM-specific toolbar
Requirements Engineering – UMM Worksheets
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .22
Valid?
[yes]
[no]
act Announce Waste Transport
Responder :Notifiee«BusinessTransactionSwimlane»
Requestor :Notifier«BusinessTransactionSwimlane»
«RequestingInformationEnvelop...:WasteMovementFormEnvelope
«RespondingBusinessActiv ity»Process Waste Movement Form
«RequestingBusinessActiv ity»Notify Waste Transport
«InformationEnvelope»:WasteMovementResponseEnvelope
[Success][Failure]
act Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelop...:WasteMov ementFormEnv elope
«RespondingBusinessActiv ity»Process Waste Mov ement Form
«RequestingBusinessActiv ity»Notify Waste Transport
«InformationEnvelope»:WasteMov ementResponseEnv elope
[Success][Failure]
act Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSw imlane»
Requestor :Notifier
«BusinessTransactionSw imlane»
«RequestingInformationEnvelop...:WasteMovementFormEnvelope
«RespondingBusinessActiv ity»Process Waste Movement Form
«RequestingBusinessActiv ity»Notify Waste Transport
«InformationEnvelope»:WasteMovementResponseEnvelope
[Success][Fai lure]
UMM Add-In – BPEL/BPSS Generator
<BPEL><BPSS>
Validating UMM Model
act Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelop...:WasteMov ementFormEnv elope
«RespondingBusinessActiv ity»Process Waste Mov ement Form
«RequestingBusinessActiv ity»Notify Waste Transport
«InformationEnvelope»:WasteMov ementResponseEnv elope
[Success][Failure]
Semi-automatic generation of UMM artifacts
Transformation into Choreography Languages
UMM Validation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .23
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .24
[Con
trol F
ail]
[Suc
cess
]
<<RespondingBusinessActivity>>
Business Transaction
<<RequestingBusinessActivity>>
: Buyer : Seller
:PurchaseOrderEnvelope
:OrderResponseEnvelopeplace order
process order
isConfidential: noisTamperProof: yesisAuthenticated: yes
isConfidential: noisTamperProof: yesisAuthenticated: yes
timeToRespond: 24 hrstimeToAcknowledgeReceipt: 1 hrstimeToAcknowledgeProcessing: 4 hrsisAuthoriztionRequired: yesisNonRepudiationRequired: yesisNonRepudiationOfReceiptRequired: yesisIntelligibleCheckRequired: yesretryCount: 3
timeToAcknowledgeReceipt: 2 hrstimeToAcknowledgeProcessing: 8 hrsisAuthoriztionRequired: yesisNonRepudiationRequired: yesisNonRepudiationOfReceiptRequired: yesisIntelligibleCheckRequired: yes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .25
Old Business Service View
:BuyerService :SellerService
PurchaseOrderEnvelope
AcknowledgmentOfReceipt
AcknowledgmentOfReceipt
AcknowledgmentOfProcessing
AcknowledgmentOfProcessing
OrderResponseEnvelope
sd 02-AnnounceWasteTransport - Success - Drop of Document by Message Broker
:MessageBroker:CompetentAuthori tyOfDispatch :MessageQueue :CompetentAuthori tyOfDestination:MessageQueue
alt
[Document Expired]
If the document expires (according to the expiration timementioned in the ini tia l https Response after the document was submitted by the Competentent Authori ty of Dispatch), but the document waspicked up by the CA of Destination before, the MessageBroker drops the Movement Document from the Message Queue. In this case no fax is sent, since the document was already picked up.
According to the Vienna Meeting, Business Signals do not expire. This m eans business signals must always be droped by the CAs.
????????????Alternative:Business signals that were picked up by a CAare deleted by the broker after a fixed time period.????????????
MovementDocument
https Response
MovementDocument
AckOfReceipt
pickup AckOfReceipt
AckOfReceipt
drop AckOfReceipt
pickup MovementDocument
MovementDocument
Drop MovementForm
AckOfProcessing
https Response
AckOfProcessing
AckOfReceipt[4AckProc]
pickup AckOfReceipt[4AckProc]
AckOfReceipt[4AckProc]
drop AckOfReceipt[4AckProc]
pickup AckOfProcessing
AckOfProcessing
drop AckOfProcessing
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .27
State Machines
Describes the Business Service Interface of a participating partner
Unambiguous definition on how to react on– Incoming messages
– Messeages expected, but not received
Resulting State Machines:– The state machine of the initiator
– The state machine of the responder
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .28
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .29
Limitation 1
Vague guidelines on modeling business documents
cd Waste Mov ement Form
«InformationEnvelope»WasteMov ementFormEnvelope
«InformationEntity»StandardBusinessDocumentHeader
«ABIE»WasteMov ementForm
«ABIE»Waste
«ABIE»...
+Waste 1..*
+body+header
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .30
Limitation 2
Work-around to support call behavior in UML 1.4
ad Manage Waste Transport
«BusinessTransactionActivity»Announce Transport Arrival
«BusinessTransactionActivity»Announce Waste Transport
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMovementFormEnv elope
«RespondingBusinessActivity»Process Waste Movement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»
:WasteMov ementResponseEnvelope
[Success][Failure]
ad Announce Transport Arriv al
Requestor :Notifier
«BusinessTransactionSwimlane»
Responder :Notifiee
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»
:TransportArriv alFormEnv elope«RespondingBusinessActivity»
Process Transport Arriv al Form
«RequestingBusinessActivity»Notify Transport Arriv al
[Fai lure]
[Success]
<<mapsTo>>
<<mapsTo>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .31
Limitation 3
Inability to model alternative responsesad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMov ementFormEnv elope
«RespondingBusinessActivity»Process Waste Mov ement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»:WasteMov ementResponseEnv elope
[Success][Failure]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .32
Limitation 4
Flow may be well interpreted by humans Fails to give an unambiguous machine-
processable definitionact Manage Waste Transport
Success
«BusinessTransactionActivity»
:AnnounceWasteTransport
«BusinessTransactionActivity»
:AnnounceTransportArrivalFailure
[Transportwas notaccepted]
[Transportwas accepted]
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMov ementFormEnv elope
«RespondingBusinessActivity»Process Waste Mov ement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»
:WasteMov ementResponseEnv elope
[Success][Failure]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .33
Limitation 5
Split of strongly related artifacts into different packages
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .34
Limitation 6
No multi-party choreographies No nested business transactions
sd PurchaseOrderManagement
Buyer RespondentSellerQuoteRequestEnvelope
CreditCheckRequestEnvelope
CreditCheckResponseEnvelopeQuoteEnvelope
PurchaseOrderEnvelope
OrderResponseEnvelope
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .35
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .36
Motivation for standardizing the exchanged data
SOAP message
Order processing of enterprise X
request for quote
place order
check order statusEnterprise Application
Customer Y
Enterprise Application
Enterprise Application
Enterprise Application
WSDL
WSDL
WSDLWSDL
WSDL
SOAP message
SOAP message
UDDI registry
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .37
Motivation for standardizing the exchanged data
SOAP message
Order processing of enterprise X
request for quote
place order
check order statusEnterprise Application
Customer Y
Enterprise Application
Enterprise Application
Enterprise Application
WSDL
WSDL
WSDLWSDL
WSDL
SOAP message
SOAP message
UDDI registry
Enterprise Application
WSDL
WSDL
SOAP Message
SOAP Body
SOAP Header
Message Body
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .38
Motivation
Problem domain– Business documents exchanged in a business process in
a service oriented context
UN/CEFACT provides a generic solution– Core Components Technical Specification (CCTS)– Almost no tool support possible – CCTS are standardizes
as spread sheets
UML Profile for Core Components– Seamless integration into UML modeling tools possible– Seamless integration into e.g. process modeling specific
models possible
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .39
Harmonizing the exchanged data
Known standardization efforts– UN/EDIFACT– XML based solutions (RosettaNet)
Known issues of these efforts– Multitude of different and competing standards– Inclusion of every possible element that may be required –
strong overhead– Changes in the transfer syntax would require a complete
reegineering
Solution– Platform independent resuable building blocks for
creating shared libraries of business documents developed by UN/CEFACT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .40
Core Components
Are the central building blocks of the Core Component Technical Specification
Platform independent Used to create shared libraries of
interoperable business documents The ontological base of the CCTS is the United
Nations Trade Data Element Dictionary (UN/TDED)
Initially started as part of ebXML standards suite Now a dedicated project independent of ebXML
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .41
Core Component (CC) example
No business context Independent of industry
or domain
ACC Aggregate Core Component
BCC Basic Core ComponentASCC Association Core
Component
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .42
Business Information Entity (BIE) example
Core Components in a specific business context (e.g. travel industry)
BIEs have a specific business semantic
Qualifiers (US_) help to define and differentiate a BIE from ist associated CC and other BIEsABIE Aggregate Busines Information
EntityBBIE Basic Business Information
EntityASBIE Association Business
Information Entity
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .43
By introducing the business context core components become business information
entities
Core Components (CC) Business Information Entities (BIE)
BIEs are derived from CCs by restriction
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .44
Dependency between Core Components and Business Information Entites
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .45
Data Types
Qualified Data Types (QDT) are derived from Core Data Types (CDT) by restriction
Business Information Entities use QDT and CDT
Core Components use only CDT
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .46
The core component meta model
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .47
A UML Profile for Core Components
Flaws of the Core Components Technical Specification– Standardization process of Core Components is based on
spread sheets– No direct integration into modeling tools possible
UML Profile for Core Components– Independent project based on the CCTS– Set of stereotypes, tagged values and OCL constraints– Can be integrated into a modeling tool of choice– Proof of concept based on UML modeling tool Enterprise
Architect– UML class diagrams are used for the modeling of Core
Components
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .48
UML profile for Core Components - Stereotypes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .49
Assembling a business document using the different libraries of the UML profile for Core
Components
Business Library
DOCLibrary
BIELibrary
CCLibrary
QDTLibrary
CDTLibrary
ENUMLibrary
PRIMLibrary
Business document
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .50
Derivation of XSD artifacts
<xsd:complexType name="US_PersonType"><xsd:sequence>
<xsd:element name= "DateofBirth" type="udt1:DateType"><xsd:element name="FirstName" type="udt1:TextType"/><xsd:element name="US_Work"
type="bie1:US_AddressType"/><xsd:element name="US_Private"
type="bie1:US_AddressType"/><xsd:sequence>
</xsd:complexType>
<xsd:complexType name="US_AddressType"> […]</xsd:complexType>
Core Component Model
XSD Schema generator
Naming and Design Rules
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .51
Conclusion and Outlook
The UML profile for core components provides a method to model exchanged information– independent of the platform– independent of the transfer syntax– in shared libraries– on a common ontological base– derive different platform specific artifacts
Future work– Develop a new UML profile for CCTS 3.0 (UPCC)– Adaptation of the XSD schema generator– Build a repository to store and retrieve existing ABIE
and data type libraries
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .52
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .53
UML 2 provides the concept of call behavior actions
eliminates the maps to‘s ad Manage Waste Transport
«BusinessTransactionActivity»Announce Transport Arriv al
«BusinessTransactionActivity»Announce Waste Transport
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMovementFormEnv elope
«RespondingBusinessActivity»Process Waste Movement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»
:WasteMov ementResponseEnvelope
[Success][Failure]
ad Announce Transport Arriv al
Requestor :Notifier
«BusinessTransactionSwimlane»
Responder :Notifiee
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»
:TransportArriv alFormEnv elope«RespondingBusinessActivity»
Process Transport Arriv al Form
«RequestingBusinessActivity»Notify Transport Arriv al
[Fai lure]
[Success]
<<mapsTo>>
<<mapsTo>>
Eliminating Limitation 2 by Call Behavior
Activity
Activity
Activity
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .54
Eliminating Limitation 3 – Allowing multiple responses
Differing business intentions should be expressed using different response document types
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»:WasteMov ementFormEnv elope
«RespondingBusinessActivity»Process Waste Mov ement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»:WasteMov ementResponseEnv elope
[Success][Failure]
Multiple responses denoted via the object pin syntax
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .55
XOR relation between the possible response document types
In case multiple documents are sent – parameter sets are used to implement an XOR realtionship– there is always a 1:1 relationship between a document
flow and its enclosing parameter set
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .56
Limitation 4 – Only human-comprehensible interdependencies
The content of a response document needs to be examined to decide on the positive or negative outcome of a business transaction. – Using different response business document types alleviates
this problem The actual business document type decides on the
end state of a business transaction. – However, there exists no formal relationship between a
business document type and the semantically corresponding final state
The business collaboration protocol is guarded by the outcome of business transactions. – However, there is no explicit reference between the
transition guards and the business transaction final states.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .57
Limitation 4 – Only human-comprehensible interdependencies
act Manage Waste Transport
Success
«BusinessTransactionActivity»
:AnnounceWasteTransport
«BusinessTransactionActivity»
:AnnounceTransportArrivalFailure
[Transportwas notaccepted]
[Transportwas accepted]
ad Announce Waste Transport
Responder :Notifiee
«BusinessTransactionSwimlane»
Requestor :Notifier
«BusinessTransactionSwimlane»
«RequestingInformationEnvelope»
:WasteMov ementFormEnv elope«RespondingBusinessActivity»
Process Waste Mov ement Form
«RequestingBusinessActivity»Notify Waste Transport
«InformationEnvelope»:WasteMov ementResponseEnv elope
[Success][Failure]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .58
context NotifyWasteTransportinv NegativeResponse: self.input−>one (x|x.isTypeOf WasteMovementRejectionEnvelope) and x <> null)context NotifyWasteTransportinv PositiveResponse: self.input−>one (x|x.isTypeOf (WasteMovementAcceptanceEnvelope) and x <> null)
1 2
act Announce Waste Transport
Responder :Notifiee«BusinessTransactionSwimlane»
Requestor :Notifier«BusinessTransactionSwimlane»
BusinessSuccess
BusinessFailure
«RespondingBusinessActivity»
Process Waste Movement Form:WasteMovementFormEnvelope
:WasteMovementRejectionEnvelope
:WasteMovementAcceptanceEnvelope
«RequestingBusinessActivity»
Notify Waste Transport
:WasteMovementFormEnvelope
:WasteMovementAcceptanceEnvelope
:WasteMovementRejectionEnvelope
Eliminating Limitation 4 – Step 1 Binding final states to business document
types
2
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .59
Eliminating Limitation 4 – Step 2 Introducing Business Entity States in BT
The execution of a business transaction changes the state of a business entity
act Announce Waste Transport - with States
Requestor :Notifier«BusinessTransactionSwimlane»
BusinessFailure
«RequestingBusinessActivity»
Notify Waste Transport
:WasteMovementAcceptanceEnvelope
:WasteMovementFormEnvelope
:WasteMovementRejectionEnvelope
BusinessSuccess
Responder :Notifiee«BusinessTransactionSwimlane»
«RespondingBusinessActivity»
Process Waste Movement Form
:WasteMovementAcceptanceEnvelope:WasteMovementRejectionEnvelope
:WasteMovementFormEnvelope
«BusinessEntity»:WasteTransport
[accepted]
«BusinessEntity»:WasteTransport
[rejected]
stm WasteTransport
«BusinessEntity...announced
«BusinessEntity...arrived
Final
«BusinessEntity...rejected
«BusinessEntity...accepted
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .60
Eliminating Limitation 4 – Step 3 Business Entity States as Guard Conditions in BCP
The flow of a business collaboration protocol is unambiguously governed by business entity states
act Manage Waste Transport - with States
«BusinessTransactionActivity»
:AnnounceWasteTransport
«BusinessTransactionActivity»
:AnnounceTransportArrival
Success
Failure
[WasteTransport.oclInState(rejected)]
[WasteTransport.oclInState(accepted)]
act Announce Waste Transport - with States
Requestor :Notifier«BusinessTransactionSwimlane»
BusinessFailure
«RequestingBusinessActivity»
Notify Waste Transport
:WasteMovementAcceptanceEnvelope
:WasteMovementFormEnvelope
:WasteMovementRejectionEnvelope
BusinessSuccess
Responder :Notifiee«BusinessTransactionSwimlane»
«RespondingBusinessActivity»
Process Waste Movement Form
:WasteMovementAcceptanceEnvelope:WasteMovementRejectionEnvelope
:WasteMovementFormEnvelope
«BusinessEntity»:WasteTransport
[accepted]
«BusinessEntity»:WasteTransport
[rejected]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .61
Conclusion
Showed the benefits of the transition from UML 1.4.2 to UML 2– eliminating meta model workarounds
Added the possibility to explicitly model different business intentions using multiple response document types
Formally bound business document types to business transaction final states and those in turn to guard conditions in a business collaboration protocol– required for a MDA-like approach
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .62
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
<<BusinessDomainView>>
<<BusinessPartner>><<BusinessRequirementsView>>
<<BusinessProcessView>>BusinessProcessActivityGraph
<<TransactionRequirementsView>><<BusinessTransactionUseCase>><<AuthorizedRole>> (2 x)
<<CollaborationRequirementsView>><<BusinessCollaborationUseCase>><<AuthorizedRole>> (2+ x)
<<BusinessTransactionView>><<BusinessInteractionView>>
<<BusinessInteraction>><<BusinessTransaction>>
<<BusinessCollaborationView>><<BusinessCollaboration>>
<<BusinessCollaborationProtocol>><<BusinessInformationView>>
<<BusinessArea>><<ProcessArea>>
<<BusinessProcess>>
<<BusinessEntityView>><<BusinessEntity>>
<<BusinessEntityLifeCycle>>
<<CollaborationRealizationView>><<BusinessCollaborationRealization>><<AuthorizedRole>> (2+ x)
<<BusinessInformation>>
<<BusinessPartnerView>>
<<BusinessChoreographyView>><<BusinessTransactionView>>
Other Folders From UML Profile for CC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .64
Waste Management: UMM 2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .65
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .66
Multi-party Collaboration
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .67
Multiple Bi-lateral Collaborations
uc OrderFromQuote
«BusinessTransactionUseCase»RequestForQuote
«BusinessTransactionUseCase»PlaceOrder
«BusinessCollaborationUseCase»OrderFromQuote
«include»«include»
uc CheckCreditworthiness
«BusinessTransactionUseCase»CheckCredit
«BusinessCollaborationUseCase»CheckCreditworthiness
«include»
<<BusinessCollaborationUseCase>>OrderFromFirmQuote
<<include>> <<include>>
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .68
<<LocalChroeography>> of a Wholesaler (1)
Inte
ract
ion
with
Ret
aile
r
uc PurchaseManagement
«BusinessCollaborationRealization»OrderFromQuote
Retailer :Buyer Wholesaler
Buyer Seller
«mapsTo»«mapsTo»
«participates»«participates»
<<RespondingBusinessActivity>>calculate quote
<<RespondingBusinessActivity>>act on purchase order
[Quote.provided]
[Order.accepted][Order.rejected][Quote.refused]SuccessFailure
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .69
<<LocalChroeography>> of a Wholesaler (2)
Inte
ract
ion
with
Ret
aile
r
uc CheckCreditworthiness
«BusinessCollaborationRealization»CheckCreditworthiness
CheckRequestor Respondent
Wholesaler Bank
«mapsTo»«mapsTo»
«participates»«participates»
<<RequestingBusinessActivity>>request credit check
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .70
<<LocalChroeography>> of a Wholesaler (3)
Inte
ract
ion
with
Ret
aile
r
<<RespondingBusinessActivity>>calculate quote
<<RespondingBusinessActivity>>act on purchase order
[Quote.provided]
[Order.accepted][Order.rejected][Quote.refused]SuccessFailure
Inte
ract
ion
with
Ret
aile
r <<RequestingBusinessActivity>>request credit check
<<CallNestedTransaction>>:request credit check
Inte
ract
ion
with
Ret
aile
rIn
tera
ctio
n wi
th R
etai
ler
act OrderFromFirmQuoteSeller
«RespondingBusinessActiv ity»calculate quote
:QuoteRequestEnvelope
:QuoteEnvelope
«ReceiveBusinessInformation»receive quote envelope
«Priv ateAction»
file quote request
«CallNestedTransaction»
:request credit check
«PrivateAction»act on credit check
result
«Priv ateAction»refuse quote
«Priv ateAction»prov ide quote
«RespondingBusinessActiv ity»act on purchase order
:PurchaseOrderEnvelope
:OrderResponseEnvelope
«ReceiveBusinessInformation»receive purchase order
«Priv ateAction»
file purchase order
«Priv ateAction»
compare purchase order and quote
«PrivateAction»rej ect order
«Priv ateAction»accept order
Start Success
Failure
«SendBusinessInformation»send quote response «SendBusinessInformation»
send order response
[CreditCheck.reported]
[Quote.provided]
[not ok][ok]
[Order.accepted]
[Quote.refused]
[Order.rejected]
[CreditCheck.refused]
act OrderFromFirmQuoteSeller
«RequestingBusinessActiv ity»request credit check
:CreditCheckRequestEnvelope
:CreditCheckResponseEnvelope
«Priv ateAction»prepare credit
check
«SendBusinessInformation»send credit check request
«Priv ateAction»
file credit check response
«ReceiveBusinessInformation»receive credit check response
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .72
Outline
Introduction to UMM UMM 1.0 by Example A Business Service Interface for Business
Transactions Limitations of UMM 1.0 Modeling Business Documents Call Behavior and Alternative Responses UMM Choreographies and Business Entity States Re-packaging the UMM Multiparty Collaborations and Local Choreographies Summary
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .73
Summary
…
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .74
<Thanks/>
Techniques & Methodologies Grouphttp://www.untmg.org
http://www.umm-dev.org