Cyberjustice Core Services
L’architecture de la plateforme présente les caractéristiques suivantes :
- séparation des responsabilités entre différents composants qui sont faiblement dépendants les uns des autres (faible couplage);
- spécialisation des composants autour d’un ensemble de responsabilités cohérentes (grande cohésion);
- grand potentiel de réutilisation des composants;
- possibilité de déployer, maintenir et mettre à jour les différents composants de la solution de manière indépendante;
- possibilité de distribuer les différents composants sur divers serveurs physiques;
- interfaces bien définies avec un minimum d’interdépendance;
- possibilité de déployer la solution dans des contextes différents (hétérogènes) tout en respectant des critères de performance adéquats;
- possibilité de vérifier et tester facilement l’architecture pour assurer la viabilité, le bon fonctionnement et l’intégrité de l’application.
Le Laboratoire a élaboré cette plateforme sur la base d’une architecture en couches. Elle ségrégue les responsabilités en trois grands blocs : la logique métier dans la plateforme Cyberjustice, la pérennité des données dans la couche de stockage des données et les besoins applicatifs dans la couche applicative.
Les « Cyberjustice Core Services » sont les services que la plateforme expose aux applications consommatrices comme l’applicationPARLe. La figure suivante présente une vue haut niveau des services offerts par la plateforme. Ces services sont regroupés en composants qui remplissent les fonctions requises dans un champ bien spécifique. Les boîtes roses représentent les principaux composants présents dans la plateforme.
Le noyau logiciel constitue l’ensemble des classes nécessaires pour le support des services de la plateforme. Sans entrer dans tous les détails, la principale responsabilité de chacun de ces services sera :
- Services des dossiers : gestion des dossiers judiciaires ou extra-judiciaires;
- Services des documents : gestion des documents, pièces jointes et enveloppes;
- Services des entités : gestion des Cours de justice ou des organisations offrant des services extra-judiciaires (comme des tribunaux administratifs);
- Services de messagerie : envoi des courriels de notification;
- Services utilisateurs : gestion des utilisateurs;
- Services de sécurité : gestions des autorisations;
- Services de référence : services référentiels et de localisation;
- Services des règles métier : services d’application des règles métiers selon le contexte
Le rôle des « entités de données » est de permettre l’échange de données entre les couches. Cette fonction est remplie en utilisant les cadres d’application Entity Framework et LINQ.
Le dépôt de données Cyberjustice est une base de données qui assure la pérennité des informations manipulées par les « Cyberjustice Core Services ».
Ce contenu a été mis à jour le 11 janvier 2016 à 13 h 49 min.