Die Geschäfts-, Anwendungs- und Technologieschichten sind jeweils in drei Arten von Konzepten unterteilt: passive Struktur, Verhalten und aktive Struktur. Passive Strukturelemente werden von aktiven Strukturelementen beschrieben und gelesen. Verhaltenselemente beschreiben Transaktionen zwischen aktiven und passiven Strukturelementen sowie unter den aktiven Strukturelementen selbst. Beispiele für passive Strukturelemente sind Verträge, Datenobjekte und Produkte. Teilnehmer, Rollen, Zusammenarbeit und andere Elemente repräsentieren aktive Struktur. Funktionen, Prozesse und Ereignisse sind Beispiele für Verhaltenselemente. Der folgende Artikel behandelt die Konzepte der Anwendungsschicht. Die Anwendungsschicht unterstützt die Geschäfts- und Technologielayer durch Anwendungsdienste, die durch (Software-)Anwendungskomponenten realisiert werden.
Konzepte von Anwendungskomponenten
Eine Anwendungskomponente ist definiert als modulare, bereitstellbare und austauschbare Einheit eines Software-Systems, die ihr Verhalten und ihre Daten kapselt und diese über eine Reihe von Schnittstellen verfügbar macht. Der Name einer Anwendungskomponente sollte am besten ein Substantiv sein.

Beziehungen zwischen Anwendungskomponenten, Funktionen, Schnittstellen und Zusammenarbeiten
- Eine Anwendungskomponente führt eine oder mehrere Anwendungsfunktionen aus.
- Sie kapselt ihren Inhalt: ihre Funktionalität kann nur über eine Reihe von Anwendungsschnittstellen erreicht werden.
- Zusammenarbeitende Anwendungskomponenten sind über Anwendungszusammenarbeit verbunden.
Beispiel für eine Anwendungskomponente
In einem ArchiMate-Diagramm wird dies wie folgt dargestellt:

- Die Finanzanwendung wird als Anwendungskomponente modelliert, die aus zwei Unterkomponenten besteht: einer für Buchhaltung und einer für Rechnungsstellung.
- Jede stellt Anwendungsdienste für die Umgebung bereit.
- Diese Dienste sind über eine gemeinsame Buchhaltungs- und Rechnungsstellungsschnittstelle zugänglich, die Teil der Finanzanwendung ist.
Konzepte der Anwendungszusammenarbeit
Eine Anwendungszusammenarbeit ist definiert als Sammlung von zwei oder mehr Anwendungskomponenten, die gemeinsam kollektives Verhalten ausführen. Eine Anwendungszusammenarbeit ist ein aktives Strukturelement. Der Name einer Anwendungszusammenarbeit sollte am besten ein Substantiv sein.

Eine Anwendungszusammenarbeit legt fest, welche Komponenten zusammenarbeiten, um bestimmte Aufgaben zu erfüllen. Sie ist eine Spezialisierung eines Komponenten, die zwei oder mehr (zusammenarbeitende) Anwendungskomponenten aggregiert und folgende Eigenschaften aufweist:
- Anwendungszusammenarbeit modelliert typischerweise logische oder temporäre Zusammenarbeit von Anwendungskomponenten und existiert nicht als eigenständige Entität in der Organisation.
- Kooperatives Verhalten kann einer oder mehreren Anwendungsaustauschvorgängen oder Geschäftsinteraktionen zugeordnet werden, die das zugehörige Verhalten modellieren.
- Eine Anwendungsschnittstelle kann von einer Anwendungszusammenarbeit genutzt werden, oder eine Anwendungszusammenarbeit kann aus einer Anwendungsschnittstelle bestehen.
Beispiel für eine Anwendungszusammenarbeit
Das ArchiMate-Diagramm ist unten dargestellt:

- Zwei Komponenten arbeiten bei der Transaktionsverwaltung zusammen: eine Buchhaltungskomponente und eine Rechnungsstellungskomponente.
- Diese Zusammenarbeit führt die Anwendungsaustauschvorgänge „Transaktionen verwalten“ aus.
Konzepte der Anwendungsschnittstelle
Eine Anwendungsschnittstelle ist definiert als Zugangspunkt, an dem Anwendungsdienste für Benutzer oder andere Anwendungskomponenten verfügbar gemacht werden. Der Name einer Anwendungsschnittstelle sollte am besten ein Substantiv sein.

Beispiel für eine Anwendungsschnittstelle
Das folgende ArchiMate-Diagramm zeigt eine Anwendungsschnittstelle, die zum Austausch von Transaktionsdaten bereitgestellt wird, zusammen mit einer Rechnungsstellungskomponente, die eine solche Schnittstelle benötigt.

- Eine Anwendungsschnittstelle legt fest, wie andere Komponenten auf die Funktionalität einer Komponente zugreifen können (bereitgestellte Schnittstelle).
- Anwendungsschnittstellen machen Anwendungsdienste für die Umgebung sichtbar.
- Derselbe Anwendungsdienst kann über verschiedene Schnittstellen verfügbar gemacht werden.
Verhaltenskonzepte
Anwendungsfunktion
Ein Verhaltenselement, das automatisiertes Verhalten gruppiert, das von einer Anwendungskomponente ausgeführt werden kann.

Anwendungskollaboration
Ein Verhaltenselement, das das Verhalten einer Anwendungskollaboration beschreibt.

Anwendungsdienst
Ein Dienst, der automatisiertes Verhalten offenlegt.

Konzepte zur Anwendungsfunktion
Eine Anwendungsfunktion beschreibt das interne Verhalten einer Anwendungskomponente. Sie wird als ein Verhaltenselement definiert, das automatisiertes Verhalten gruppiert, das von einer Anwendungskomponente ausgeführt werden kann. Der Name einer Anwendungsfunktion sollte am besten ein Verb mit der Endung „-ing“ sein; beispielsweise „Accounting“.

