UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS,...

86
UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems, Unisys Supporting companies: Hitachi, Netaccount, SINTEF ad/2001-06-09

Transcript of UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS,...

Page 1: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Joint UML for EDOC Submission

Submitters:

CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems, Unisys

Supporting companies:

Hitachi, Netaccount, SINTEF

ad/2001-06-09

Page 2: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

AgendaAgenda

Introduction to UML for EDOC– Vision and Rationale– Submission structure, RFP Requirements

Platform Independent Modeling - ECA CCA Profile Entities Profile Events Profile

Business Process Profile Relationships Profile Patterns

Platform Specific Modeling– EJB, FCM, MOF – Technology Mappings

Summary, RFP Requirements - Discussion

Page 3: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

EDOC VisionEDOC Vision

Simplify the development of component based Enterprise (EDOC) systems by means of a modeling framework, based on UML 1.4 and conforming to the OMG Model Driven Architecture.

Provide a platform independent, recursive collaboration based modeling approach that can be used at different levels of granularity and different degrees of coupling, for both business and systems modeling.

Page 4: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

EDOC Key RFP RequirementsEDOC Key RFP Requirements

Modelling framework for enterprise distributed object computing systems:– Based on UML 1.4 – System operation directly relatable to business

processes– Models driven by business requirements – Mappable to different platforms (incl. CORBA )

Specifically, support modelling of:– Business entities– Business processes– Business rules– Business events.

Page 5: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Submission StructureSubmission Structure

Chapter 1 - Response to RFP

Chapter 2 - EDOC Rationale & Use

Chapter 3 - ECA

Chapter 4 Patterns

Chapter 5 - Technology Specific Models

Chapter 6 - UML Profile for MOF

Part II - Examples & Technology Mappings

Section 1 - ECA Rationale

Section 2 - CCA

Section 3 - Entities Section 4 - Events

Section 5 - Processes

Section 6 - RelationshipsSection 1 - EJB and Java Metamodels

Section 2 - FCM

Page 6: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Using RM-ODP viewpointsUsing RM-ODP viewpoints

Enterprise viewpoint(CCA, Business Processes, Entities, Relationships, Events)

Information viewpoint (Entities, Events, Relationships) (CCA, Entities, Events)

Computational viewpoint(CCA, Entities, Events)

Computational viewpoint

Technology viewpoint(UML for J2EE/EJB/JMS, CORBA 3/CCM, COM, SOAP, ebXML)

Technology viewpoint(UML for J2EE/EJB/JMS, CORBA 3/CCM, COM, SOAP, ebXML)

Part I:Technology Specific ModelsPart I:Technology Specific Models

Part II: ECA totechnology mappings

Part II:

mappings

Part I: ECA

(Technology abstraction: FCM)

Engineering viewpoint(Technology abstraction: FCM)

Engineering viewpoint

Part I: Patterns - applied to all viewpoints

Page 7: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Four general categories of ProcessComponent

Four general categories of ProcessComponent

E-business Components

Application Components

Distributed Components

Program Components

Page 8: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Internet Computing Model The Internet Computing Model

Collaboration of independent entities

Document exchange over internet technologies

– Large grain interactions, not “method calls”

No required infrastructure * Long lived business processes Business transactions

– Not technical transactions

BusinessParty

BusinessParty

Portals

Page 9: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

“Pattern” for the MDA“Pattern” for the MDA

ECAEntities Process

Events

Platform Specific ModelsPlatform Specific Models

RelationshipsCCA

Integration -viewpoints

etc

FCMFCM

ebXMLebXML

Patterns

Platform Independent ModelsPlatform Independent ModelsPlatform Independent ModelsTechnology mappings

EJBEJBCORBACORBA COMCOMMOMMOM

Page 10: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Platform Independent Modeling

The Enterprise Collaboration Architecture

Page 11: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Component Collaboration Architecture

Collaborative process component specification for ECA

Page 12: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Marketplace ExampleThe Marketplace Example

Mechanics Are UsBuyer

Acme IndustriesSeller

GetItThere FreightShipper

Order

Conformation

Ship Req

Shipped

Shipped

PhysicalDelivery

Delivered

Status

ProcessComplete

Page 13: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Seller’s DetailThe Seller’s Detail

Order

Conformation

Shipped

Ship Req

Shipped

Delivered

Order Processing

Shipping

Receivables

Event

Page 14: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Buyer’s DetailThe Buyer’s Detail

Order

Conformation

Shipped

Ship Req

Shipped

Delivered

Supplier Evaluation

Order

Receive Goods

Process DataFlow

Process DataFlow

Page 15: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Specification of CCA

Structure +

Composition +

Choreography

Page 16: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Parts of a CCA SpecificationParts of a CCA Specification

Structure of process components and protocols– Process components, ports, protocols and documents

Class Diagram or CCA Notation

Composition of process components– How components are used to specify components

Collaboration diagram or CCA Notation

Choreography – Ordering of flows and protocols in and between process

components Activity Diagram

Page 17: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Process ComponentProcess Component

A CCA Process Component defines a configurable behavioral unit that can be composed in a particular way

They can be logical or physical, concrete or abstract– They can represent anything from a business partner in a B2B

exchange to a fine-grain computation Process Components can be used to compose other

process components, recursively CCA is intended to be specialized, as a core architecture

for process, entities and events at multiple levels of granularity

CCA is compatible with the ebXML Business Process Specification Schema which specifies B2B collaborations

Extends real-time capsule model

Buyer

BuyDelivery

Page 18: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The Community ProcessThe Community Process

Identify a “community process”, the roles and interactions Using CCA Notation

Buyer Seller

BuySell CommunityProcess

Buy Sell

Shipper

ShipDelivery

ShipDelivery

Page 19: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Seller

Sell

Buyer

Buy

Component structureComponent structure

Buys(from Buyer)

<<ProtocolPort>>

Buyer<<ProcessComponent>> <<initiates>> Sells

(from Seller)

<<ProtocolPort>>

Seller<<ProcessComponent>><<responds>>

BuySellProtocol<<Protocol>>

Component structure Defines the “outside”Contract of a component

Page 20: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

ProcessComponent

- granularity : GranularityKind- isPersistent : Boolean = false- primitiveKind : String = ""- primitiveSpec : String

Port

- name : String- isSynchronous : Boolean- isTransactional : Boolean- direction : DirectionType- postCondition : Status

<<boundary>>

PortOwner

n

1

+portsn

+owner 1

Ports

Protocol

ProtocolPort<<boundary>>

1

+uses

1

ProtocolType

FlowPort<<boundary>>

Meta Model for StructureMeta Model for Structure

Key Point:Process Components have portsThat either initiate or respondTo a protocol or flow

Sells(from Seller)

<<ProtocolPort>>Seller

(from BuySell)

<<ProcessComponent>>

OrderBT(from BuySell)

<<Protocol>>

<<responds>>

Seller

Sell

Page 21: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

OrderData<<CompositeData>>

OrderConfirmationData<<CompositeData>>

Order(from OrderBT)

<<FlowPort>>OrderConfirmation

(from OrderBT)

<<FlowPort>>

OrderBT<<Protocol>><<responds>>

<<initiates>>

OrderDeniedData<<CompositeData>>OrderDenied

(from OrderBT)

<<FlowPort>>

<<initiates>>

Protocol ExampleProtocol Example

Specification of a protocol

Protocol OrderBT

OrderDenied

OrderConfirmationOrder

responderRoleSeller

initiatorRoleBuyer

Page 22: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Meta Model for ProtocolMeta Model for Protocol

OrderData<<CompositeData>>

OrderConfirmationData<<CompositeData>>

Order(from OrderBT)

<<FlowPort>>OrderConfirmation

(from OrderBT)

<<FlowPort>>

OrderBT<<Protocol>><<responds>>

<<initiates>>

OrderDeniedData<<CompositeData>>OrderDenied

(from OrderBT)

<<FlowPort>>

<<initiates>>

PortOwner

Port

- name : String- isSynchronous : Boolean- isTransactional : Boolean- direction : DirectionType- postCondition : Status

<<boundary>>

FlowPort<<boundary>>

DataElement(from DocumentModel)

n1

+ports

n

+owner

1

Ports

0..1n

+type

0..1n FlowType

Protocol

ProtocolPort<<boundary>>

1

+uses

1

ProtocolType

MetaModel

Model

Page 23: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Protocol OrderBT

OrderDenied

OrderConfirmationOrder

responderRoleSeller

initiatorRoleBuyer

Choreography of ProtocolChoreography of Protocol

<<initiates>> Order

<<responds>> OrderDenied <<responds>> OrderConfirmation

Failure Success

Transition

- preCondition : StatusPortUsage

Node

- name : StringAbstractTransition

Choreography

n1

+outgoing

n

+source

1

Sourcen1

+incomingn

+target

1

Targetn+nodes

n

Nodes

n +connectionsn

Connections

n

0..1

+subtypesn Generalization

+supertype

0..1

PseudoState

- kind : PseudostateKind

Page 24: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Object InterfacesObject Interfaces

Use standard interface notation

Are a subtype of “Protocol” in the MetaModel

Allow modeling of and integration with classical and/or existing objects

CustService

+ checkCustomer()+ checkCredit()

<<Interface>>

EnqStatus(from CustomerComponent)

<<ProtocolPort>>

CustomerComponent<<Entity>>

<<responds>>

Interface

Protocol

Page 25: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

CompositionComposition

Seller : Sells

Validate : OrderValidation

: checkOrder

: reject

: acceptOrder

: CheckCustomer

Process : OrderProcessing

: doOrder

: ProcessedOrder

CustBean : CustomerComponent

: SendOrder

: GetDenied

: GetConfirmation

: EnqStatus

Seller Composition

1: checkCustomer(order : Order)

Use of an interface

Composition definesthe “inside” of a component

Page 26: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Composition MetaModelComposition MetaModel

PortConnector

Connection

Port<<boundary>>

PortUsageProcessComponentComponentUsage

name : String

1

n

+represents1

n

Represents

createscreates

1

n +uses

1

n

Uses

Compositionowns

IsComposition

1

n

+owner

1

+usesn

ComponentUsages

connects

Seller : Sells

Validate : OrderValidation

: checkOrder

: reject

: acceptOrder

: CheckCustomer

: Order

: OrderDenied

: OrderConfirmation

Page 27: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

PropertiesProperties

Properties make process components configurable They can be reset when a component is used – in a

composition or at deployment time

Timer

Start Timeout

MaxTime Real 500

ProcessComponent

PropertyDefinition

- name : String- initial : Expression- isLocked : Boolean

1

n

+component 1

+properties n

Properties

Com ponentUsage

nam e : String

PropertyValue

- value : Express ion

+owner1

+configurationnn

1

Page 28: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

ECA Entity Profile

The model of things

Page 29: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Sample Information ModelSample Information Model

+Street : String+City : String+State : String+Zip : String

«EntityData»Addtress

+Cust

1

+Adr

1..*

+Name : String+Balance : Decimal = 0+AccountNo : long

«EntityData»Account

+InvNum : Integer+Total : Decimal

«EntityData»Invoice

-Act1

-Invoices*

+Quantity : float-Price : Currency

«EntityData»LineItem +PartId : String

+Description : String+QtyInStock : float(idl)

«EntityData»Part

-Env

1

-Items

*

-Items

*

-Part

1+InvNum : Integer

«Key»InvoiceKey

-.

1

-.

1

+PartId : String

«Key»PartKey

-. 1

-. *

+AccountNo : String

«Key»AccountKey

-.

1

-.

1

+Name : String-CompanyId : String

«EntityData»Company

+CompanyId : String

«Key»CompanyKey

-.

1

-.

1

Page 30: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

MetaModel for Information Model

MetaModel for Information Model

+Street : String+City : String+State : String+Zip : String

«EntityData»Addtress

+Cust

1

+Adr

1..*

+Name : String+Balance : Decimal = 0+AccountNo : long

«EntityData»Account

+AccountNo : String

«Key»AccountKey

-.

1

-.

1

+Name : String-CompanyId : String

«EntityData»Company

+CompanyId : String

«Key»CompanyKey

-.

1

-.

1

EntityDataKey

+ PrimeKey : Boolean

Composite Data(from CCA)

10..n 10..n

Page 31: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Adding EntitiesAdding Entities

Entities are added to manage entity data

Entity Roles are managers that provides a view of the same identity in another context

The Entities have ports for managing and accessing the entities

Non-entities which are owned by (aggregate into) an entity are managed by the entity

+Street : String+City : String+State : String+Zip : String

«EntityData»Addtress

+Cust

1

+Adr

1..*

+Name : String+Balance : Decimal = 0+AccountNo : long

«EntityData»Account

+AccountNo : String

«Key»AccountKey

-.

1

-.

1

+Name : String-CompanyId : String

«EntityData»Company

+CompanyId : String

«Key»CompanyKey

-.

1

-.

1

.Manages

<<Entity>>CompanyManager

Manage

<<EntityRole>>AccountManager

Manage

-Manages1

-.1

Page 32: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Entity Meta ModelEntity Meta Model

Process Component(from CCA)

EntityData

Entity Role

+ VirtualEntity : Boolean

Entity

+ Managed : Boolean

+Context

0..n

+Parent

0..n

11

0..n0..n

Composite Data(from CCA)

Data Manager

+ NetworkAccess : Boolean+ Sharable : Boolean

11 1

+manages

1

+Street : String+City : String+State : String+Zip : String

«EntityData»Addtress

+Cust

1

+Adr

1..*

+Name : String+Balance : Decimal = 0+AccountNo : long

«EntityData»Account

+AccountNo : String

«Key»AccountKey

-.

1

-.

1

+Name : String-CompanyId : String

«EntityData»Company

+CompanyId : String

«Key»CompanyKey

-.

1

-.

1

.Manages

<<Entity>>CompanyManager

Access

<<EntityRole>>AccountManager

Access

-Manages1

-.1

Page 33: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

ECA Business Events

The model of when…

Page 34: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

BusinessServices

Event Based Business Processes

Event Based Business Processes

Page 35: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

Business Events

Business Process

Business Entity

BusinessRules

Business Actions

Event Notification

Event Based Business Processes

Event Based Business Processes

Page 36: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

Event Notifications

Point to Point NotificationPoint to Point Notification

Page 37: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

App

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

Pub/Sub

Loose Coupling

Pub/Sub NotificationPub/Sub Notification

Page 38: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

PubSub PackagePubSub Package

SubscriberPublisher

Subscription

subscriptionClause : expressiondomain : String

Publication

publicationClause : expressiondomain : String

PubSubNotice

FlowPort(from CCA)

CompositeData(from CCA)

+offers 0..n

+subscribedBy

1..n

+offeredBy 0..n

0..n

0..n

+announcedBy

1..n

+subscribesTo

1..n

1..n

1..n

+announces

1..n

1..n

1..n

Page 39: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Event PackageEvent Package

DataManager(from Entity)

BusinessEvent

EventNotice(from Event)

EventbasedDataManager

DataEvent

EventbasedProcess

Choreography(from CCA)

ProcessEvent

entry : Booleansuccess : Boolean

Node(from CCA)

+triggers1+describedBy

0..1

+triggeredBy0..n

1

0..n+describes

0..n

0..1

0..n

1

0..n

1

0..n

lifeCycle

0..n0..n

lifeCycle

+reflects0..n

+reflectedIn

1..21..2

0..n

Page 40: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Putting it all togetherPutting it all together

Business Process

Business Entity

BusinessRules

Business Events

Business Actions

EventNotice

EventbasedDataManager

Subscriber

EventCondition

EventbasedProcess

Subscription

NotificationRule

+requiredBy

0..n

+guards

0..n

+requires

0..n

0..n

0..n

+guardedBy

0..n0..n0..n

Publisher

PubSubNotice

1..n

1..n

+subscribedBy1..n

+subscribesTo1..n

Publication

0..n

0..n

+offers0..n

+offeredBy0..n

+announces

+announcedBy

1..n

1..n

1..n

1..n

Page 41: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Event ExampleEvent Example

Page 42: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Summary of AdvantagesSummary of Advantages

Recursive decomposition & assembly Trace ability Automating the development process Loose coupling Technology Independence Enabling a business component marketplace Simplicity through abstraction

Page 43: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Business Process Profile

how things are coordinated

Page 44: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Business ProcessesBusiness Processes

Specialize CCA Activity-centric view of a Process Express

– Complex temporal and data dependencies between business activities

– Iteration of activities– Alternative required Inputs and Outputs of activities– Roles related to performers, artifacts and responsible parties for

activities

Page 45: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

CT

The Business Process Concepts

The Business Process Concepts

B

A

C

RP

PR2AR

PR1

Page 46: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

ProcessComponent Specialization

ProcessComponent Specialization

CompoundTask is a special ProcessComponent– Its Ports represent the type of an Activity – Its Composition arranges Activities in a dependency

graph

Activity is a special ComponentUsage– Its MultiPort usages contain ProcessPortConnectors

(ProcessFlowPort usages)– DataFlows between these Connectors express

dependencies between Activities

Page 47: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Metamodel for BP Components

Metamodel for BP Components

Activity

ProcessComponent

granularity : String = "Program"isPersistent : Boolean = falseprimitiveKind : StringprimitiveSpec : String

(from CCA) ComponentUsage

name : String(from CCA)

n1 n

+uses

1

Composition(from CCA)

n

1

+uses n

+owner

1

CompoundTask

BusinessProcess

BusinessProcessEntity

Entity

Managed : Boolean(from Entity)

CT

B

A

C

RP

PR2AR

PR1

Activity

Page 48: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

BusinessProcess and BusinessProcessEntityBusinessProcess and

BusinessProcessEntity

A BusinessProcess – Exposes arbitrary Ports (outside)

which define interfaces, operations, events for composition using CCA

– Its Composition (inside) is restricted to containing Activities and DataFlows

A BusinessProcessEntity– Is a BusinessProcess whose instances are uniquely

identifiable

Page 49: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Port Types and SemanticsPort Types and Semantics

ProcessMultiPorts specialize CCA Multiports– They act as correlators for data from many sources– May be synchronous (required before starting an Activity) – or asynchronous (accepted by Activity during execution)

ProcessFlowPorts specialize CCA FlowPorts– Multiplicity indicates how many values are required to enable

containing Multiport

3 concrete kinds of ProcessMultiPort– InputGroup – alternative data sets required to begin an Activity– OutputGroup – alternative Activity result data sets– ExceptionGroup – abnormal Activity results

Page 50: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Metamodel for BP PortsMetamodel for BP Ports

Port

name : Stringsynchronous : Booleantransactional : Booleandirection : DirectionTypepostCondition : Status

(from CCA)

<<boundary>>

PortUsage(from CCA)

1 n

+represents

1 n

PortConnector(from CCA)

AbstractTransition(from CCA)

Node

name : String

(from CCA) n1

+outgoing

n

+source

1

n1

+incoming

n

+target

1

FlowPort(from CCA)

<<boundary>>MultiPort

(from CCA)

ProcessMultiPort

InputGroup OutputGroup

ExceptionGroup

ProcessFlowPort

multiplicity_lb : shortmultiplicity_ub : short

ProcessPortConnectorDataFlow

Connection(from CCA)

connects

ProcessPortConnector

CT

B

A

C

RP

PR2AR

PR1

DataFlow

Page 51: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Metamodel for BP PortsMetamodel for BP Ports

Port

name : Stringsynchronous : Booleantransactional : Booleandirection : DirectionTypepostCondition : Status

(from CCA)

<<boundary>>

PortUsage(from CCA)

1 n

+represents

1 n

PortConnector(from CCA)

AbstractTransition(from CCA)

Node

name : String

(from CCA) n1

+outgoing

n

+source

1

n1

+incoming

n

+target

1

FlowPort(from CCA)

<<boundary>>MultiPort

(from CCA)

ProcessMultiPort

InputGroup OutputGroup

ExceptionGroup

ProcessFlowPort

multiplicity_lb : shortmultiplicity_ub : short

ProcessPortConnectorDataFlow

Connection(from CCA)

connects

ProcessPortConnector

CT

B

A

C

RP

PR2AR

PR1

DataFlow

Page 52: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Data FlowsData Flows

DataFlows are special CCA Connections– Uni-directional between ProcessFlowPorts– DataFlows indicate

data dependency & transmit values at run-time, or temporal dependency (aka control flow)

Page 53: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Process RolesProcess Roles

ProcessRoles are placeholders for the components that an Activity needs to do its work

Contain SelectionRules and/or CreationRules– these are search expressions / factory parameters to

bind to objects at run-time

Three kinds of Roles– Performer - does the job of the Activity– Artifact – is a resource needed by the Performer– ResponsibleParty - authorizes the Activity

Page 54: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Metamodel for Process RolesMetamodel for Process Roles

Composition(from CCA)

Performer Artifact ResponsibleParty

Activity

ProcessRole

selectionRule : stringcreationRule : string 0..n

0..n

+responsibleFor0..n

0..n

0..n0..n

+usesArtifact

0..n0..n

+performedBy

0..1 0..n0..1 0..n

CompoundTask

BusinessProcess

ProcessComponent

granularity : String = "Program"isPersistent : Boolean = falseisPrimitive : Boolean = false

(from CCA)

ComponentUsage

name : Stringn1

+uses

n

+owner

1

+uses n

1

n

1

