ArchiMate 4 – Chapitre 3 : Structure du langage
Ce chapitre décrit la structure du langage de modélisation d'architecture d'entreprise ArchiMate. La définition détaillée et les exemples de son ensemble standard d'éléments et de relations suivent dans les Chapitres 4 à 12.
3.1. Principes de conception du langage
Un défi clé dans le développement d'un métamodèle général pour l'architecture d'entreprise est de trouver un équilibre entre la spécificité des langages pour les domaines d'architecture individuels et un ensemble général de concepts architecturaux.
The Open Group ArchiMate Forum a établi un ensemble de principes directeurs pour guider l'évolution du standard :
Le critère de conception le plus important est que le langage soit explicitement conçu pour être aussi petit que possible, tout en restant utilisable pour la plupart des cas d'usage architecturaux. Si une fonctionnalité ne bénéficie qu'à un faible pourcentage d'utilisateurs, elle peut être déprioritisée au profit de mécanismes de personnalisation ou d'extensions.
Les décisions de gouvernance doivent évaluer l'impact sur la majorité des parties prenantes. Les exigences spécialisées affectant seulement un faible pourcentage d'utilisateurs peuvent être déprioritisées. Des extensions personnalisées peuvent être nécessaires pour les cas d'usage spécialisés.
Si un besoin est déjà couvert de manière suffisante par un autre langage de modélisation, il est préférable de créer un mapping vers ce langage plutôt que d'incorporer ces fonctionnalités dans ArchiMate. Par exemple, un modèle de conception logicielle détaillé est mieux écrit en UML, et le concept de composant applicatif ArchiMate peut être utilisé pour faire le lien entre les deux modèles.
3.2. Le langage ArchiMate
Les concepts du langage ArchiMate sont organisés en domaines et en aspects.
3.2.1. Domaines du langage ArchiMate
Le langage ArchiMate Core définit un ensemble de domaines avec des éléments spécifiques de structure active, comportementaux et de structure passive. Quatre domaines sont définis dans le langage ArchiMate Core :
| Domaine | Description |
|---|---|
| Domaine Commun | Contient des éléments génériques (en particulier des éléments comportementaux) utilisables en combinaison avec des éléments de différents domaines |
| Domaine Métier | Représente l'organisation opérationnelle de l'entreprise, ses relations avec ses clients internes et externes, et ce qu'elle consomme et produit |
| Domaine Application | Représente les applications, comment elles coopèrent pour supporter le métier, et quelles données elles traitent |
| Domaine Technologie | Comprend à la fois les technologies de l'information et les technologies opérationnelles (physiques), les équipements, les matériaux et l'infrastructure |
En plus de ces domaines Core, le langage ArchiMate Full inclut :
| Domaine | Description |
|---|---|
| Domaine Motivation | Représente les motivations et les intentions des parties prenantes qui guident la conception et le changement d'architectures d'entreprise |
| Domaine Stratégie | Représente la direction stratégique et les choix de l'entreprise |
| Domaine Implémentation & Migration | Supporte la planification et l'exécution de programmes et projets de changement architecturaux |
3.2.2. Aspects du langage ArchiMate
Les éléments du langage ArchiMate sont organisés selon trois aspects :
┌──────────────────────┬────────────────────────┬─────────────────────┐
│ STRUCTURE ACTIVE │ COMPORTEMENT │ STRUCTURE PASSIVE │
├──────────────────────┼────────────────────────┼─────────────────────┤
│ Qui/Quoi exécute ? │ Que fait-on ? │ Quoi est affecté ? │
│ Acteurs, composants │ Processus, fonctions │ Objets, données │
│ interfaces, nœuds │ services, événements │ artefacts │
└──────────────────────┴────────────────────────┴─────────────────────┘
3.3. Structure de haut niveau du langage
La hiérarchie de concepts de haut niveau du langage ArchiMate distingue :
- Un élément est soit un élément de structure actif, soit un élément comportemental, soit un élément de structure passive, soit un élément composite
- Une relation est soit une relation structurelle, soit une relation de dépendance, soit une relation dynamique, soit une autre relation
Ces concepts sont abstraits ; ils ne sont pas destinés à être utilisés directement dans les modèles. Les concepts concrets sont des sous-types de ces concepts abstraits, définis dans les chapitres suivants.
3.4. Éléments de structure et de comportement
La hiérarchie principale des éléments de comportement et de structure du langage ArchiMate est présentée dans le fragment de métamodèle de la figure 3-4. Ce fragment définit ces éléments de manière générique et indépendante du domaine. Il est important de noter que la plupart de ces éléments (les cases blanches) sont des éléments abstraits du métamodèle; autrement dit, ils ne sont pas instanciés dans les modèles, mais servent uniquement à structurer le métamodèle. La notation présentée dans ce chapitre est donc la manière générique dont les spécialisations de ces éléments (c’est-à-dire les éléments des différents domaines d’architecture) sont représentées.
Ce fragment de métamodèle générique se compose de deux principaux types d’éléments : les éléments de structure (noms) et les éléments de comportement (verbes).
Les éléments de structure peuvent être subdivisés en éléments de structure actifs et passifs. Les éléments de structure actifs peuvent eux-mêmes être divisés en éléments de structure actifs externes (également appelés interfaces) et internes.
Il est important de noter que la désignation des éléments comme internes ou externes, telle qu’utilisée ici, ne signifie pas qu’ils sont internes ou externes à l’entreprise. Cette désignation se limite à l'élément spécifique qui exécute un processus ou une fonction (comportement interne), offre un service (comportement externe) ou fournit une interface (structure active externe). Elle peut donc englober, par exemple, des fédérations d'organisations, des individus, et des systèmes complexes, voire leurs composants les plus petits.
Les éléments de comportement se subdivisent en éléments de comportement interne, services (qui correspondent à des éléments de comportement externe) et événements.
3.4.1. Éléments de structure active
Les éléments de structure active représentent les entités capables d'exécuter un comportement. Un élément de structure active peut être interne (l'entité réalisant le comportement) ou externe (exposant un comportement à l'environnement via une interface).
Exemples : Acteur métier (Business Actor), Composant applicatif (Application Component), Nœud (Node).
3.4.2. Éléments de structure passive
Les éléments de structure passive représentent les objets sur lesquels un comportement est exécuté. Ils peuvent être internes (représentant la structure interne) ou externes (représentant les échanges avec l'environnement).
Exemples : Objet métier (Business Object), Objet de données (Data Object), Artefact (Artifact).
3.4.3. Éléments comportementaux
Les éléments comportementaux représentent les comportements ou actions exécutés par les éléments de structure active. Ils peuvent être internes ou externes (services exposés). Les éléments comportementaux sont liés aux éléments de structure active par la relation d'assignation.
Exemples : Processus métier, Fonction applicative, Service technologique.
3.4.4. Exemple
Un Acteur métier (structure active interne) peut être assigné à un Processus métier (comportement interne) qui produit un Service métier (comportement externe) utilisant un Objet métier (structure passive).
3.5. Abstraction dans le langage ArchiMate
Le langage ArchiMate permet trois niveaux d'abstraction :
Externe vs. Interne — La vue externe représente ce que le système doit faire pour son environnement (services), tandis que la vue interne représente comment il le fait (processus, fonctions, composants).
Comportement vs. Structure active — Sépare ce que le système doit faire (comportement) et comment les constituants du système (personnes, applications, infrastructure) doivent le faire.
Conceptuel, logique et physique — Trois niveaux d'abstraction issus de la modélisation de données :
- Conceptuel : les informations pertinentes pour le métier
- Logique : la structure logique pour la manipulation par les systèmes d'information
- Physique : la mise en œuvre physique réelle
3.6. Concepts et leur notation
Chaque concept ArchiMate a une représentation graphique standardisée. La notation utilise des formes géométriques spécifiques avec des pictogrammes (appelés « chevrons ») pour identifier le type d'élément. La couleur peut être utilisée pour distinguer les couches ou domaines (convention non normative).
3.7. Utilisation de l'imbrication
ArchiMate permet d'imbriquer des éléments dans d'autres éléments pour représenter des relations de composition ou d'agrégation. L'imbrication est un raccourci de notation qui représente une relation explicite entre l'élément conteneur et l'élément contenu.
3.8. Utilisation des couleurs et des indicateurs de notation
Bien que la spécification ArchiMate définisse une iconographie normative, l'utilisation des couleurs est une convention non normative. De nombreux outils et praticiens utilisent des conventions de couleur pour distinguer les domaines :
| Convention courante | Domaine |
|---|---|
| Jaune | Domaine Métier |
| Bleu | Domaine Application |
| Vert | Domaine Technologie |
| Violet/Mauve | Domaine Motivation |
| Orange | Domaine Stratégie |
| Rose/Saumon | Implémentation & Migration |