Plateforme Alfresco
Agenda



         Introduction

         Architecture

         Scalabilité

         Administration

         Cas d’usage
Introduction


Alfresco est une solution ECM (Enterprise Content
Management) complète, open-source et facile à
déployer, qui couvre :

• Gestion de contenu social (SCM)
• Gestion documentaire (GED)
• Travail collaboratif
• Gestion de contenus web (WCM)
• Archivage légal (RM)
• etc …
Introduction

                    Gestion Electronique            Gestion de
                      de Documents                 contenu Web



                                                                    Archivage
    Collaboration
                                                                     E-mail




     Records                                                  Dématérialisation
    Management




                                           Gestion des ressources
                           Workflow         Numériques (DAM)
Introduction


Alfresco peut être installé comme plateforme de gestion
des contenus, accessibles et pilotés par les différentes
applications de votre SI (vision infrastructure / SOA).

Cela s’appuie sur :
• sa distribution Open-Source et son respect des standards
• son architecture
• sa scalabilité
• ses possibilités d’administration
Introduction


OpenSource et standards :
•   Spring
•   Lucene
•   Mybatis
•   jBPM
•   Freemarker
•   Portlets JSR-168
•   3rd party : OpenOffice / ImageMagick / Swftools
•   …
Introduction


Spring Framework est “le squelette” de l’architecture
d’Alfresco
• Open source Java
• Programmation orientée
    aspect
•   Injection de dépendance
•   Modèle – Vue – Contrôleur
•   Une large communauté :
    Plus de 2,5 millions de
    développeurs Spring
Introduction


Alfresco est compatible avec les principaux
environnements d’entreprise :
• OS serveur Linux / Windows : RHEL, Solaris, Ubuntu, Windows
Server, …
• SGBD : MySQL, MS SQL, Oracle, PostGre SQL, DB2, …
• Serveur d’application : Tomcat, jBoss, Oracle WebLogic, Oracle
WebSphere, …
• Navigateurs : FireFox, Internet Explorer, Safari
• Annuaire d’entreprise : LDAP, AD, Kerberos, …

  => Plateforme ouverte, pas de verrouillage propriétaire
                    (vendor-lockin)
Agenda



         Introduction

         Architecture

         Scalabilité

         Administration

         Cas d’usage
Architecture


Composants principaux de l’architecture d’Alfresco :

• Stockage et modélisation des
contenus
• Moteur de gestion de contenus
et services associés
• APIs, protocoles, et
interopérabilité

Les applications clientes
communiquent avec Alfresco
par les APIs et protocoles
Architecture : stockage des contenus


Un contenu = un document + des métadonnées

• Système de fichiers :
    o   Binaires de contenu
    o   Indexes Lucene

•   Base de données :
     o Relations (associations)
     o métadonnées
     o …
Architecture : modèles de données


Alfresco définit un modèle de données extensible, souple et
évolutif. Vous pouvez ainsi créer :
• des types de contenus
    ex : Type “rapport” (métadonnées : sujet, date d’envoi, résumé, …)
• des aspects
    ex : Aspect “client” (métadonnées : nom, référence, contact, …)
• des propriétés
    ex : Propriété “référence client” [nombre entier]
• des associations
    ex : Association “documents associés”
Architecture : modèles de données


•   Type :
    o   Spécialise un contenu (un contenu n’a qu’un seul type)
    o   Optionnellement définit statiquement des propriétés et
        associations
    o   Exemples : le type “espace”, le type “contenu”, …
• Aspect :
    o   Qualifie un contenu (un contenu peut posséder plusieurs aspects)
    o   Optionnellement définit des propriétés et associations
    o   Peut-être associé à un type statiquement, ou à un objet
        dynamiquement au runtime
    o   Définition réutilisable dans d’autres types
    o   Exemples : l’aspect “versionnable”, l’aspect “taggable”
Architecture : modèles de données


  Exemple :
                        Type = Rapport      Type = Contrat      Type = Email        Type = Cas
                        Attributs du type   Attributs du type   Attributs du type   Attributs du type

                        Sujet               Date d’effet        Sujet               Format
                        Date d’envoi        Valeur              Expéditeur
                        Résumé                                  Destinataires




Aspect = Client
Attributs de l’aspect
Nom de client
Référence
Contact
Statut
-> Docs associés
Architecture : les services


Les services permettent le pilotage des contenus stockés
dans l’entrepôt Alfresco :

• cycle de vie des contenus
=> création, modification,
suppression, …
• contrôle sur les contenus
=> permissions, verrous
• modèles de contenus
=> propriétés, associations
• workflows
• recherche
• etc …
Services Alfresco : le framework Spring


Les services reposent sur le framework Spring :


• Services par des interfaces
publiques
• Composants qui implémentent
ces services
• Configuration entièrement XML
• Transactionnel et sécurisé
(permissions)
• Extensible
Services Alfresco : actions et règles


Actions (ActionService) :          Règles (RuleService) :

• Déclencher des actions sur les   • L’équivalent des règles et filtres
    contenus                           d’une messagerie
•   Transactionnel et sécurisé     •   Automatiser des tâches et
•   Planifié (CRON) ou à la            traitements
    demande                        •   Lance une / plusieurs actions
•   Peut être intégré dans les     •   Règles réutilisables
    workflows                      •   Règles ordonnables
•   Exemples : envoyer par mail,   •   Configuration simple et
    incrémenter compteur,              dynamique
    déplacer le contenu, …
Services Alfresco : actions et règles


Une règle de contenu
s’applique à un espace :
                                                Exemple
1/ un évènement déclencheur
   (contenu entrant / sortant / modifié)     Brouillons
2/ un ensemble de conditions
    (sur le nom du contenu, son type, …)
3/ une action à appliquer
    (déplacer le contenu, lui appliquer un   Approuvé
    aspect, envoyer un mail etc …)


Les règles ajoutent de                       Publié
l’intelligence aux espaces
Services Alfresco : transformations


Transformations et extractions de métadonnées :

• Transformations vers des formats différents
Ex : Word => PDF, Word => Flash, …
• Extraction automatique des propriétés d’un document
Ex : auteur, titre, description, …
• Basées sur des briques OpenSource :
Ex : Apache Tika, POI, pdf2swf, …
• Peuvent être associées à des règles de contenus
Ex : si un document word est déposé, le transformer en PDF et créer
une prévisualisation Flash
Services Alfresco : transformations


Transformations et extractions de métadonnées,
application dans Share :


       Imagette PNG




            Prévisualisation
                 Flash


             Extraction des
             métadonnées
Services Alfresco : audit


L’audit permet la traçabilité des contenus :

• Audit du cycle de vie : création, modification,
suppression, …
• Audit des évènements : lecture / téléchargement, ajout
de tag, etc …
• Service configurable de manière modulaire
• Configuration XML
• Données accessibles par une API REST (3.4+)
• Documenté (exemples sur le wiki)
Services Alfresco : transfert et réplication


Transfert et réplication :

• Réplication de contenu sélective entre entrepôts Alfresco
    distincts
•   2 concepts importants :
     o Cibles de transfert – Détermine où transférer le contenu
     o Travaux de réplication – Détermine le quoi et le quand du
      contenu à transférer vers la cible
• A la demande ou planifié par des travaux de réplication
• Rapports et suivi des travaux de réplication
Services Alfresco : transfert et réplication


     Siège social     Succursale      Succursale
    Irving, Texas       Angola        Kazakhstan




   SOP              SOP              SOP
     SOP              SOP              SOP
       SOP              SOP              SOP
Services Alfresco : workflows


Alfresco intègre un moteur de workflows :

• Basé sur un moteur BPM
• Fonctionnalités riches :
  > workflows en parallèle / série
  > branchements, jointures, conditions
  > assignations groupes ou utilisateur nommé
  > exécution d’actions
• Application possible au cycle de vie d’un contenu :
  création, validation, publication, …
• Extensible : créez vos propres workflows
Services Alfresco : sécurité


Les permissions définissent les droits d’accès et
d’opérations sur les contenus :

• ACEGI (Spring Security) : fondées sur ACL et ACE
• Modèle extensible (SSO externe, etc …)
• Permissions unitaires :
    Ex : ReadContent, ReadChildren, DeleteChildren, WriteContent, …
•   Les permissions sont agrégées pour définir des rôles
    Par défaut : lecteur, éditeur, contributeur, collaborateur, coordinateur
•   Verrouillage pendant l’édition
     => Limite les risques de conflit
Services Alfresco


Une vingtaine de services pour la gestion des contenus,
dont aussi :

• Recherche                    • Navigation
• Checkin / Checkout           • Cycle de vie
• Locking                      • Notations
• Versionning                  • Invitations
• Tags et catégories           • Espaces collaboratifs
• Authentification             • Templating
• Synchronisation annuaire     • Quotas d’utilisation
• Groupes et utilisateurs      • Copie – duplication
• Propriétés et associations   • etc …
Architecture : APIs et protocoles
                                               introduction


 Exposition d’APIs et protocoles pour permettre
 l’interopérabilité d’Alfresco et des différentes applications
 du SI (ERP, CRM, messagerie, …) :
Architecture : APIs
                                                introduction


 Les contenus d’Alfresco peuvent être manipulés par des
 APIs, ce qui contribue à en faire une plateforme
 documentaire au sein du SI :

 • Par des APIs Java ou Script sur le serveur
 • Par des APIs “remote”, en accès distant :
   > WebServices SOAP - Java
   > Webscripts REST - Java ou JavaScript
   > CMIS - Atom REST ou Java SOAP
Architecture : APIs
                                       Développements sur le serveur


Intégrez vos besoins spécifiques à Alfresco par des
développements Java ou JavaScript sur le serveur :

• Open-Source
• API Java : tirez partie de Spring Framework
  > Surcharge des services par défaut avec les composants
  > Création de nouveaux services
• API JavaScript :
  > Apprentissage rapide
  > Accès aux services de l’entrepôt
Architecture : APIs
                                               APIs accès distant


Alfresco offre des points d’accès pour le pilotage distant
des contenus stockés dans son entrepôt :

• Webservices SOAP - batches, commandes CML
• RESTful Webscripts - une URL définit une vue, ou une
  action sur un contenu …
  > modèle MVC
  > webscripts Java ou Javascript
  > UI webscripts / Data webscripts
  > interfaces web (par ex : Share)
  > tout langage, toute plateforme (Ruby, PHP, html, …)
• CMIS
APIs : Focus webscripts

     Consumer / Client




                               Data (Repository) Tier



                                 Freemarker (View)
    Freemarker (View)
                               JavaScript (Controller)
                             Remote Repository (Model)
   JavaScript (Controller)
                             Alfresco Repository (Model)
    Remote Data Model

   Presentation (UI) Tier
APIs : Focus CMIS


CMIS = Content Management Interoperability Services

• Standard d’interopérabilité des entrepôts de GED
• Neutralité technologique
    > côté serveur (Alfresco, Sharepoint, FileNet, …)
    > côté client (Client java, client ruby, client php, …)
• Opérations supportées : lecture, écriture, recherche,
    versionning, …
•   Alfresco est la première solution OpenSource à avoir
    supporté CMIS 1.0
APIs : Focus CMIS


• Points d’entrée API :
  > REST / Atom
  > WebServices
• Cas d’usage :
  > d’entrepôt à entrepôt
  > d’application à entrepôt
  > entrepôt fédérés
• Alfresco supporte quelques
  extensions au protocole CMIS :
  > aspects
  > listes de données
Architecture : protocoles
                                                    introduction


L’entrepôt Alfresco est accessible par différents protocoles,
sans aucune installation sur les postes clients :

• FTP / CIFS (jLan) / Webdav / NFS
   > de type “lecteur réseau”
   > simplicité d’utilisation
• Protocole SharePoint
   > édition en ligne des documents Word, Excel, PowerPoint
• IMAP
   > intégration à la messagerie Outlook, Thunderbird, …
   > archivage des emails
Architecture : protocoles
                            copies d’écran
Architecture : applications clientes


  Par les APIs et les protocoles, différentes applications
  clientes pilotent les contenus de l’entrepôt Alfresco :


• Clients Web
    Ex : Alfresco Share, interface métier
• Applications lourdes
    Ex : Lotus Notes, MS Office, …
• Eléments d’infrastructure
    Ex : ESB, …
Clients web


Alfresco Share est une interface web fournie par Alfresco,
qui n’expose qu’une partie des fonctionnalités du moteur

Vous pouvez créer vos propres interfaces web :
• pour répondre à un besoin métier spécifique
   Ex: traitement des courriers entrant, chaîne de dématérialisation, …
• par l’API REST (webscripts)
   pilotage de tous les services : audit, workflow, transformations, …
• par les APIs CMIS

       ~40% de nos clients utilisent une interface métier
Applications : connecteurs Alfresco


De nombreux connecteurs Alfresco ont déjà été développés
Agenda



         Introduction

         Architecture

         Scalabilité

         Administration

         Cas d’usage
Scalabilité
                                                    introduction


Alfresco est une plateforme qui répond aux besoins de
scalabilité et de disponibilité de l’entreprise :

• Montée en charge (volume documentaire et nombre
d’utilisateurs) progressive
• Haute-disponibilité par les architectures Cluster
• Architectures Cluster :
   > gérées par Alfresco (pas par le serveur d’application)
   > entrepôt unique ou entrepôt répliqué
Scalabilité
                                                                   Cluster 1
                                                            Load Balancer

• Cluster Alfresco type 1
    ●   Base de données et                     Share                               Share

        contenus partagés                     Tomcat                              Tomcat

•   Charge distribuée par un                 EHCache                              EHCache

    Load Balancer
•   Points of failure




                                                 Index




                                                                                    Index
    ●   Serveur d’application 

    ●   Base de données 

    ●   Entrepôt des contenus 




                                                                       DataBase
                                                             Content
                                                              Store
                                  Can make use of high
                                  availability disk (i.e.
                                  SAN storage)
Scalabilité
                                                                  Cluster 2


• Cluster Alfresco type 2
                                                            Load Balancer



    ●   Entrepôt répliqués dans des               Share                      Share
        entrepôts secondaires
                                                  Tomcat                    Tomcat
•   2 modes de fonctionnement                EHCache                        EHCache
    inbound / outbound
•   Points of failure




                                        Content




                                                                                      Content
                                                    Index




                                                                              Index
                                         Store




                                                                                       Store
    ●   Serveur d’application 

    ●   Base de données 

    ●   Entrepôt des contenus                               Database



                                      Replicating            Secondary          Replicating
                                       Content                Content            Content
                                        Store                  Store              Store
Scalabilité
                                            Montée en charge


                           Load Balancer


                  Share                    Share
   Web-tier
                  Tomcat                   Tomcat




Repository-tier
Agenda



         Introduction

         Architecture

         Scalabilité

         Administration

         Cas d’usage
Administration
                                                    introduction


Alfresco est une plateforme dotée de possibilités
d’administration riches :

• Gestion d’utilisateurs et groupes
   > internes Alfresco
   > synchronisation avec un annuaire LDAP, AD, …
• Composants modulaires configurables dynamiquement
    Ex : Authentication Subsystem, File Servers Subsystem, …
• Monitoring et configuration à chaud par un client JMX
• Implémentation de politiques de stockage
Administration
                                                    sous-systèmes


Les sous-sytèmes (Subsystems) :

•   Composants modulaires pour certaines fonctionnalités
•   Arrêt / démarrage à chaud
•   Configuration et supervision à chaud via JMX
•   Exemples :
    > sous-système d’authentification (LDAP, AD, NTLM, SSO, …)
    > sous-système des protocoles (FTP, NFS, CIFS, …)
    > sous-sytème des 3rd parties (OpenOffice, ImageMagick, …)
    > sous-système Imap
    > sous-système d’audit
    > etc …
Administration
                                         Supervision JMX


Supervision JMX
• Support du standard JMX.
  Utilisable avec tout client JMX
   o   Jconsole (fourni avec JDK),
       Hyperic, HP OpenView, extension
       Nagios, ...
• Surveillance
   o   Connexions base de données
   o   Utilisation mémoire
   o   Utilisateurs connectés
   o   ...
• Configuration à chaud
   o   Sous-systèmes Alfresco
   o   Mise en lecture seule
   o   …
Administration
                                                                    ILM


Politiques de stockage (Information                Règles de
                                                                          SSD
LifeCycle Management) :
                                                   stockage

                                                                          €€€
• Stockage dynamique basé sur
    des politiques de stockage ou      Règles de                          FC
    le cycle de vie du document         stockage


•   Réduction des coûts sans
                                                                          €€
    réduction des performances
•   Exemples :
    > versions courantes sur disques
    rapides / versions anciennes sur
                                                                          SATA
    disques lents                                                          €
    > contenu multimédia sur disques
    rapides
    > etc …                                  SSD = Solid State Drives
                                             FC = Fibre Channel
Administration
                                           Baies CAS


Alfresco permet de stocker les contenus sur des baies
d’archivage de type CAS / FCS qui supportent XAM

• Module Alfresco complémentaire                        Share

• Spécifique version Entreprise                         Tomcat

• Verrouillage des contenus                        EHCache
    archivés, période de rétention,
    suppression automatique
    possible, …




                                                                  DataBase
                                              Content


                                                          Index
                                               Store
•   Développé à l’aide du SDK XAM
•   Testé pour les baies EMC Centera
•   Tarification spécifique                        XAM connector




                                                             Baie CAS
Agenda



         Introduction

         Architecture

         Scalabilité

         Administration

         Cas d’usage
Cas d’usage
                                                Banque / assurance


Injection et restitution en masse

• Injection massive
   o   5 à 10 Millions de documents injectés chaque semaine de
       campagne (avis d’échéance)
• Haute disponibilité
   o   Installation en mode cluster
• Interface de dématérialisation
   o   Numérisation
• Interface avec portail clients
   o   Consultation
• Répartition du contenu sur stockages multiples
   o   Intégration avec baies « CAS » (Centera – CAStor)
Cas d’usage
                                                Grand compte industriel


Calcul numérique / bureau d’étude

• Utilisation d’API multiples
    o   WS, REST, Java native, …
• Utilisation de protocoles multiples
    o   FTP, NFS, WebDAV, HTTP
•   Accès depuis des applications multiples
    o   Client web, applicatifs, stations de travail, grille de calcul
• Forte volumétrie
    o   Un contenu unique pèse jusqu’à 50 Go pièce
• Gestion de points de stockages multiples
    o   Répartition selon cycle de vie
Cas d’usage
                                              Editeurs et OEM


Alfresco embarqué

Alfresco est inclus dans les offres de plusieurs éditeurs
    o Outils de publication (PAO)
    o Outils de gestion des processus documentaires
    o Solutions de gestion des ressources humaines
    o Solutions de gestion financières
    o Centrale de réservation en ligne
    o Gestion de documents composites
    o …
En résumé (1)

Web Applications                   Knowledge Portals           Web Services
                                                                      Business
                      App Server                                       Process
                                                                        Engine


                                                       CRM


                                    Portal Server
Virtual File System
                                                             High Availability
                FTP
         CIFS

    WebDAV
En résumé (2)

                           Client CMIS

          Lecteur réseau                 MS Office


     WEB                                         SharePoint



   SAP                                                 Email


 IBM Lotus
                                                     WebDAV

         Drupal
                                               Google Docs

                  Joomla                 FTP
                                Kofax
En résumé (3)
Pour aller plus loin

 • Essayez Alfresco !
 • Essai pendant 24 heures en mode Cloud
     o  http://bit.ly/EntTrial
      o http://bit.ly/RM-Trial
 •   Version d’évaluation 30 jours
      o http://www.alfresco.com/products/ecm/enttrial/
 •   Vidéos de démonstration
      o http://www.youtube.com/alfresco101
 •   Nos autres webinars
      o http://tinyurl.com/3698pjy

Webinar "La plateforme Alfresco"

  • 1.
  • 2.
    Agenda Introduction Architecture Scalabilité Administration Cas d’usage
  • 3.
    Introduction Alfresco est unesolution ECM (Enterprise Content Management) complète, open-source et facile à déployer, qui couvre : • Gestion de contenu social (SCM) • Gestion documentaire (GED) • Travail collaboratif • Gestion de contenus web (WCM) • Archivage légal (RM) • etc …
  • 4.
    Introduction Gestion Electronique Gestion de de Documents contenu Web Archivage Collaboration E-mail Records Dématérialisation Management Gestion des ressources Workflow Numériques (DAM)
  • 5.
    Introduction Alfresco peut êtreinstallé comme plateforme de gestion des contenus, accessibles et pilotés par les différentes applications de votre SI (vision infrastructure / SOA). Cela s’appuie sur : • sa distribution Open-Source et son respect des standards • son architecture • sa scalabilité • ses possibilités d’administration
  • 6.
    Introduction OpenSource et standards: • Spring • Lucene • Mybatis • jBPM • Freemarker • Portlets JSR-168 • 3rd party : OpenOffice / ImageMagick / Swftools • …
  • 7.
    Introduction Spring Framework est“le squelette” de l’architecture d’Alfresco • Open source Java • Programmation orientée aspect • Injection de dépendance • Modèle – Vue – Contrôleur • Une large communauté : Plus de 2,5 millions de développeurs Spring
  • 8.
    Introduction Alfresco est compatibleavec les principaux environnements d’entreprise : • OS serveur Linux / Windows : RHEL, Solaris, Ubuntu, Windows Server, … • SGBD : MySQL, MS SQL, Oracle, PostGre SQL, DB2, … • Serveur d’application : Tomcat, jBoss, Oracle WebLogic, Oracle WebSphere, … • Navigateurs : FireFox, Internet Explorer, Safari • Annuaire d’entreprise : LDAP, AD, Kerberos, … => Plateforme ouverte, pas de verrouillage propriétaire (vendor-lockin)
  • 9.
    Agenda Introduction Architecture Scalabilité Administration Cas d’usage
  • 10.
    Architecture Composants principaux del’architecture d’Alfresco : • Stockage et modélisation des contenus • Moteur de gestion de contenus et services associés • APIs, protocoles, et interopérabilité Les applications clientes communiquent avec Alfresco par les APIs et protocoles
  • 11.
    Architecture : stockagedes contenus Un contenu = un document + des métadonnées • Système de fichiers : o Binaires de contenu o Indexes Lucene • Base de données : o Relations (associations) o métadonnées o …
  • 12.
    Architecture : modèlesde données Alfresco définit un modèle de données extensible, souple et évolutif. Vous pouvez ainsi créer : • des types de contenus ex : Type “rapport” (métadonnées : sujet, date d’envoi, résumé, …) • des aspects ex : Aspect “client” (métadonnées : nom, référence, contact, …) • des propriétés ex : Propriété “référence client” [nombre entier] • des associations ex : Association “documents associés”
  • 13.
    Architecture : modèlesde données • Type : o Spécialise un contenu (un contenu n’a qu’un seul type) o Optionnellement définit statiquement des propriétés et associations o Exemples : le type “espace”, le type “contenu”, … • Aspect : o Qualifie un contenu (un contenu peut posséder plusieurs aspects) o Optionnellement définit des propriétés et associations o Peut-être associé à un type statiquement, ou à un objet dynamiquement au runtime o Définition réutilisable dans d’autres types o Exemples : l’aspect “versionnable”, l’aspect “taggable”
  • 14.
    Architecture : modèlesde données Exemple : Type = Rapport Type = Contrat Type = Email Type = Cas Attributs du type Attributs du type Attributs du type Attributs du type Sujet Date d’effet Sujet Format Date d’envoi Valeur Expéditeur Résumé Destinataires Aspect = Client Attributs de l’aspect Nom de client Référence Contact Statut -> Docs associés
  • 15.
    Architecture : lesservices Les services permettent le pilotage des contenus stockés dans l’entrepôt Alfresco : • cycle de vie des contenus => création, modification, suppression, … • contrôle sur les contenus => permissions, verrous • modèles de contenus => propriétés, associations • workflows • recherche • etc …
  • 16.
    Services Alfresco :le framework Spring Les services reposent sur le framework Spring : • Services par des interfaces publiques • Composants qui implémentent ces services • Configuration entièrement XML • Transactionnel et sécurisé (permissions) • Extensible
  • 17.
    Services Alfresco :actions et règles Actions (ActionService) : Règles (RuleService) : • Déclencher des actions sur les • L’équivalent des règles et filtres contenus d’une messagerie • Transactionnel et sécurisé • Automatiser des tâches et • Planifié (CRON) ou à la traitements demande • Lance une / plusieurs actions • Peut être intégré dans les • Règles réutilisables workflows • Règles ordonnables • Exemples : envoyer par mail, • Configuration simple et incrémenter compteur, dynamique déplacer le contenu, …
  • 18.
    Services Alfresco :actions et règles Une règle de contenu s’applique à un espace : Exemple 1/ un évènement déclencheur (contenu entrant / sortant / modifié) Brouillons 2/ un ensemble de conditions (sur le nom du contenu, son type, …) 3/ une action à appliquer (déplacer le contenu, lui appliquer un Approuvé aspect, envoyer un mail etc …) Les règles ajoutent de Publié l’intelligence aux espaces
  • 19.
    Services Alfresco :transformations Transformations et extractions de métadonnées : • Transformations vers des formats différents Ex : Word => PDF, Word => Flash, … • Extraction automatique des propriétés d’un document Ex : auteur, titre, description, … • Basées sur des briques OpenSource : Ex : Apache Tika, POI, pdf2swf, … • Peuvent être associées à des règles de contenus Ex : si un document word est déposé, le transformer en PDF et créer une prévisualisation Flash
  • 20.
    Services Alfresco :transformations Transformations et extractions de métadonnées, application dans Share : Imagette PNG Prévisualisation Flash Extraction des métadonnées
  • 21.
    Services Alfresco :audit L’audit permet la traçabilité des contenus : • Audit du cycle de vie : création, modification, suppression, … • Audit des évènements : lecture / téléchargement, ajout de tag, etc … • Service configurable de manière modulaire • Configuration XML • Données accessibles par une API REST (3.4+) • Documenté (exemples sur le wiki)
  • 22.
    Services Alfresco :transfert et réplication Transfert et réplication : • Réplication de contenu sélective entre entrepôts Alfresco distincts • 2 concepts importants : o Cibles de transfert – Détermine où transférer le contenu o Travaux de réplication – Détermine le quoi et le quand du contenu à transférer vers la cible • A la demande ou planifié par des travaux de réplication • Rapports et suivi des travaux de réplication
  • 23.
    Services Alfresco :transfert et réplication Siège social Succursale Succursale Irving, Texas Angola Kazakhstan SOP SOP SOP SOP SOP SOP SOP SOP SOP
  • 24.
    Services Alfresco :workflows Alfresco intègre un moteur de workflows : • Basé sur un moteur BPM • Fonctionnalités riches : > workflows en parallèle / série > branchements, jointures, conditions > assignations groupes ou utilisateur nommé > exécution d’actions • Application possible au cycle de vie d’un contenu : création, validation, publication, … • Extensible : créez vos propres workflows
  • 25.
    Services Alfresco :sécurité Les permissions définissent les droits d’accès et d’opérations sur les contenus : • ACEGI (Spring Security) : fondées sur ACL et ACE • Modèle extensible (SSO externe, etc …) • Permissions unitaires : Ex : ReadContent, ReadChildren, DeleteChildren, WriteContent, … • Les permissions sont agrégées pour définir des rôles Par défaut : lecteur, éditeur, contributeur, collaborateur, coordinateur • Verrouillage pendant l’édition => Limite les risques de conflit
  • 26.
    Services Alfresco Une vingtainede services pour la gestion des contenus, dont aussi : • Recherche • Navigation • Checkin / Checkout • Cycle de vie • Locking • Notations • Versionning • Invitations • Tags et catégories • Espaces collaboratifs • Authentification • Templating • Synchronisation annuaire • Quotas d’utilisation • Groupes et utilisateurs • Copie – duplication • Propriétés et associations • etc …
  • 27.
    Architecture : APIset protocoles introduction Exposition d’APIs et protocoles pour permettre l’interopérabilité d’Alfresco et des différentes applications du SI (ERP, CRM, messagerie, …) :
  • 28.
    Architecture : APIs introduction Les contenus d’Alfresco peuvent être manipulés par des APIs, ce qui contribue à en faire une plateforme documentaire au sein du SI : • Par des APIs Java ou Script sur le serveur • Par des APIs “remote”, en accès distant : > WebServices SOAP - Java > Webscripts REST - Java ou JavaScript > CMIS - Atom REST ou Java SOAP
  • 29.
    Architecture : APIs Développements sur le serveur Intégrez vos besoins spécifiques à Alfresco par des développements Java ou JavaScript sur le serveur : • Open-Source • API Java : tirez partie de Spring Framework > Surcharge des services par défaut avec les composants > Création de nouveaux services • API JavaScript : > Apprentissage rapide > Accès aux services de l’entrepôt
  • 30.
    Architecture : APIs APIs accès distant Alfresco offre des points d’accès pour le pilotage distant des contenus stockés dans son entrepôt : • Webservices SOAP - batches, commandes CML • RESTful Webscripts - une URL définit une vue, ou une action sur un contenu … > modèle MVC > webscripts Java ou Javascript > UI webscripts / Data webscripts > interfaces web (par ex : Share) > tout langage, toute plateforme (Ruby, PHP, html, …) • CMIS
  • 31.
    APIs : Focuswebscripts Consumer / Client Data (Repository) Tier Freemarker (View) Freemarker (View) JavaScript (Controller) Remote Repository (Model) JavaScript (Controller) Alfresco Repository (Model) Remote Data Model Presentation (UI) Tier
  • 32.
    APIs : FocusCMIS CMIS = Content Management Interoperability Services • Standard d’interopérabilité des entrepôts de GED • Neutralité technologique > côté serveur (Alfresco, Sharepoint, FileNet, …) > côté client (Client java, client ruby, client php, …) • Opérations supportées : lecture, écriture, recherche, versionning, … • Alfresco est la première solution OpenSource à avoir supporté CMIS 1.0
  • 33.
    APIs : FocusCMIS • Points d’entrée API : > REST / Atom > WebServices • Cas d’usage : > d’entrepôt à entrepôt > d’application à entrepôt > entrepôt fédérés • Alfresco supporte quelques extensions au protocole CMIS : > aspects > listes de données
  • 34.
    Architecture : protocoles introduction L’entrepôt Alfresco est accessible par différents protocoles, sans aucune installation sur les postes clients : • FTP / CIFS (jLan) / Webdav / NFS > de type “lecteur réseau” > simplicité d’utilisation • Protocole SharePoint > édition en ligne des documents Word, Excel, PowerPoint • IMAP > intégration à la messagerie Outlook, Thunderbird, … > archivage des emails
  • 35.
    Architecture : protocoles copies d’écran
  • 36.
    Architecture : applicationsclientes Par les APIs et les protocoles, différentes applications clientes pilotent les contenus de l’entrepôt Alfresco : • Clients Web Ex : Alfresco Share, interface métier • Applications lourdes Ex : Lotus Notes, MS Office, … • Eléments d’infrastructure Ex : ESB, …
  • 37.
    Clients web Alfresco Shareest une interface web fournie par Alfresco, qui n’expose qu’une partie des fonctionnalités du moteur Vous pouvez créer vos propres interfaces web : • pour répondre à un besoin métier spécifique Ex: traitement des courriers entrant, chaîne de dématérialisation, … • par l’API REST (webscripts) pilotage de tous les services : audit, workflow, transformations, … • par les APIs CMIS ~40% de nos clients utilisent une interface métier
  • 38.
    Applications : connecteursAlfresco De nombreux connecteurs Alfresco ont déjà été développés
  • 39.
    Agenda Introduction Architecture Scalabilité Administration Cas d’usage
  • 40.
    Scalabilité introduction Alfresco est une plateforme qui répond aux besoins de scalabilité et de disponibilité de l’entreprise : • Montée en charge (volume documentaire et nombre d’utilisateurs) progressive • Haute-disponibilité par les architectures Cluster • Architectures Cluster : > gérées par Alfresco (pas par le serveur d’application) > entrepôt unique ou entrepôt répliqué
  • 41.
    Scalabilité Cluster 1 Load Balancer • Cluster Alfresco type 1 ● Base de données et Share Share contenus partagés Tomcat Tomcat • Charge distribuée par un EHCache EHCache Load Balancer • Points of failure Index Index ● Serveur d’application  ● Base de données  ● Entrepôt des contenus  DataBase Content Store Can make use of high availability disk (i.e. SAN storage)
  • 42.
    Scalabilité Cluster 2 • Cluster Alfresco type 2 Load Balancer ● Entrepôt répliqués dans des Share Share entrepôts secondaires Tomcat Tomcat • 2 modes de fonctionnement EHCache EHCache inbound / outbound • Points of failure Content Content Index Index Store Store ● Serveur d’application  ● Base de données  ● Entrepôt des contenus  Database Replicating Secondary Replicating Content Content Content Store Store Store
  • 43.
    Scalabilité Montée en charge Load Balancer Share Share Web-tier Tomcat Tomcat Repository-tier
  • 44.
    Agenda Introduction Architecture Scalabilité Administration Cas d’usage
  • 45.
    Administration introduction Alfresco est une plateforme dotée de possibilités d’administration riches : • Gestion d’utilisateurs et groupes > internes Alfresco > synchronisation avec un annuaire LDAP, AD, … • Composants modulaires configurables dynamiquement Ex : Authentication Subsystem, File Servers Subsystem, … • Monitoring et configuration à chaud par un client JMX • Implémentation de politiques de stockage
  • 46.
    Administration sous-systèmes Les sous-sytèmes (Subsystems) : • Composants modulaires pour certaines fonctionnalités • Arrêt / démarrage à chaud • Configuration et supervision à chaud via JMX • Exemples : > sous-système d’authentification (LDAP, AD, NTLM, SSO, …) > sous-système des protocoles (FTP, NFS, CIFS, …) > sous-sytème des 3rd parties (OpenOffice, ImageMagick, …) > sous-système Imap > sous-système d’audit > etc …
  • 47.
    Administration Supervision JMX Supervision JMX • Support du standard JMX. Utilisable avec tout client JMX o Jconsole (fourni avec JDK), Hyperic, HP OpenView, extension Nagios, ... • Surveillance o Connexions base de données o Utilisation mémoire o Utilisateurs connectés o ... • Configuration à chaud o Sous-systèmes Alfresco o Mise en lecture seule o …
  • 48.
    Administration ILM Politiques de stockage (Information Règles de SSD LifeCycle Management) : stockage €€€ • Stockage dynamique basé sur des politiques de stockage ou Règles de FC le cycle de vie du document stockage • Réduction des coûts sans €€ réduction des performances • Exemples : > versions courantes sur disques rapides / versions anciennes sur SATA disques lents € > contenu multimédia sur disques rapides > etc … SSD = Solid State Drives FC = Fibre Channel
  • 49.
    Administration Baies CAS Alfresco permet de stocker les contenus sur des baies d’archivage de type CAS / FCS qui supportent XAM • Module Alfresco complémentaire Share • Spécifique version Entreprise Tomcat • Verrouillage des contenus EHCache archivés, période de rétention, suppression automatique possible, … DataBase Content Index Store • Développé à l’aide du SDK XAM • Testé pour les baies EMC Centera • Tarification spécifique XAM connector Baie CAS
  • 50.
    Agenda Introduction Architecture Scalabilité Administration Cas d’usage
  • 51.
    Cas d’usage Banque / assurance Injection et restitution en masse • Injection massive o 5 à 10 Millions de documents injectés chaque semaine de campagne (avis d’échéance) • Haute disponibilité o Installation en mode cluster • Interface de dématérialisation o Numérisation • Interface avec portail clients o Consultation • Répartition du contenu sur stockages multiples o Intégration avec baies « CAS » (Centera – CAStor)
  • 52.
    Cas d’usage Grand compte industriel Calcul numérique / bureau d’étude • Utilisation d’API multiples o WS, REST, Java native, … • Utilisation de protocoles multiples o FTP, NFS, WebDAV, HTTP • Accès depuis des applications multiples o Client web, applicatifs, stations de travail, grille de calcul • Forte volumétrie o Un contenu unique pèse jusqu’à 50 Go pièce • Gestion de points de stockages multiples o Répartition selon cycle de vie
  • 53.
    Cas d’usage Editeurs et OEM Alfresco embarqué Alfresco est inclus dans les offres de plusieurs éditeurs o Outils de publication (PAO) o Outils de gestion des processus documentaires o Solutions de gestion des ressources humaines o Solutions de gestion financières o Centrale de réservation en ligne o Gestion de documents composites o …
  • 54.
    En résumé (1) WebApplications Knowledge Portals Web Services Business App Server Process Engine CRM Portal Server Virtual File System High Availability FTP CIFS WebDAV
  • 55.
    En résumé (2) Client CMIS Lecteur réseau MS Office WEB SharePoint SAP Email IBM Lotus WebDAV Drupal Google Docs Joomla FTP Kofax
  • 56.
  • 57.
    Pour aller plusloin • Essayez Alfresco ! • Essai pendant 24 heures en mode Cloud o http://bit.ly/EntTrial o http://bit.ly/RM-Trial • Version d’évaluation 30 jours o http://www.alfresco.com/products/ecm/enttrial/ • Vidéos de démonstration o http://www.youtube.com/alfresco101 • Nos autres webinars o http://tinyurl.com/3698pjy