CT

B

A

C

RP

PR2AR

PR1

Page 55: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Process PatternsProcess Patterns

The basic model elements– ProcessMultiPorts– CompoundTasks– Activities– DataFlows

Are used to define useful patterns for processes– PreConditions and PostConditions– Timers and ProcessTerminators– Loops (while, for, repeat)– MultiTask - which spawns parallel Activities for each

value in a collection Input

Page 56: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Interactions between Interfaces and Process Definitions

Interactions between Interfaces and Process Definitions

BusinessProcesses are – Roots of process definition graphs– CCA “Interface” ProcessComponents on the outside– CompoundTask Compositions on the inside– Gateway from the component world into the process

definition world ProcessRoles are

– Leaves of a process definition graph– Bindings from Activities to “Interface”

ProcessComponents which perform their work– Gateway from the process definition world into the

component world

Page 57: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Relationships Profile

useful associations and dependencies

Page 58: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Relationships ProfileRelationships Profile

Enables non-binary aggregations Defines useful association and dependency

stereotypes

partA partB

aggregate <<Aggregation>>

<<Packet>>

<<Assembly>>

<<Subordination>>

<<List>> <<List>>

or

or

Page 59: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Aggregation RelationshipsAggregation Relationships

<<Aggregation>> is non-binary “black diamond” or “white diamond” whole/part association

4 more constrained aggregations are defined:– <<Assembly>> is an aggregation where the whole

cannot exist without its parts– <<Subordination>> is an aggregation where the parts

cannotb exist without the whole– <<Packet>> is an aggregation where the parts or the

whole may exist independently– <<List>> is an aggregation where both the parts and

the whole must exist in order to be valid (assembly and subordination)

Page 60: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Dependency RelationshipsDependency Relationships

<<AbstractReference>> defines a dependency between a maintained instance whose properties are partly derived from a referenced instance

2 Concrete reference kinds are defined– <<Reference>> is a dependency indicating that a

maintained instance has properties derived from a referenced instance

Whenever a property of the referenced element changes, the properties of the maintained element must be examined and possibly changed.

– <<ReferenceForCreate>> is a dependency indicating that at creation time a maintained instance has properties derived from a referenced instance, but thereafter they are independent

Page 61: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Patterns Profile

reusing parameterized designs

Page 62: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Patterns ProfilePatterns Profile

Profiles UML Parameterized Collaborations Based on Business Function Object Patterns

(BFOP)– Multi-Layer– Based on Catalysis Approach

Adds stereotypes for– Named Patterns– Inheritance– Composition– Pattern Binding with renaming

Page 63: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Applying Simple PatternApplying Simple Pattern

Constraint/Operation

P

<A> B

P

applying

Unfolding and Renaming

s1

m1

A1s2

m2

A [t1/tt1]

A1s1s2m1m2

B

t1

tt1

Page 64: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Applying Inherited PatternApplying Inherited Pattern

Constraint/Operation

<A1>

<B1>

Constraint/Operation

<A2>

B2

P1

P2

P1

A3

P2

A3 B2

P1

A3 B2

Applyingunfolding

unfoldingA1 B1

A2

A1 B1

Page 65: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Applying Composite PatternApplying Composite Pattern

Constraint/Operation

<C3>

P1 P2

Constraint/Operation

A1 <C1>

P1

Constraint/Operation

B1<C2>

P2

P3

C4

P3

C4

P1

C4 B1

applying

unfolding

unfolding

P2

A1

C1 C2

C3

C1 C2

Page 66: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Patterns: Buyer/SellerPatterns: Buyer/Seller

Inheritance

Composition

Page 67: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Patterns: Buyer/SellerPatterns: Buyer/Seller

Unfolding

Applying

Page 68: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Platform Specific Modeling

EJB, FCM, MOF Technology mappings from EDOC to

Distributed Component and Message Flow Platform Specific Models

– EDOC to J2EE/EJB mapping– EDOC to CORBA/CCM mapping– EDOC Business Process to FCM

mapping– EDOC Business Process to CORBA

mappinG

Page 69: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

EJB, Java Profile – and JSR-26 “UML for EJB”

EJB, Java Profile – and JSR-26 “UML for EJB”

EJB is an implementation technology for distributed components

JSR-26 provides the UML Profile for EJB EDOC provides

– The EJB metamodel for this profile– The Java metamodel to support the EJB metamodel

