L’architecture structurée multicouche permet le découpage organique des sections qui composent un logiciel de gestion. Chacune des couches correspond à un découpage ayant des tâches bien précises. Le respect des relations entre les couches sont très importantes et suis les principes d’une architecture distribuée.

C’est également découpage des composants en fonction des rôles et responsabilité des chacune couches lors de la programmation. La méthodologie multicouche s’insère efficacement dans une architecture distribuée n-tiers. Elle permet de bien compartimenter chacune des couches pour assurer une structure organique efficace.

MakeSens est basé entièrement sur le principe de l'architecture structuré multicouche.

Couche de l'interface utilisateur

Cette couche représente l’interface utilisateur.  Elle peut être de différentes technologies.

  • Mobile
  • Web
  • Application de bureau

Les systèmes d’informations sont confrontées au changement de technologies d’interfaces utilisateur, soit par les différents fureteurs, les interfaces riches, les différents types d’appareil (tablette, téléphone intelligent, portable, etc..). Il est important d’optimiser la réutilisation le plus possible afin d’être en mesure de s’intégrer rapidement face aux besoins d’évolution et de changement.

Couche de présentation (logique)

La couche de présentation est chargée de la gestion des événements et de la synchronisation subséquente devant être effectuée entre le modèle (les données par le biais de la couche service) et la vue. Il reçoit donc les événements déclenchés par l’utilisateur et amorce les actions à effectuer.

Couche de présentation (Modèle de vue)

Le modèle de vue définie la structure nécessaire des données et inter-action entre l’interface utilisateur et les données du modèle métier.

Couche d'accès au métier

La couche d’accès au métier permet d’abstraire l’accès aux opérations des processus métier et de faciliter l’intégration.

Couche d'exposition du métier

La couche d’exposition créer l’abstraction avec la couche d’affaire pour exposer seulement les opérations accessibles.  Dans une architecture distribuée et contient la technologie de communication, comme par exemple WCF (windows communication foundation)

Couche de processus d'affaires

La couche métier correspond à la partie fonctionnelle de l’application. Son rôle est donc d’implémenter la logique de celle-ci et de décrire les opérations qu’elle effectue sur les données (le modèle). C’est également elle qui contient les règles de gestion et de contrôle du système, par exemple les règles de validation d’affaires. Cette couche reçoit des données d’entrée depuis la couche service et retourne les résultats appropriés suite au traitement métier via les processus d’affaires.

Couche de transformation (mapping)

La couche de transformation (mapping) est celle responsable de la traduction du modèle objet vers le support de données et vice-versa. Elle se veut une couche d’abstraction fournissant des entités en sortie (pour les opérations d’obtention) ou les recevant en entrée (pour les opérations d’ajout, modification et suppression). Ainsi, l’appelant de cette couche n’a pas à se soucier du support sur lequel les entités sont enregistrées ou de comment elles sont obtenues.

Couche du modèle

Contient l’ensemble de la structure de l’information du système. Le modèle doit être accessible par l’ensemble du système et elle transporte l’information en provenance de la couche de données transformé par la couche de transformation.

Couche support de données

La couche de données est la couche inférieure de l’architecture multicouche. Elle représente le support de données où sont conservées les entités. Tel que mentionné précédemment, il n’existe pas de restriction particulière quant à ce support de données. Il peut être, d’une base de données relationnelles, d’une base de données orientée-objet, d’un entrepôt de données, de fichiers sur disque, du résultat d’un appel à un service web externe, ou tout autre support de données permettant de réaliser la persistance des entités.