modelbased.net
COMET
 

COMET - UML profile for business model

Structuring Concepts


Concept

Extended Property

Description

UML Mapping

Icon

Business model

 

The model package that contains the business model.

Model

<<BusinessModel>>

 

Business process and roles model

 

A package that contains a business process and roles model.

Package

<<BusinessProcessAndRoleModel>>

 

Business resource model

 

A package that contains a business resource model.

Package

<<BusinessResourceModel>>

 

Community model

 

A package that contains a community model.

Package

<<Community>>

Context statement

 

A package that contains a context statement.

Package

<<ContextStatement>>

 

Goal model

 

A package that contains a goal model.

Package

<<GoalModel>>

 

Risk analysis

 

A package that contains a risk analysis.

Package

<<RiskAnalysis>>

 

Vision for change

 

A package that contains a vision for change.

Package

<<VisionForChange>>

 

Modelling Concepts


Concept

Extended Property

Description

UML Mapping

Icon

Behavioural policy

 

A behaviour that is necessary to enable the achievement of at least one goal, that cannot, for whatever reason, including modelling purpose, be represented as a set of steps with a defined start point and end points.

Class

<<BehaviouralPolicy>>

 

Business message

 

A Business Message is the information or control flow, between 2 roles, that results from a step.

ObjectNode

<<BusinessMessage>>

 

Business process

 

A Business Process is an enabling behaviour that is expressed a set of partially ordered steps. A process may itself be considered as a step in some higher order process.

Activity

<<BusinessProcess>>

Business rule

 

A business rule is a declarative constraint or extension to any instance of resource, role or business process, or combination of the three, that has business impact, expressed in natural language.

Comment

<<BusinessRule>>

 

Business service

 

A Business Service is a Resource with a role in the business, and represents an IT element that maps to a Business Service Component in the corresponding Architecture model.

Actor

<<BusinessService>>

Enabled by

 

Enabled by is a relationship concept that categorises an association in a model between a goal (modelled as a UML class) and an Enabling Behaviour (also modelled as a class) in which the goal is enabled by the associated behaviour.

Association

<<EnabledBy>>

 

Event

 

An event represents something that happens in the environment of the business or component being modelled. An event may affect a set of processes and a process may generate events. An occurred event may also have effect on a defined business goal.

ObjectNode

<<Event>>

 

Goal

 

A Goal is the purpose that a community has in executing a Business process.

Class

<<Goal>>

Human step

 

A Human Step is a step performed by a human with no involvement of the Product being modelled.

Action

<<HumanStep>>

Human/Tool

 

A Human/Tool is an actor resource with a role in the business that is fulfilled by human working with an IT element that maps to a Tool Component in the corresponding Architecture model.

Actor

<<HumanTool>>

Immediate Step

 

An Immediate Step is a Step that is required to complete as soon as possible, and whose intermediate states are of no concern to the business. It is performed autonomously, with no intervention from a human.

Action

<<ImmediateStep>>

Other system

 

An Other System is an actor resource that represents an external automatic system that fulfils a role in the Business Process Model.

Actor

<<OtherSystem>>

Product

 

A Product is an actor resource that fulfils a role in the business and maps to the executable Product as defined in the CC Information model (q.v.).

Actor

<<Product>>

Resource

 

A resource represents a thing that fulfils a role in the business and can be either an actor for or an artifact in a step of a business process. There are many kinds of resource, e.g. different passive and active resource. One kind of active resource is a business actor, which typically is responsible for a business activity. Work products/ artifacts are examples of passive resources, which typically are input to and output from business steps.

Class

<<Resource>>

Resource as artefact

 

A Resource as Artifact is a representation in the model of the aspects of a Resource that are the subject of a step in a process.

ObjectNode

<<ResourceAsArtefact>>

Resource as role

 

A Resource as Role is the behaviour of a resource when performing one or more steps in a process.

ActivityPartition

<<ResourceAsRole>>

Risk

 

Risk element.

Class

<<Risk>>

 

Step

 

A step is something that happens or is done within a process that contributes toward the achievement of the goal of the process. The resource performing the step may itself be modelled as a community and the step may be considered as a process of that community and, as such, be decomposed into steps.

Action

<<Step>>

Tool step

 

A Tool Step is a step performed by a human user interacting with a tool that is part of the Product. The human user will use some form of interactive device (e.g. a GUI) to interact with the Product. A Tool Step is a candidate for realisation by a Tool Component.

Action

<<ToolStep>>

Icons

Figure 26 shows the principle icons used for business modelling.

Figure 26: Principle Icons used in Business Modelling

Validation rules


Name

MetaClass

Description

Check Goal model

Package

Checks that each goal is achieved by at least one business process

Check Community

Package

Checks that each business process achieves at least one goal

Check Business Process AG

ActivityGraph

Checks that each step is under the responsibility of one role

Predefined views


Name

MetaClass

Description

Context Statement View

 

Package

 

Displays the main functions of a system and the main interacting actors

Process and goal structure

Package

Displays the goals achieved by the business process

Goal structure

Package

Displays the goal hierarchy

Business process structure

Package

Displays the business process of a Community, related resources and roles

Transformation Rules


  • TransformStep_to_UseCase: Creates a use case in a desired package from a business step defined in the business model. A traceability link is automatically generated between the step and the use case.
    • Right click on a business step(an ActionState stereotyped by <<Step>>)
    • Select the menu item "Business Module->Transform this step to a use case"
    • Select in the new GUI the package where the use case has to be generated
  • TransformRole_to_Actor: Creates an actor in the desired package from a Resource_in_Role defined in the business model. A traceability link is automatically generated between the Resource_in_Role and the actor.
    • Same steps as the previous command(right click on a Partition)
  • CreateBusinessModel: Create a default business model. Packages : Vision for change, Context statement, Risk analysis, etc. are automatically created. The command is launched by right-clicking on a Package then select "Business Module->Create a Business Model"
  • Create Community from a Resource in Role: Create a community to detail the behaviour and structure of a Resource filling a particular role. We need to be able to click on a Partition (representing a Resource in Role), create a package stereotyped as «Community» with the default name: “<name of Partition>”, and within that Package, create a class, stereotyped as «BusinessProcess», for each «Step» in that partition. Set traceability links, “represented community”, from the Partition to the resultant «Community» Package.
  • Create Community from a Step: Create a community to detail a Step in a Business Process. We need to be able to click on a SubActivityState (representing a Step in a Partition (representing a Resource in Role), create a package stereotyped as «Community» with the default name: “<name of Partition> doing <name of SubActivityState>”, and within that Package, create a class, stereotyped as «BusinessProcess», for the «Step». Set traceability links, “represented community”, from the Partition, and from the SubActivityState to the resultant Package.