Work in progress to map between the metamodel and the JSR-26 Profile

Page 70: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

FCM – Flow Composition Model

FCM – Flow Composition Model

General purpose model describing flows of information between application components enabling

– Breakdown of complex acctions into simple flow components– Composition of simple entities into higher level flow models

Layer of abstraction just above middleware technology– WSDL, messaging, workflow

Mappings to FCM– EDOC: Business Process Profile– EAI: messaging technologies

Page 71: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

UML Profile for MOFUML Profile for MOF

The MOF Profile describes how to normatively express MOF models using UML.– Used by this submission to express the MOF models in

the EDOC Specification– 2-way transformation between UML and MOF for

Designing metamodels with UML (UML to MOF) Viewing metamodels with UML (MOF to UML)

Expressed as tables showing:– The mappings of element types– Detailed mapping descriptions for individual element

types– Guidelines for MOF modeling using UML

Page 72: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Part II - Supporting Annexes

Annex A - Procurement, Buyer/Seller example

Annex B - Meeting Room example

Annex C - Hospital example

Annex D - Examples of Patterns

Annex E - Technology mappings from EDOC to Distributed Component and Message Flow Platform Specific Models

XMI, DTD files

Page 73: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Technology mappings from EDOC to Distributed Component and Message

Flow Platform Specific Models

Technology mappings from EDOC to Distributed Component and Message

Flow Platform Specific Models

Introduction to EDOC and Platform Specific Models

Principal Platform Specific Models Mapping from EDOC to J2EE/EJB Mapping from EDOC to CORBA/CCM Mapping from EDOC Business Process profile to

CORBA Mapping from EDOC Business Process profile to

FCM

Page 74: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Abstract Technology Model Abstract Technology Model

DeferredSynch request

Naming service

Persistence service

ServerComponents

Message

Transaction service

Concurrencyservice

XML

Synchron.request

Event - publish & subscribe

Data services &Legacy systems

Shared BusinessServices

User services(application/process)

Interaction/Presservices

Trading serviceSecurity service

Workflowservice

Streaming

Integration service

User InterfaceDocument modelWeb interaction

System/Use Mngt

Page 75: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Computational viewpointComputational viewpoint

ReservationManagerComponent t

IReservationManagement ReservationRemoteMgt

ResourceRemoteMgt

ResourceManagerComponent

t

IResourceManagement ResourceRemoteMgt

MeetingReservationServiceComponent t

IMeetingReservation IResourceManagement

EmailServer t

SendMail

OrganizationServer t

EnqOrgUnit

IMeetingInvitation

IMeetingRetrieval

IResourceRetrieval

IReservationManagement

SendMail

Property Type Value

ResourceAdministrationServiceComponent t

IResourceAdministration EnqOrgUnit

IResourceManagement

Property Type Value

IResourceRetrieval

Page 76: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Computational viewpointComputational viewpoint

IReservationManagement

+ FindReservationByPrimaryKey(pk : ReservationKey) : Reservation+ CreateSuggestionList(requirements : ReservationRequirements) : ReservationSuggestion+ CreateReservation(reservationSuggestion : ReservationSuggestion) : Reservation

<<Interface>>

IReservationMgmtResp<<ProtocolPort>>

<<responds>>

ReservationManagerComponent<<ProcessComponent>>

Protocol derived from a “traditional” interface

Page 77: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Mapping from EDOC to EJBMapping from EDOC to EJB

<<Entity>>Reservation

<<EJBImplementation>>ReservationBean

<<Entity>>Resource

<<EJBImplementation>>ResourceBean

<<ProcessComponent>>MeetingReservationToolComponent

<<Java application>>MeetingReservationToolComponent

<<ProcessComponent>>MeetingReservationService

<<Java interface>>MeetingReservationService<<Java class>>MeetingReservationServiceImpl

<<ProcessComponent>>MeetingResponseToolComponent

<<Java application>>MeetingResponseToolComponent

<<ProcessComponent>>MeetingResponseService

<<Java interface>>MeetingReservationService<<Java class>>MeetingReservationServiceImpl

<<ProcessComponent>>ResourceAdministrationTool

<<Java application>>ResourceAdministrationTool

<<ProcessComponent>>ResourceAdministrationService

<<Java interface>>ResourceAdministrationService<<Java class>ResourceAdministrationServiceImpl

<<ProcessComponent>>ReservationManagerComponent

<<EJBImplementation>>ReservationManagerBean

<<ProcessComponent>>ResourceManagerComponent

<<EJBImplementation>>ResourceManagerBean

Page 78: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Technology viewpoint (EJB)Technology viewpoint (EJB)

<<EJBSessionHomeInterface>>

ReservationManagerHome

<<EJBRemoteInterface>>

ReservationManager

<<EJBImplementation>>

ReservationManagerBean

<<EJBRealizeHome>>

<<EJBRealizeRemote>>

ejbActivate()

createReservation()

createReservation()

createReservation()

deleteReservation()

createSuggestionList()

ejbCreate()

ejbPassivate()

ejbRemove()

findReservationByPrimaryKey()

findReservationsAll()

findReservationsByOrganizer()

getSessionContext()

newMethod()

setSessionContext()

<<EJBCreateMethod>>

+create():ReservationManager

<<EJBRemoteMethod>>

+createReservation(Inout requirements:ReservationRequirements):Reservation<<EJBRemoteMethod>>

+createReservation(Inout suggestion:ReservationSuggestion):Reservation<<EJBRemoteMethod>>

+createReservation():Reservation<<EJBRemoteMethod>>

+createSuggestionList(Inout requirements:ReservationRequirements): [*] ReservationSuggestion<<EJBRemoteMethod>>

+deleteReservation(Inout reservation:Reservation)<<EJBRemoteMethod>>

+findReservationByPrimaryKey(Inout pk:ReservationKey):Reservation<<EJBRemoteMethod>>

+findReservationsAll():Enumeration<<EJBRemoteMethod>>

+findReservationsByOrganizer(Inout pk:ResourceKey):Enumeration

Page 79: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Mapping from EDOC to Corba/CCM

Mapping from EDOC to Corba/CCM

OperationDef(from BaseIDL)

ProvidesDefUsesDef

+ multiple : boolean

InterfaceDef(from BaseIDL)

1

0..*

+provides1

0..*0..*

1

0..*

+uses1

EmitsDef PublishesDef ConsumesDef

FactoryDef FinderDef

ComponentDef

isBasic : boolean

1

0..*

1

+facet0..*

0..*

1

+receptacle0..*

1

0..*

0..*

+supports 0..*

0..*

1

0..*

1

+emits

0..*

1

0..*

1

+publishes 0..*

1

0..*

1

+consumes0..*

HomeDef

+ isBasic : boolean

1

0..*

1

+factory0..*

1

0..*

1

+finder0..*

1

0..*

+manages 1

+home0..*

PrimaryKeyDef

1

0..1

+home1

+key0..1

/Home_Key

ValueDef(from BaseIDL)

1

0..*

+type

1

0..*

EventDef

1

0..*

+type1

0..*

Page 80: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Mapping from EDOC Business Process

Mapping from EDOC Business Process

To CORBA - based on mapping to Workflow service elements

To CORBA -extended using Notification-based mapping

To CORBA - alternative using Interface-based mapping

To FCM- the Flow Composition Model

Page 81: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Wrap-up

Page 82: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

The EDOC visionThe EDOC vision

A MOF model and a UML profile sufficient to support seamless, robust and consistent specification of all elements of the life cycle of an enterprise system

– Enable the design, integration and subsequent evolution of enterprise systems

– Links business concepts to system implementation by using same modeling concepts on multiple levels

– Integrate commercial transactions, business processes and distributed object applications

– Insulate business system specifications from technological idiosyncrasies

– Support the development of specialized tools to improve the quality, cost and adaptability of business systems

– Enable a business system components marketplace

Page 83: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Summary: Mandatory Requirements

Summary: Mandatory Requirements

Specification of Business Process objects (R3)

Modeling of Business Processes, Entities, Rules and Events (R2)

Specification of Relationships (R4)Component modeling (R1)MOF alignment (R5)Proof of concept of Profile (R6)Proof of concept of Mappability (R7)

Page 84: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Call for Volunteers

We need a review team – to report by (Toronto – 3 weeks)

Page 85: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Tomorrow – UML4EDOC “Tutorial”

0900 - North Shore B

See the ships -

meet the men

(and women)

Page 86: UML4EDOC The Joint UML for EDOC Submission Submitters: CBOP, Data Access Technologies, DSTC, EDS, Fujitsu, IBM, Iona Technologies, OPEN-IT, Sun Microsystems,

UML4EDOCUML4EDOC

Questions?