Page 1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
UN/CEFACT‘s Modeling Methodology (UMM 1.0)
towards UMM 2.0
DissertantInnen Seminar – Mo, 21.05.2007
Christian HuemerMarco Zapletal
Philipp LieglRainer Schuster
Page 2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .3
We are going to talk about …
UN/CEFACT‘s Modeling Methodology (UMM)
Page 4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .4
UN and e-Business?
To maintain international peace and security
To develop friendly relations among nations
To achieve international co-operation;
Page 5
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .5
UN Layout Key
Page 6
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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)
Page 7
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .7
United Nations Centre for Trade Facilitationand e-Business (UN/CEFACT]
UN/EDIFACT
ebXML
UMM & CC
UN Layout Key
Page 8
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 9
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 10
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 11
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .12
Import AuthorityExport Authority
UMM by example European crossborder waste management
Notifier Notifiee
Announce Waste TransportAnnounce Transport Arrival
Page 13
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .13
Top-level UMM Packages<<BusinessDomainView>>
<<BusinessArea>>
<<BusinessRequirementsView>>
<<BusinessProcessView>>
<<BusinessEntityView>>
<<TransactionRequirementsView>>
<<CollaborationRequirementsView>>
<<CollaborationRealizationView>>
<<BusinessTransactionView>>
<<BusinessInteractionView>>
<<BusinessChoreographyView>>
<<BusinessInformationView>>
Page 14
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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>>
Page 15
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .15
<<BusinessPartner>> <<BusinessPartner>> <<BusinessPartner>> <<BusinessPartner>>
ImporterExportAuthority
ImportAuthorityExporter
UMM by example – Business Partner
Page 16
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 17
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .17
Top-level UMM Packages<<BusinessDomainView>>
<<BusinessArea>>
<<BusinessRequirementsView>>
<<BusinessProcessView>>
<<BusinessEntityView>>
<<TransactionRequirementsView>>
<<CollaborationRequirementsView>>
<<CollaborationRealizationView>>
<<BusinessTransactionView>>
<<BusinessInteractionView>>
<<BusinessChoreographyView>>
<<BusinessInformationView>>
Page 18
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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>>
Page 19
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .20
UMM Add-In Overview
Semi automatic artifact generation
Requirements EngineeringSupport
Model validation
Transformation tochoreography languages
Core Components supportUMM Add-In
UMM specific toolbar
Page 21
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 22
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 23
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 24
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 25
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .25
Old Business Service View
:BuyerService :SellerService
PurchaseOrderEnvelope
AcknowledgmentOfReceipt
AcknowledgmentOfReceipt
AcknowledgmentOfProcessing
AcknowledgmentOfProcessing
OrderResponseEnvelope
Page 26
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
Page 27
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 28
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 29
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 30
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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>>
Page 31
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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]
Page 32
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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]
Page 33
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .33
Limitation 5
Split of strongly related artifacts into different packages
Page 34
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .34
Limitation 6
No multi-party choreographies No nested business transactions
sd PurchaseOrderManagement
Buyer RespondentSellerQuoteRequestEnvelope
CreditCheckRequestEnvelope
CreditCheckResponseEnvelopeQuoteEnvelope
PurchaseOrderEnvelope
OrderResponseEnvelope
Page 35
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 36
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 37
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 38
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 39
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 40
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 41
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .41
Core Component (CC) example
No business context Independent of industry
or domain
ACC Aggregate Core Component
BCC Basic Core ComponentASCC Association Core
Component
Page 42
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 43
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 44
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .44
Dependency between Core Components and Business Information Entites
Page 45
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 46
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .46
The core component meta model
Page 47
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 48
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .48
UML profile for Core Components - Stereotypes
Page 49
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 50
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 51
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 52
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 53
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 54
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 55
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 56
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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.
Page 57
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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]
Page 58
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 59
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 60
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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]
Page 61
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 62
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 63
<<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
Page 64
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .64
Waste Management: UMM 2
Page 65
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 66
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .66
Multi-party Collaboration
Page 67
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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>>
Page 68
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 69
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 70
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 71
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
Page 72
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .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
Page 73
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .73
Summary
…
Page 74
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .74
<Thanks/>
Techniques & Methodologies Grouphttp://www.untmg.org
http://www.umm-dev.org