Architecture
La solution globale SAINet se compose de différentes parties dont les principales sont décrites par le schéma ci-dessous:
Une version plus avancée est également décrite.
C’est le composant central de la solution. Le serveur SAINet s’occupe de tous les traitements métiers:
- Authentification des utilisateurs
- Vérification des droits d’accès
- Récupération, filtre et tri des données
- Persistance et traitement des données
- Gestion des accès concurrents
- Gestion des mises à jour
- Génération de documents/listes
- Envoi de mails
Si le serveur SAINet n’est pas accessible, aucun utilisateur ne pourra utiliser la solution.
La dénomination serveur SAINet fait référence au programme SAINet et non à une machine en soi. Ce programme doit être installé sur une machine (un serveur) avec les autres éléments nécessaires à son fonctionnement (typiquement la base de données).
Le serveur SAINet peut être installé sur une machine au sein de l’entreprise à l’intérieur d’un réseau sécurisé ou sur un serveur dans le cloud. L’essentiel est qu’il soit accessible par les différents postes utilisateurs (voir ci-dessous).
L’installation du serveur SAINet requiert des connaissances techniques et doit être faite par un administrateur système.
Le serveur SAINet peut être configuré pour s’interfacer avec d’autres éléments externes qui ne sont pas mentionnés sur le schéma ci-dessus dont voici quelques exemples:
- Active Directory / LDAP, pour l’authentification des utilisateurs
- Microsoft Exchange, pour l’envoi de mail et gestion de calendrier
- Swissdec, pour les déclarations électroniques relatives aux salaires
- SIX, pour la synchronisation des clearing bancaires
Le serveur SAINet utilise le serveur applicatif Payara dans lequel sont déployés différents composants dont l’organisation est détaillée ci-dessous:
Il n’y a qu’un seul point d’entrée (EntryPointBean) dans lequel a lieu la vérification des droits d’accès de l’utilisateur. Si celui-ci a les droits nécessaires, sa requête est transférée à la partie métier (Business code / Tasks).
Aucun accès direct en base de données n’est effectué par le code métier. Toutes les requêtes passent à travers l’API Hibernate (DatabasePortal), ce qui permet d’abstraire la couche de persistence et de rendre l’application facilement compatible avec d’autres bases de données.
Le serveur SAINet expose une API qui permet à des applications externes de communiquer avec l’ERP. Un portail SAINet peut-être vu comme une application indépendante qui permet d’afficher et enregistrer certaines données au sein de l’ERP sans pour autant que l’utilisateur ait accès à la solution SAINet.
Typiquement, le portail parents du module structure d’accueil offre la possibilité aux parents d’enregistrer leurs données personnelles, fournir les documents nécessaires à leur inscription, faire des annonces ainsi que de suivre les différents événements concernant leurs enfants au sein de la structure.
Contrairement au serveur SAINet, un portail doit être accessible publiquement et doit également pouvoir accéder au serveur SAINet. Dans le cas où ce dernier n’est pas publique, il devra être installé dans une DMZ (plus de détails).
Les fichiers enregistrés au sein de l’application (scan de factures, templates, notes diverses) ne sont pas stockés directement en base de données, mais au sein de la GED. Cela consiste simplement en un dossier dans lequel le serveur SAINet peut lire/créer/modifier des fichiers et répertoires.
Généralement, la GED est stockée directement sur la même machine que le serveur SAINet. Toutefois, il est possible de la mettre sur un disque dur externe (ou un NAS). La seule contrainte et que celui-ci soit accessible en tant que dossier au travers du système d’exploitation.
Il est primordial que des sauvegardes régulières de la GED soient faites et stockées dans un autre emplacement !
Les fichiers en GED sont stockés sous forme de fichiers ZIP, ce qui permet de limiter l’espace disque utilisé.
Cet élément stocke toutes les données de la solution. Généralement, la base de données est installée sur la même machine que le serveur SAINet.
Il est primordial que des sauvegardes régulières de la base de données soient faites et stockées dans un autre emplacement !
Le serveur SAINet n’envoie pas directement de mail. Lorsqu’un mail doit être envoyé, le serveur crée un message (MIME) et le transfère au serveur SMTP configuré afin que ce dernier le traite et envoie effectivement le mail.
Si aucun serveur SMTP n’est configuré dans SAINet, la solution ne pourra pas envoyer de mail.
Un “client” SAINet fait référence au programme que la personne va utiliser pour accéder à SAINet.
La solution distingue 2 types d’utilisateurs:
- Les utilisateurs “métiers” qui ont besoin d’accéder uniquement à quelques fonctionnalités essentielles de la solution. Ces utilisateurs vont généralement se connecter à l’application au travers d’un navigateur Web (Chrome, Firefox).
- Les utilisateurs administratifs et/ou comptables ont besoin de beaucoup plus de fonctionnalités et doivent disposer d’une meilleure intégration avec d’autres outils (Word, Excel). Ces utilisateurs vont généralement utiliser le client riche SAINet.
L’accès à la solution à travers un navigateur (Chrome ou Firefox) est très simple: il suffit d’accéder à l’URL du serveur SAINet et à partir de là, une fois que l’utilisateur s’est authentifié, il aura un tableau de bord (tuiles) pour accéder aux fonctionnalités clés.
L’interface Web de SAINet étant responsive, il est possible d’utiliser un navigateur Web sur un poste standard ou sur un dispositif mobile, tels qu’une tablette ou un Smartphone.
Seules certaines parties de l’application sont disponibles au travers d’un navigateur Web. Typiquement, les parties administratives/comptables ne sont pas accessibles à travers cette interface.
Le client riche SAINet peut être vu comme un navigateur amélioré. Il s’agit d’un programme dédié à SAINet à installer sur la machine de l’utilisateur.
Comme les données entre le serveur et les clients SAINet peut potentiellement passer par un réseau publique, toutes les communications sont chiffrées (HTTPS).
Il est recommandé d’obtenir une adresse (DNS) et le certificat associé. Cela est notamment nécessaire pour l’accès avec un navigateur Web.