Outils pour utilisateurs

Outils du site


helloworld:architecture:notion

Ceci est une ancienne révision du document !


3 types d'architecture

Architecture fonctionnelle

Cela consiste à décrire les besoins d'un point de vue exclusivement métier sans aborder la partie technique du logiciel.

On peut déjà imaginer les briques logicielles avec leurs fonctions et leurs interactions mais toujours exclusivement du point de vue métier.

Architecture logicielle

Structure

Un logiciel est composé de sous-systèmes (facultatif), eux-mêmes composés de composants logiciels.

Un composant peut être :

  • un logiciel développé spécifiquement durant le projet de développement;
  • un logiciel réutilisé depuis un autre projet,
  • un progiciel sur étagère que l’on intègre,
  • un logiciel dont on utilise simplement les services mais qui reste extérieur au système,
  • un ou plusieurs fichiers / bases de données.

Un composant possède :

  • un aspect visible (interface),
  • des fonctionnalités,
  • des propriétés (ou contraintes ou exigences non fonctionnelles). Cela peut-être la volumétrie de la base de données, les besoins en bande passante, le délai maximum en temps d'exécution d'une fonction.

Aspects dynamiques

  • Global : scénarios d'exécution, coopération entre composants (ordre d'exécution des constituants, constituants en parallèle),
  • Constituant : contrainte d'exécution (parallélisation autorisée des fonctions, imposer un ordre d'exécution des fonctions).

Déploiement

Spécifier les contraintes de déploiement et la description de l'infrastructure : machine, OS, plateforme (java, …)

Architecture système

L'architecture logicielle est la partie de l'architecture système qui détaille la description des éléments applicatifs.

Une architecture système regroupe :

  • l'architecture logicielle : liste des composants à développer avec leurs interfaces (de programmation),
  • l'architecture technique : choix du langage de programmation et des briques logiciels (par exemple : quelle librairie gérera la persistance des données),
  • l'architecture physique : ordinateur ou tablette ? Choix des OS supportés ?

Architecture système

Composition d'une architecture

Définitions

Composant : les composants sont visibles des autres composants exclusivement à travers des interfaces.

Interface : une interface est attachée à un port de communication du composant. Il existe deux types d'interface : le cercle représente l'interface offerte (les différentes méthodes à disposition) et le demi cercle l'interface requise (le prototype des méthodes doit correspondre à l'interface offerte).

Port : une interface est attachée à un port du composant, noté par un carré. Cela peut être l'exécution de la méthode en local ou via une API distante ou la possibilité d'avoir les deux à la fois.

Connecteur : les composants interagissent donc sur des ports, par le biais de connecteurs, et via des interfaces.

Artefact : la manifestation concrète d’un composant est appelée artefact. C’est une instance concrète du composant déployée dans l’environnement d’exécution. Voir UML

Dépendances :

  • de service : pour obtenir un service ou une information,
  • de réalisation : implémentation par héritage,
  • de manifestation : nécessite un artefact pour s'exécuter / s'implémenter.
helloworld/architecture/notion.1546820109.txt.gz · Dernière modification : de root