UAM Perspective Languages
UAM defines a set of four viewpoint languages for each perspective, integrated into perspective languages. An overview of these perspective languages is provided here, with links included to more complete descriptions, and to detailed definitions of each perspective.
Relationships
Main Description

Introduction

This document provides quick overview of the modeling languages for the four perspectives and associated viewpoints defined in UAM. More complete summaries are defined for each perspective as well:

For very detailed descriptions of each perspective language see:

The Business Perspective Language is based upon a very small subset of BPMN elements, with the addition of business entities, business locations, and business roles elements. The image below summarizes, using UML notation, the language elements and inter-relationships of the UAM Business Perspective language.

UAM Business Perspective Language Summary

This metamodel summarizes the Business Perspective language.

Logical Perspective

The Logical Perspective Language is based upon the BPMN Descriptive Conformance sub-class elements and attributes as defined in the table below, with the addition of un-typed Throwing Event, Link Events (Catch and Throw), Message (Send and Receive) and Send and Receive Task elements. This conformance profile is used for logical-level business process modeling in UAM, as required by the context and objective of the architecture effort; however the UAM methodology has some specific recommendations on how to use this profile. The image below summarizes, using UML notation, the language elements and inter-relationships of the UAM Logical Perspective language.

UAM Logical Perspective Language Summary

This metamodel summarizes the Logical Perspective language.

BPMN Descriptive Conformance Sub-Class Elements & Attributes
Element Attributes
participant (pool) id, name, processRef
laneSet id, lane with name, childLaneSet, flowElementRef
sequenceFlow (unconditional) id, name, sourceRef, targetRef
messageFlow id, name, sourceRef, targetRef
exclusiveGateway id, name
parallelGateway id, name
task (None) id, name
userTask

id, name

serviceTask id, name
subProcess (expanded) id, name, flowElement
subProcess (collapsed) id, name, flowElement
CallActivity id, name, calledElement
DataObject id, name
TextAnnotation id, text
association/dataAssociationa id, name, sourceRef, targetRef, associationDirectionb
dataStoreReference id, name, dataStoreRef
startEvent (None) id, name
endEvent (None) id, name
messageStartEvent id, name, messageEventDefinition
messageEndEvent id, name, messageEventDefinition
timerStartEvent id, name, timerEventDefinition
terminateEndEvent id, name, terminateEventDefinition
documentationc text
Group id, categoryRef


a. Data Association is ABSTRACT: Data Input Association and Data Output Association will appear in the XML serialization. These both have REQUIRED attributes [sourceRef and targetRef] which refer to itemAwareElements. To be consistent with the metamodel, this will require the following additional elements: ioSpecification, inputSet, outputSet, Data Input, Data Output. When a BPMN editor draws a Data Association to an Activity or Event it should generate this supporting invisible substructure. Otherwise, the metamodel would have to be changed to make sourceRef and targetRef optional or allow reference to non-itemAwareElements, e.g., Activity and Event.
b. associationDirection not specified for Data Association
c. Documentation is not a visible element. It is an attribute of most elements.

In addition to these elements defined for the Descriptive Conformance profile for BPMN V2.0, UAM has added the following BPMN elements to the Logical Process Viewpoint language:

  • Activity – Ad Hoc Subprocess, Sequential, Parallel and Loop activities;
  • Conditional Events – Start, Catching, Intermediate Interrupting, & Intermediate Non-Interrupting;
  • Message Event – Message Catching;
  • Event Gateways – Event-Based, Event-Exclusive, and Event-Parallel gateways;
  • Link Events – Catching and Throwing;
  • Messages – Send and Receive;
  • Sequence Flow – conditional and default flows;
  • Signal Events – Start, Intermediate Interrupting, Intermediate Non-Interrupting, Throw and End;
  • Timer Event – Timer Catching;
  • Tasks – Send, Receive, Manual, Business Rule and Script tasks;
  • Untyped Event – Throwing.

Technical Perspective

The Technical Perspective in UAM conforms to the BPMN Analytic Conformance profile. This conformance profile is used for technical-level business process modeling in UAM, as required by the context and objective of the architecture effort. The Analytic Conformance sub-class contains all the elements of the Descriptive Conformance sub-class (i.e. the Logical Perspective, see the table above) plus the elements shown in table below. This conformance profile is used for more detailed technical level business process modeling in UAM, as required by the context and objective of the architecture effort; however the UAM methodology has some specific recommendations on how to use this profile.

UAM Technical Perspective Language Summary 

This metamodel summarizes the Technical Perspective language.

An overview of the main set of language components and relationships is show in the figure below, including a definition of the metamodel—the structure and relationship rules for the Technical Perspective Language (i.e. the grammar).

BPMN Analytic Conformance Sub-Class Elements and Attributes (OMG 2011)
Element Attributes
sequenceFlow (conditional) id, name, sourceRef, targetRef, conditionExpressiona
sequenceFlow (default) id, name, sourceRef, targetRef, defaultb
sendTask id, name
receiveTask id, name
Looping Activity standardLoopCharacteristics
MultiInstance Activity multiInstanceLoopCharacteristics
exclusiveGateway Add default attribute
inclusiveGateway id, name, eventGatewayType
eventBasedGateway id, name, eventGatewayType
Link catch/throw Intermediate Event Id, name, linkEventDefinition
signalStartEvent id, name, signalEventDefinition
signalEndEvent id, name, signalEventDefinition
Catching message Intermediate Event id, name, messageEventDefinitionBusiness
Throwing message Intermediate Event id, name, messageEventDefinition
Boundary message Intermediate Event id, name, attachedToRef, messageEventDefinition
Non-interrupting Boundary message Intermediate Event id, name, attachedToRef, cancelActivity=false, messageEventDefinition
Catching timer Intermediate Event id, name, timerEventDefinition
Boundary timer Intermediate Event id, name, attachedToRef, timerEventDefinition
Non-interrupting Boundary timer Intermediate Event id, name, attachedToRef, cancelActivity=false, timerEventDefinition
Boundary error Intermediate Event id, name, attachedToRef, errorEventDefinition
errorEndEvent id, name, errorEventDefinition
Non-interrupting Boundary escalation Intermediate Event id, name, attachedToRef, cancelActivity=false, escalationEventDefinition
Throwing escalation Intermediate Event id, name, escalationEventDefinition
escalationEndEvent id, name, escalationEventDefinition
Catching signal Intermediate Event id, name, signalEventDefinition
Throwing signal Intermediate Event id, name, signalEventDefinition
Boundary signal Intermediate Event id, name, attachedToRef, signalEventDefinition
Non-interrupting Boundary signal Intermediate Event id, name, attachedToRef, cancelActivity=false, signalEventDefinition
conditionalStartEvent id, name, conditionalEventDefinition
Catching conditional Intermediate Event id, name, conditionalEventDefinition
Boundary conditional Intermediate Event id, name, conditionalEventDefinition
Non-interrupting Boundary conditional Intermediate Event id, name, cancelActivity=false, conditionalEventDefinition

messagec

 id, name, add messageRef attribute to messageFlow



a. ConditionExpression, allowed only for Sequence Flow out of Gateways, MAY be null.
b. Default is an attribute of a sourceRef (exclusive or inclusive) Gateway.
c. Note that messageRef, an attribute of various message Events, is optional and not in the sub-class.

In addition to these elements defined for the Analytic Conformance profile for BPMN V2.0, UAM has added the following BPMN elements to the Technical Process Viewpoint language:

  • Activity – Ad Hoc Subprocess, Compensation;
  • Cancel Events – Boundary Interrupting, and End;
  • Compensation Events – Event Sub-Process Interrupting, Boundary Interrupting, Throwing, End;
  • Escalation Event – Boundary Interrupting;
  • Error Event – Event Sub-Process Interrupting;
  • Signal Events – Event Sub-Process Interrupting;
  • Tasks – Manual, Business Rule and Script tasks;
  • Transaction – set of activities that logically belongs together;
  • Untyped Event – Throwing.

These BPMN elements are integrated into a complete Technical Perspective language through the addition of the UAM elements defined within the Technical Entity, Location, and Role Viewpoint Languages.