Wenn das Verhalten einer Anwendungsfunktion extern sichtbar ist, wird dies durch einen oder mehrere Dienste erreicht. Eine Anwendungsfunktion kann einen oder mehrere Anwendungsdienste realisieren. Anwendungsfunktionen abstrahieren von ihrer Realisierung. Es werden nur die notwendigen Verhaltensweisen angegeben, mit folgenden Eigenschaften:
- Eine Anwendungsfunktion kann Anwendungsdienste und Infrastrukturdienste anderer Anwendungsfunktionen nutzen.
- Eine Anwendungsfunktion kann auf Datenobjekte zugreifen.
- Eine Anwendungskomponente kann einer Anwendungsfunktion zugeordnet werden (was bedeutet, dass die Anwendungskomponente die Anwendungsfunktion ausführt).
Beispiel für eine Anwendungsfunktion
Das ArchiMate-Diagramm ist unten dargestellt:

- Das interne Verhalten der Anwendungskomponente Finanzanwendung wird als Anwendungsfunktion mit zwei Unterkomponenten modelliert: Accounting und Billing.
- Diese Anwendungsfunktionen realisieren Anwendungsdienste, die Anwendungsnutzern zur Verfügung gestellt werden.
Konzepte zur Anwendungskollaboration
Eine Anwendungskollaboration wird als ein Verhaltenselement definiert, das das Verhalten einer Anwendungskollaboration beschreibt. Der Name einer Anwendungskollaboration sollte am besten ein Verb sein.

- Eine Anwendungskollaboration beschreibt das gemeinsame Verhalten, das von Komponenten ausgeführt wird, die an einer Anwendungskollaboration teilnehmen (strukturkonzept).
- Eine Anwendungskollaboration (strukturkonzept) kann einer Anwendungskollaboration zugeordnet werden.
- Eine Anwendungskollaboration kann Anwendungsdienste realisieren.
- Eine Anwendungskollaboration kann Anwendungsdienste und Infrastrukturdienste (extern) nutzen.
- Eine Anwendungskollaboration kann auf Datenobjekte zugreifen.
Beispiel für eine Anwendungskollaboration
Das ArchiMate-Diagramm ist unten dargestellt:

- Ein Accounting- und ein Billing-Modul in einem Finanzsystem kooperieren, um eine Interaktion namensVerwaltung von Finanztransaktionen.
- Dies wird als eine Anwendungskollaboration modelliert, die der Zusammenarbeit zwischen den beiden Komponenten zugeordnet ist.
Konzepte der Anwendungsdienstleistung
Ein Anwendungsdienst macht die Funktionalität einer Komponente für ihre Umgebung sichtbar und wird als ein Dienst definiert, der automatisiertes Verhalten offenlegt. Aus Sicht der Umgebung sollte ein Anwendungsdienst sinnvoll sein. Der Name eines Anwendungsdienstes sollte am besten ein Verb mit der Endung „-ing“ sein; beispielsweise „Transaktionsverarbeitung“. Auch Namen, die das Wort „Dienst“ explizit enthalten, können verwendet werden.

- Ein Anwendungsdienst kann von Geschäftsprozessen, Geschäftsfunktionen, Geschäftsinteraktionen oder Anwendungsfunktionen genutzt werden.
- Eine Anwendungsfunktion kann einen Anwendungsdienst realisieren.
- Eine Anwendungsschnittstelle kann einem Anwendungsdienst zugewiesen werden.
- Ein Anwendungsdienst kann auf Datenobjekte zugreifen.
Beispiel für einen Anwendungsdienst
Das ArchiMate-Diagramm ist unten dargestellt:

Abbildung
- Der Dienst Transaktionsverarbeitung (Anwendung-zu-Anwendung) wird durch die Anwendungsfunktion Buchhaltung realisiert, und andere Komponenten können darauf über die Schnittstelle (API) für Transaktionsverarbeitung zugreifen.
- Dieser Dienst wird von der Anwendungsfunktion Rechnungsstellung genutzt, die von der Komponente Rechnungsstellung ausgeführt wird.
- Die Anwendungsfunktion Rechnungsstellung bietet eine Funktion namens Rechnungserstellung (Anwendung-zu-Geschäft), die zur Unterstützung von Geschäftsprozessen genutzt werden kann und von Geschäftsrollen über einen Rechnungsbildschirm als Anwendung-zu-Geschäft-Schnittstelle zugänglich ist.
Konzepte der passiven Struktur
Datenobjekt
Ein passives Element, das für die automatisierte Verarbeitung geeignet ist.

Konzepte des Datenobjekts
Ein Datenobjekt wird als ein passives Element definiert, das für die automatisierte Verarbeitung geeignet ist und von Anwendungsfunktionen, Anwendungsisinteraktionen oder Anwendungsdiensten erreicht werden kann. Ein Datenobjekt kann ein Geschäftsobjekt realisieren und auch durch ein Artefakt realisiert werden. Ein Datenobjekt kann Assoziations-, Spezialisierungs-, Aggregations- oder Zusammensetzungsbeziehungen zu anderen Datenobjekten haben. Der Name eines Datenobjekts sollte am besten ein Substantiv sein.

Beispiel für ein Datenobjekt
Das folgende ArchiMate-Diagramm zeigt zwei Anwendungsfunktionen, die über einen Anwendungsdienst zusammenarbeiten und ein Datenobjekt mit Transaktionsdaten austauschen.

Weitere ArchiMate-Ressourcen: