Enterprise Collaboration Architecture


The first version of the Enterprise Collaboration Architecture has been published by the Object Management Group in 2001.
The vision of the is to simplify the development of component based and services oriented systems by providing a modeling framework aligned with the model-driven architecture of the Object Management Group.
The ECA thus provides a modeling framework for technology neutral business process design followed by implementation mappings onto the chosen architecture and technologies. It requires bi-directional traceability across the specification, implementation and operation.
The ECA specifies a set of UML models used to model different aspects of the system and a set of viewpoints addressing different concerns.

ECA models

The ECA comprises four UML models:
  1. the Component Collaboration Architecture,
  2. the Business Process Model,
  3. the Events Model, and
  4. the Entities Model.

    The Component Collaboration Architecture (CCA)

The Component Collaboration Architecture provides a recursive decomposition and assembly of logical parts or process roles. These represent abstract role players which are ultimately mapped onto physical system components. ECA thus separates process roles from the physical process components realizing these roles.

The Business Process Model

The business process model defines the business processes across levels of granularity using compound task diagrams. A compound task coordinates lower level activities to perform a higher level activity. Process roles can be defined for activities. ECA defines the following three process roles
The ECA does not require the formal specification of services contracts for performers, but in most cases this would be encouraged.

The Events Model

The events model aims to support the specification of loosely coupled, event-driven applications. It defines
The entities model defines the structure of and relationships between business entities.

ECA Views

The ECA views are directly taken from the Reference Model of Open Distributed Processing RM-ODP: