# Capella (ingénierie)

Capella est une solution open source d'ingénierie système basée sur les modèles (Model-Based Systems Engineering ou MBSE). Hébergée par la Fondation Eclipse, cette solution fournit un processus outillé permettant la modélisation graphique des architectures systèmes, logicielles ou matérielles, et ce, en conformité avec les principes et recommandations définis par la méthode Arcadia.

## Utilisation

Capella est principalement utilisé pour la modélisation de systèmes complexes et de systèmes critiques.

## Historique

Capella a été spécifié, conçu et développé par Thales à partir de 2007.
L'objectif est de contribuer à la transformation de l'ingénierie, en fournissant un environnement d'ingénierie proposant une démarche basée sur les modèles, plutôt que centrée documents, piloté par un processus, et offrant par construction les moyens d'assurer une co-ingénierie effective. Les experts opérationnels de l'ingénierie ont pour cela défini un langage unifié pour la modélisation des architectures dans le groupe et spécifier l'outillage associé, Capella.
Capella propose une ergonomie similaire aux outils PowerPoint / Visio et Excel. L'environnement qui en résulte est de fait intuitif et permet aux ingénieurs de se concentrer sur la définition de leurs architectures plutôt que sur l'apprentissage et l'exploitation de langages génériques complexes de modélisation tels UML ou SysML pour capturer leurs besoins. Dédié à la méthode sous-jacente Arcadia, il guide également les ingénieurs dans leurs activités, ce que ne proposent pas les outils de modélisations génériques.
En 2015, la solution a été mise en open source dans le groupe de travail industriel PolarSys$^,$ de la Fondation Eclipse au travers du projet collaboratif français Clarity soutenu par BPI France.
Capella dispose de son propre cycle de vie. Une version majeure, apportant de nouvelles fonctionnalités, est livrée chaque fin d'année tandis que plusieurs versions dites mineures, corrigeant des bogues notamment, peuvent être livrées tout au cours de l'année.
En 2019, Le groupe de travail Polarsys a pris fin et Capella est devenu un projet à part entière de la fondation Eclipse.

## Principes

L'atelier dispose de son propre métamodèle, qui définit les concepts du langage que peut manipuler l'utilisateur au travers d'un projet Capella, c'est-à-dire au travers d'un modèle Capella, instance de ce métamodèle. Ensuite, l'utilisateur peut visualiser ce modèle sous différents aspects, selon différentes préoccupations, au travers de diagrammes. L'utilisateur peut également, via la palette associée aux diagrammes, créer de nouveaux éléments de modèle. Un projet Capella est composé d'une partie modèle (« melodymodeller ») et d'une partie graphique (« aird »).
À l'ouverture ou à la création d'un projet Capella, l'interface de l'atelier est présentée à l'utilisateur. Elle contient différentes zones :
* La zone « navigateur méthodologique » qui expose à l'utilisateur les différentes phases d'ingénierie pour la modélisation de son architecture, et des raccourcis pour créer de nouveaux diagrammes en lien avec la phase d'ingénierie considérée ; cette vue permet également de faciliter la « transition » entre phases d'ingénierie, de façon à créer les liens de réalisation entre phases et les éléments associés ;
* La zone « navigateur sémantique » permettant de naviguer aisément dans le modèle : pour tout élément sélectionné dans la zone « projet » ou sur un diagramme, la zone navigateur sémantique va présenter à l'utilisateur l'ensemble des références autour de cet élément, c'est-à-dire ses relations de contenance ou de référence ainsi que l'ensemble des diagrammes dans lequel l'élément est impliqué ;
* La zone « projet », plus classique, qui est une vue arborescente du modèle Capella, et qui contient l'ensemble des éléments sémantiques et des diagrammes créés par l'utilisateur ;
* La zone « diagramme », qui présente une vue graphique d'un extrait du modèle et permet d'éditer le modèle en termes de création, modification, suppression d'éléments, mais aussi de modification de l'organisation ou l'apparence d'éléments dans le diagramme ;
* La zone de « propriétés » qui affiche l'ensemble des propriétés données pour un élément sélectionné dans le modèle ou dans un diagramme.

## Diagrammes

L'utilisateur peut au travers de Capella manipuler plusieurs types de diagramme. La représentation des éléments dans les diagrammes est régie par un code couleur propre à chaque phase d'ingénierie. Exemple : dans la phase « Architecture Logique », les composants sont de couleur bleue.
Quelques exemples de diagrammes :
* Capacités Opérationnelles
* Architecture Opérationnelle
* Architecture Logique
* Architecture Physique
* Scénario Fonctionnel
* Diagramme de Classes

## Extensibilité

L'atelier peut être enrichi ou spécialisé pour un besoin métier donné, conformément au concept de « Point de Vue », défini par le standard ISO/IEC 42010 (en). Ces extensions apportent, par exemple :
* la capacité à gérer de nouvelles informations qui seraient dédiées à un besoin d'ingénierie spécifique, avec leur outillage associé. Exemple : des propriétés non-fonctionnelles telles des contraintes de temps pour des analyses de performances, ou des contraintes liés à la sûreté de fonctionnement ou à la sécurité, au coût d'un composant pour des analyses de coûts, à sa masse, etc. ;
* la capacité à spécialiser la démarche d'ingénierie avec des styles architecturaux spécifiques ;
* la capacité à ajouter de nouvelles fonctionnalités à l'atelier, par exemple un export documentaire ou une spécialisation de la transition système/sous-système.

## Compatibilité

Capella est supporté sur des environnements basés sur Java 7 et plus sur les plates-formes suivantes :
* GNU/Linux
* Mac OS X
* Windows XP, Windows Vista, Windows 7

## Dépendances

Capella est basé sur :
* Sirius
* Eclipse
* Kitalpha : une solution open source de la Fondation Eclipse.
* Eclipse EMF Diff/Merge

## Communauté et communication

La communauté est réunie autour du site web Capella. Ce site web héberge la documentation.
Capella a été présenté lors de divers événements :
| Conférence | Titre de la présentation | Date | Lieu |
| Incose 2016 | Simplifying (and enriching) SysML to perform functional analysis and model instances | 18/06/2016 | Édimbourg |
| EclipseCon France | Hands-On Systems Modeling with ARCADIA / Capella | 07/06/2016 | Toulouse |
| Dutch Eclipse Day | Model-based engineering with Capella: Statut and perspectives | 18/04/2016 | Eindhoven |
| EclipseCon North America | Mars exploration guided by PolarSys | 07/03/2016 | Reston |
| ERTS | MBSE with ARCADIA Method and Capella Tool | 27/01/2016 | Toulouse |
| MODELS | CLARITY: Open-Sourcing the Model-Based Systems Engineering Solution Capella | 29/09/2015 | Ottawa |
| INCOSE International Symposium | Implementing the MBSE Cultural Change: Organization, Coaching and Lessons Learned | 14/07/2015 | Seattle |
| INCOSE International Symposium | From initial investigations up to large-scale rollout of an MBSE method and its supporting workbench: the Thales experience | 14/07/2015 | Seattle |
| EclipseCon France | Capella time-lapse: A system architecture model in 30 minutes | 25/06/2015 | Toulouse |
| EclipseCon France | Systems Modeling with the ARCADIA method and the Capella tool | 24/06/2015 | Toulouse |
| Nouvelle France Industrielle | Présentation du projet Clarity et de l'atelier Capella à Emmanuel Macron | 18/05/2015 | École des Mines de Nantes |
| EclipseCon North America | Capella time-lapse: A system architecture model in 30 minutes | 12/03/2015 | San Francisco |
| EclipseCon Europe | Capella on the field: Model-based system engineering use cases | 29/10/2014 | Ludwigsbourg |
| Model-Based System Engineering (MBSE) Symposium | The Challenges of Deploying MBSE Solutions | 28/10/2014 | Canberra |
| Model-Based System Engineering (MBSE) Symposium | Arcadia and Capella in the Field | 27/10/2014 | Canberra |
| EclipseCon France | Arcadia / Capella, a field-proven modeling solution for system and software architecture engineering | 19/06/2014 | Toulouse |
| EclipseCon North America | Arcadia / Capella, a field-proven modeling solution for system and software architecture engineering | 20/03/2015 | San Francisco |
| Complex Systems Design & Management (CSDM) | Model-Based Collaboration for System, Software and Hardware Engineering | 04/12/2013 | Paris |