Quick Learn ArchiMate Part 7 – Application Layer Concepts and Relationships

The Business, Application, and Technology layers are each divided into three types of concepts: passive structure, behavior, and active structure. Passive structure elements are written to and read by active structure elements. Behavior elements describe transactions between active and passive structure elements, as well as among active structure elements themselves. Examples of passive structure elements include contracts, data objects, and products. Participants, roles, collaborations, and other elements represent active structure. Functions, processes, and events are examples of behavior structure elements. The following article covers the Application Layer concepts. The Application Layer supports the Business Layer through application services, which are realized by (software) application components.

Application Component Concepts

An application component is defined as a modular, deployable, and replaceable part of a software system that encapsulates its behavior and data and exposes these through a set of interfaces. The name of an application component is best a noun.

Application Component Notation

Relationships Between Application Components, Functions, Interfaces, and Collaborations

  • An application component performs one or more application functions.
  • It encapsulates its contents: its functionality can only be accessed through a set of application interfaces.
  • Collaborating application components are connected via application collaborations.

Application Component Example

In an ArchiMate diagram, this is shown as follows:

Financial Application Component Example

  • The Financial Application is modeled as an application component composed of two sub-components: one for Accounting and one for Billing.
  • Each provides application services to the environment.
  • These services are accessible via a shared Accounting and Billing application interface, which is part of the Financial Application.

Application Collaboration Concepts

An application collaboration is defined as a collection of two or more application components that work together to perform collective behavior. An application collaboration is an active structure element. The name of an application collaboration is best a noun.

Application Collaboration Notation

An application collaboration specifies which components collaborate to perform certain tasks. It is a specialization of a component that aggregates two or more (collaborating) application components and has the following characteristics:

  • Application collaborations typically model logical or temporary collaborations of application components and do not exist as separate entities in the enterprise.
  • Collaborative behavior can be assigned to one or more application interactions or business interactions, which model the associated behavior.
  • An application interface can be used by an application collaboration, or an application collaboration can be composed of an application interface.

Application Collaboration Example

The ArchiMate diagram is shown below:

Application Collaboration Example

  • Two components collaborate in transaction management: an Accounting component and a Billing component.
  • This collaboration performs the application interaction “Manage Transactions.”

Application Interface Concepts

An application interface is defined as a point of access where application services are made available to users or other application components. The name of an application interface is best a noun.

Application Interface Notation

Application Interface Example

The ArchiMate diagram below shows an application interface provided for exchanging transaction data, along with a Billing component that requires such an interface.

Application Interface Example

  • An application interface specifies how other components can access a component’s functionality (provided interface).
  • Application interfaces expose application services to the environment.
  • The same application service may be exposed through different interfaces.

Behavior Concepts

Application Function

A behavior element that groups automated behavior that can be performed by an application component.

Application Function Notation

Application Interaction

A behavior element that describes the behavior of an application collaboration.

Application Interaction Notation

Application Service

A service that exposes automated behavior.

Application Service Notation

Application Function Concepts

An application function describes the internal behavior of an application component. It is defined as a behavior element that groups automated behavior that can be performed by an application component. The name of an application function is best a verb ending in “-ing”; for example, “Accounting.”

Application Function Notation

If the behavior of an application function is externally visible, this is achieved through one or more services. An application function can realize one or more application services. Application functions abstract from their realization. Only the necessary behavior is specified, with the following characteristics:

  • An application function can use application services and infrastructure services of other application functions.
  • An application function can access data objects.
  • An application component can be assigned to an application function (meaning the application component performs the application function).

Application Function Example

The ArchiMate diagram is shown below:

Application Function Example

  • The internal behavior of the Financial Application component is modeled as an application function consisting of two sub-functions: Accounting and Billing.
  • These application functions realize application services provided to application users.

Application Interaction Concepts

An application interaction is defined as a behavior element that describes the behavior of an application collaboration. The name of an application interaction is best a verb.

Application Interaction Notation

  • An application interaction describes the collective behavior performed by components participating in an application collaboration (structural concept).
  • An application collaboration (structural concept) can be assigned to an application interaction.
  • An application interaction can realize application services.
  • An application interaction can use application services and infrastructure services (externally).
  • An application interaction can access data objects.

Application Interaction Example

The ArchiMate diagram is shown below:

Application Interaction Example

  • An Accounting component and a Billing component in a financial system collaborate to form an interaction called Manage Financial Transactions.
  • This is modeled as an application interaction assigned to the collaboration between the two components.

Application Service Concepts

An application service exposes the functionality of a component to its environment and is defined as a service that exposes automated behavior. From the environment’s perspective, an application service should be meaningful. The name of an application service is best a verb ending in “-ing”; for example, “Transaction Processing.” Names that explicitly include the word “service” can also be used.

Application Service Notation

  • An application service can be used by business processes, business functions, business interactions, or application functions.
  • An application function can realize an application service.
  • An application interface can be assigned to an application service.
  • An application service can access data objects.

Application Service Example

The ArchiMate diagram is shown below:

Application Service Example

Illustration

  • The Transaction Processing (application-to-application) service is realized by the Accounting application function, and other components can access it through the Transaction Processing application programming interface (API).
  • This service is used by the Billing application function performed by the Billing component.
  • The Billing application function provides a (application-to-business) function called Bill Creation, which can be used to support business processes and is accessible by business roles through a Billing Screen as an application-to-business interface.

Passive Structure Concepts

Data Object

A passive element suitable for automated processing.

Data Object Notation

Data Object Concepts

A data object is defined as a passive element suitable for automated processing that can be accessed by application functions, application interactions, or application services. A data object can realize a business object and can also be realized by an artifact. A data object may have association, specialization, aggregation, or composition relationships with other data objects. The name of a data object is best a noun.

Data Object Notation

Data Object Example

The ArchiMate diagram below shows two application functions collaborating via an application service, exchanging a data object containing transaction data.

Data Object Example

Other ArchiMate Resources: