Skip to content

Dossier d'architecture technique

Préambule

La solution de gestion de courriers développée par BlueDolmen repose sur Alfresco. Elle nécessite un ensemble de logiciels qui interopèrent de façon à produire le résultat escompté.

Architecture technique

Architecture logicielle

  • OS : Windows, Linux, Mac... toute plateforme sur laquelle Alfresco fonctionne
  • Java : 1.8.0_31
  • Alfresco 5, Community Edition ou Enterprise Edition, pour la GED
  • Alfresco.war, pour l’entrepôt documentaire
  • Share.war, pour la navigation dans la GED
  • Blue Courrier, pour les IHM et les mécanismes de gestion du courrier
  • ExtJS 4.2, pour les fondations de l’IHM

Les contributions réalisées autour des outils de dématérialisation et de statistiques sont présentées ici à titre d'exemple. Attention, ces contributions ne sont pas supportées par BlueDolmen et aucune garantie de quelque nature que ce soit n'est assurée :

  • Abbyy Flexi Capture, pour la dématérialisation
  • ELK, pour les statistiques

Logiciels

BlueCourrier

BlueCourrier est la solution de gestion de courriers développée par la société BlueDolmen.

BlueCourrier s’appuie sur Alfresco et sur le moteur de processus Activiti intégré dans Alfresco. Activiti est devenu le moteur de workflow par défaut d’Alfresco. Il ne nécessite pas de configuration particulière pour être activé. A chaque nouvelle version d'Alfresco, des éléments concernant Alfresco ou Activiti sont susceptibles d'évoluer et d'empêcher le bon fonctionnement de BlueCourrier.

Version d'Alfresco supportées

BlueCourrier Enterprise Edition est ainsi validée sur les versions suivantes d'Alfresco :

  • Alfresco Community Edition :
  • Alfresco CE 5.0.c, Alfresco CE 5.0.d
  • Alfresco Enterprise Edition :
  • Alfresco EE 5.0.1, Alfresco EE 5.0.2

Des versions précédentes d'Alfresco ont été intégrées avec succès par certains partenaires intégrateurs de BlueDolmen. Nous vous invitons à vous rapprocher du service commercial de BlueDolmen pour avoir plus d'informations à ce sujet.

Environnement de développement

BlueCourrier est open source. Cela signifie que vous pouvez effectuer des modifications pour répondre aux besoins de vos clients.

L’environnement de développement est composé des éléments suivants :

  • Un compilateur Java correspondant à la version d’Alfresco utilisé
  • Le SDK Alfresco
  • ExtJS 4.2

Ces éléments sont seuls nécessaires à la compilation des sources Blue Courrier qui seront fournis par BlueDolmen.

Les éléments finalement produits sont constitués :

  • De fichiers amps qui seront déployés sur Alfresco
  • De fichiers amps qui seront déployés sur Alfresco Share
  • D’un fichier war pour ExtJS qui sera déployé sur Tomcat

Le développement de Blue Courrier respecte les bonnes pratiques préconisées par Alfresco. Les éléments ci-dessus sont notamment non intrusifs et se déploient sans difficulté. Si vous avez réalisé d'autres développements, le déploiement s'effectuera normalement dans la mesure où les développements réalisés précédemment respectent également les bonnes pratiques.

Alfresco

Alfresco Community Edition 5 ou Alfresco Enterprise Edition 5 est la solution de GED développée par la société éponyme. Alfresco peut fonctionner avec différentes bases de données (PostGreSQL, MySQL, Oracle...).

Le serveur Alfresco installé dans votre organisation présente les caractéristiques suivantes :

  • Alfresco XXX (Community|Enterprise) Edition 5.X.Y
  • Base de données : Postgresql X.Y.Z
  • Java : 1.8.0_31

Les services activés sur Alfresco sont :

  • Planification
  • Tranformation documentaire OpenOffice/LibreOffice
  • Workflow Activiti

ExtJS 4.2

ExtJS4.2 est un framework javascript développé par la société Sencha. La version installée et utilisée par BlueCourrier est la version open source. Aucun support d'ExtJS n'est assuré par BlueDolmen. Si vous souhaitez un support sur ExtJS, nous vous invitons à acquérir la version supportée Enterprise de ExtJS (http://www.sencha.com).

Contributions

Solution de dématérialisation

BlueCourrier peut s'interfacer en amont via différents mécanismes avec une solution de dématérialisation. Cette intégration peut aller d'un simple OCR à un ICR sophistiqué capable de reconnaître l'écriture manuscrite. Cette dernière solution permet notamment d'accélérer la saisie via le remplissage manuel d'une farde de distribution en lieu et place d'un remplissage via l'application qui peut être plus long.

Des partenaires intégrateurs de BlueDolmen ont travaillé avec succès avec les solutions suivantes :

  • Abbyy
  • Kofax
  • Ephesoft
  • ...

Ces solutions permettent de fonctionner avec tout type de matériel : des scanners grand public aux scanner professionnels en passant par les bons vieux MFP.

Nous vous invitons à contacter le service commercial de BlueDolmen pour avoir plus d'information sur ces solutions ou sur les partenaires les ayant mises en oeuvre.

Les logiciels directement intégrés avec les scanners grand publics permettent de démarrer rapidement à moindre coût (ScandAll livré avec la gamme Fujitsu fi-6130z).

Statistiques

BlueCourrier peut s'intégrer avec différentes solutions de restitution et de reporting afin de fournir aux administrateurs de la solution des statistiques sur l'utilisation du système.

Ces solutions sont :

  • Business Objects ;
  • Crystal Reports ;
  • QlikView ;
  • Tableau Software ;
  • Pentaho ;
  • ELK (Elasticsearch/Logstash/Kibana) ;
  • ...

Une contribution a été faite avec ELK (Elasticsearch/Logstash/Kibana). Elle est plus particulièrement décrite dans l'annexe correspondante à la fin de ce document.

Architecture réseau

L’architecture réseau de votre organisation est constituée des éléments suivants :

  • Firewall ;
  • Reverse Proxy ;
  • Annuaire (OpenLDAP, Active Directory...), pour la synchronisation et l’authentification des utilisateurs. Les groupes peuvent ou non être repris (dans ce dernier cas, ils doivent être créés directement dans Alfresco par le Service Informatique) ;
  • Messagerie (Exchange, Zimbra...), pour la gestion de la messagerie

Schéma

L’architecture à mettre en place dans le cadre de la dématérialisation du courrier est généralement sur le réseau interne de l'organisation, et ne sera donc pas impactée par le firewall ni par le reverse proxy.

Serveurs techniques

Les serveurs techniques regroupent les serveurs fournissant des services de bas niveau, généralement d'un seul type ou d'une seule classe.

Firewall

Le Firewall de votre organisation n'impacte pas l'architecture mise en place dans le cadre du projet.

Reverse Proxy

Le reverse proxy n'impacte pas l'architecture mise en place dans le cadre du projet.

Annuaire Ldap

L'accès à l'annuaire par Alfresco nécessite les informations suivantes :

  • Adresse IP (ou nom du serveur) ;
  • Branche de l’annuaire où sont stockés les utilisateurs ;
  • Branche de l’annuaire où sont stockés les groupes (si synchronisation des groupes) ;
  • Utilisateur ayant les droits de lecture sur ces branches permettant d'authentifier les utilisateurs et d’extraire les informations pour synchroniser les utilisateurs (éventuellement les groupes).

Messagerie

Les informations suivantes sont nécessaires pour permettre l'envoi de mail depuis le serveur Alfresco afin de notifier les utilisateurs de tâches leur incombant :

  • Adresse IP du serveur de mail
  • Utilisateur permettant l’envoi de mail via cette messagerie
  • Mot de passe si nécessaire

Serveurs applicatifs

Alfresco

Une installation type de BlueCourrier repose sur une installation type d'Alfresco. Nous préconisons une architecture de ce type :

  • Alfresco
    • Un serveur pour la base de données
    • Un serveur pour BlueCourrier + Alfresco (Repository + Share)
  • Dématérialisation
    • Fonction de la solution choisie
  • Statistiques
    • Un serveur pour ELK
Protocoles

Alfresco est accessible par de multiples protocoles.

Les protocoles suivants sont disponibles sur Alfresco :

  • CIFS : pour l'accès via l'explorateur de fichiers ;
  • FTP : pour l'accès via les clients ftp;
  • HTTP : pour l'accès web ou pour un accès par programmation de type ReST ;
  • IMAP : pour l'accès au repository Alfresco via les clients de messagerie (type Outlook, Thunderbird...)
  • SPP (Share Point Protocol) pour l'édition en ligne de documents MS Office ;
  • SMTP : pour l'envoi ou la réception de mail ;
  • WebDAV : pour l'accès via un explorateur de fichiers lorsque l'utilisateur n'est pas sur Windows ou si CIFS ne fonctionne pas ;

Le dépôt de courriers entrants dans BlueCourrier peut s'effectuer à travers toutes ces possibilités.

Tous ces protocoles ne sont pas systématiquement activés afin de ne pas exposer d'accès inutiles pouvant introduire d'éventuelles failles de sécurité.

Services

Alfresco fournit de multiples services.

Les services suivants sont disponibles sur Alfresco :

  • Authentification/Synchronisation (groupes, utilisateurs)
  • Planification (Quartz)
  • Transformation documentaire : OpenOffice/LibreOffice
  • Workflow : jBPM et/ou Activiti

Tous ces services ne sont pas systématiquement activés afin de ne pas exposer de fonctions inutiles pouvant introduire d'éventuelles failles de sécurité.

Les services suivants sont activés :

  • Authentification
  • Synchronisation
  • Transformation via OpenOffice/LibreOffice
  • Workflow Activiti

Les services suivants ne sont pas activés :

  • Workflow jBPM

Préconisation

Serveurs

La plupart des installations se font maintenant sur des environnements virtualisés comme :

  • VMWare ;
  • HyperV ;
  • Xen ;
  • Proxmox...

Ces environnements présentent l'avantage de faciliter la supervision et la maintenance d'un grand nombre de serveur par une équipe réduite. Cependant, il faut garder à l'esprit qu'un environnement virtualisé ajoute une couche d'abstraction qui réduit la capacité de traitement des hôtes sur lesquels ils sont installés.

Du fait de la virtualisation, nous partons généralement sur une réduction d'un facteur 2 et dimensionnons les machines de manière plutôt basses, quitte à augmenter leur configuration au fur et à mesure pour mieux répondre aux besoins.

Si vous partez sur une machine physique, vous pouvez donc respecter la configuration telle qu'elle est décrite.

L'optimisation d'une architecture BlueCourrier + Alfresco est complexe. Nous vous invitons à vous rapprocher de BlueDolmen qui pourra vous mettre en relation avec un partenaire intégrateur BlueDolmen pour optimiser BlueCourrier avec Alfresco.

Alfresco

Une installation Alfresco CE ou EE 5 fonctionnelle est nécessaire pour le déploiement de la solution BlueCourrier.

Installation standard

Les pré-requis minimaux pour l'utilisation de BlueCourrier + Alfresco sur un serveur physique sont les suivants (sur un serveur virtuel, nous vous invitons à appliquer un facteur 2 sur le nombre de coeurs et la RAM) :

  • CPU : Quadcore, 2,5 Ghz, 64 bits
  • OS : Linux, Windows
  • RAM : 8 Go pour le serveur
  • HD : prévoir un disque rapide
    • 10 Go pour le système
    • 50 Go pour les données (base de données + espace pour les données + espace pour les indexes)

Ces pré-requis doivent être adaptés en fonction des constats faits sur les cas d'utilisation, le nombre d'utilisateurs simultanés et la volumétrie des données.

Installation avec serveur de base données

Toute opération dans Alfresco nécessite une connexion à la base de données. Elle constitue par conséquent un élément clé de votre architecture. Afin d'avoir les meilleures performances possibles, vous avez ainsi intérêt à optimiser ses temps d'accès et sa vitesse de traitement.

L'installation sur un serveur à part est ainsi recommandée, mais les conditions d'accès à la base (réseau notamment) doivent également être mise en conformité.

Dématérialisation

Si vous avez choisi une solution de dématérialisation basée :

  • sur un simple scanner avec le logiciel de numérisation et d'OCR associés, aucun serveur n'est nécessaire.
  • sur un logiciel constitué d'un ensemble d'outils (Abbyy, Kofax, Ephesoft...), prévoir : généralement un serveur pour le traitement des courriers numérisés (OCR, ICR...), un poste client pour la configuration du projet (définition d'une farde de distribution), un poste client de numérisation, un poste client pour la vérification des documents... Dans cette solution, il est aussi possible d'utiliser le client de numérisation fourni avec votre poste de travail (par exemple le client de numérisation de Windows, Ubuntu...)

Serveur de dématérialisation

Abbyy Flexi Capture

Les pré-requis pour l’installation de la solution Abbyy FlexiCapture sont les suivants :

  • CPU : Bi coeur préférable, selon utilisation
  • OS :
    • Windows Server 2008 SP2 + Desktop Experience,
    • Windows Server 2008 R2 SP1 + Desktop Experience,
    • Windows Server 2012 + Desktop Experience,
    • Windows Server 2012 R2 + Desktop Experience.
  • RAM :
    • 4 Go pour le serveur
    • 4 Go pour Oracle
  • HD :
    • 500 Mo pour l'installation
    • 2 Go pour la base de données Oracle (base à créer par vos soins) et >= 25 Go pour les données puis selon utilisation
  • Un client oracle 32 bit compatible avec le server Oracle utilisé, configuré pour permettre l'accès à la base Oracle.
  • Un utilisateur Oracle avec les rôles « CONNECT », « DBA » et « Execute on dbms_lock »
  • L'ordinateur sur lequel le serveur est installé doit être connecté au même domaine Windows que les postes client.
  • Internet Information Server 7 ou versions ultérieures avec les composants suivants :
    • Web Server (Serveur web)
      • Common HTTP Features (Fonctionnalités HTTP courantes) Static Content (Contenu statique)
      • Default Document (Document par défaut) HTTP Errors (Erreurs HTTP)
      • HTTP Redirection (Redirection HTTP)
    • Application Development (Développement d'applications) .Net Extensibility 4.5
      • ASP.NET 4.5
      • ISAPI Extensions (Extensions ISAPI) ISAPI Filters (Filtres ISAPI)
    • Security (Sécurité)
      • Basic Authentication (Authentification de base)
      • Windows Authentication (Authentification Windows)
      • Request Filtering (Filtrage des demandes)
    • Management Tools (Outils de gestion)
      • IIS Management Console (Console de gestion IIS)
      • IIS 6 Management Compatibility (Compatibilité de gestion IIS 6)
      • IIS 6 Metabase Compatibility (Compatibilité de métabase IIS 6)
      • IIS 6 WMI Compatibility (Compatibilité WMI IIS 6)
    • IIS 6 Scripting Tools (Outils de scripts IIS 6)
  • Microsoft .NET Framework 4.0 (4.5 en cas d'exécution sous Windows Server 2012)

Serveur de statistiques

Serveur ELK

Les pré-requis pour Elasticsearch, Logstash, Kibana sont les suivants :

  • CPU : Bi coeur préférable, selon utilisation ;
  • OS : Linux récent ou Windows Serveur (>= 2008) ;
  • RAM : >= 4 Go selon utilisation ;
  • Espace disque : 250 Mo pour l'installation et >= 25 Go pour les données puis selon utilisation ;
  • Java : JDK 1.8 update 20 (ou supérieur) ou JDK 1.7 update 55 (ou supérieur)

Interconnexion entre les serveurs

Les différents serveurs nécessitent l’ouverture de flux réseau entre eux. Le tableau ci-dessous résume les différents ports devant être autorisés sur chacun des serveurs de la solution :


Serveur Port en écoute

Alfresco 8080 8443

ELK 9200 9300 5601

Abbyy Flexi Capture 80 443 10022 10041 10043


Tableau des ports en écoute sur les différents serveurs.

Le schéma ci-dessous présente les interconnexions et les flux entre les différents serveurs :

Postes client

La configuration recommandée est la suivante :

  • FireFox
  • Windows 7+
  • 17" (1680x1050)

Il existe trois profils de postes client, voici les éléments relatifs à la solution de dématérialisation présent sur chacun de ces types de poste :

  • Poste service Courrier :
    • Abbyy FlexiCapture Station de numérisation ;
    • Abbyy FlexiCapture Station de vérification ;
    • Abbyy FlexiCapture Station de vérification de données ;
  • Poste responsable service Courrier :
    • Abbyy FlexiCapture Station de vérifications des données ;
    • Client de numérisation tiers (E-Copy to PDF, Logiciel de numérisation Windows...) ;

Les autres postes utilisateurs n'ont besoin d'aucun élément spécifique.

Scanners

Les scanners suivants ont déjà été utilisés avec succès par les partenaires intégrateurs de BlueDolmen :

Scanners de bureau

  • Fujitsu fi-6130z
    • Vitesse N&B et Couleur : 40 recto/80 recto-verso ppm (200dpi)
    • Chargeur automatique : 50 feuilles
    • Connexion : USB 2.0
  • Canon DR-M1060
    • Vitesse N&B et Couleur : 60/120 ppm (300dpi)
    • Chargeur automatique : 60 feuilles
    • Connexion : USB 2.0

Scanners départementaux

  • Canon DR-G1100
    • Vitesse N&B et Couleur : 100/200 ppm (200dpi)
    • Chargeur automatique : 500 feuilles
    • Connexion : USB 2.0

MFP

  • MFP Konica Minolta

Annexes

Solutions de dématérialisation

Statistiques

ELK (Elasticsearch/Logstash/Kibana)

ELK est un ensemble d'outils proposé par la société Elastic. ELK est la combinaison de 3 logiciels :

  • Elasticsearch, pour stocker, indexer et requêter les informations concernant les courriers et leur traitement ;
  • Logstash, pour analyser ces informations et les traiter (transformation sur les chaines de caractère, sur les dates...) afin de faciliter leur indexation et leur requêtage ;
  • Kibana, pour créer des tableaux de bord de restitution.