Dans Alfresco, un espace n’est pas qu’un dossier ! Il peut tout naturellement contenir tout type d’élément, ainsi que des sous-espaces, et on peut y associer une description ainsi qu’une icone. Un espace apparaît comme un dossier partagé dans le voisinage réseau. Mais le principal intérêt est la notion d’espace avancé, pour lequel on peut spécifier des règles de contenu qui serviront à simplifier la manipulation, la gestion et la transformation des documents. Les espaces Alfresco incluent également le versioning de document, et facilitent donc le travail collaboratif.
On peut considérer qu’un contenu est un fichier, ou un document. Il est composé de plusieurs éléments :
Il peut être de tout type(documents, video, audio, images, XML, HTML, ...) et posséder diverses propriétés telles que le format, la langue, le créateur, la date de création, ...
Il est également possible de définir des catégories de documents. Les meta-données peuvent également concerner des liens vers des contenus associés tels que des traductions, des versions du même fichier dans d’autres formats(PDF, HTML, Text), le contenu texte d’un document scanné, etc...
Alfresco offre la possibilité de créer et d’éditer en ligne du contenu HTML ou texte, un éditeur riche étant inclus dans le navigateur. Il est également possible d’uploader un contenu depuis le navigateur, un partage réseau, un client FTP ou WebDAV, que ce soit pour l’ajout ou la mise à jour.
Le téléchargement depuis Alfresco vers un poste peut également se faire de différentes manières : depuis le navigateur (enregistrer sous), dans le partage réseau, client FTP ou WebDAV.
Notons également des fonctionnalités comme le verrouillage d’un document, le partage de copie, la possibilité d’ouvrir des fils de discussion relatifs à un document, etc...
Les fonctionnalités de recherche portent à la fois sur le contenu et ses propriétés :
la recherche « plein texte » se fait sur chaque mot du contenu, quelque soit le format. La pertinence du résultat est basée sur le nombre de mots correspondants il est possible de spécifier des critères de catégorie, de date, etc... Les critères de recherche sont mémorisables.
Afin de faciliter l’utilisation, on peut s’appuyer sur des modèles réutilisables d’espaces et de contenu. Alfresco met à disposition des modèles standardisés (différents projets avec différentes structures, documents standardisés, gestion standardisée).
Il est également possible de créer des espaces en se basant sur d’autres espaces, et de créer un nouveau modèle d’espace (cette procédure est aussi simple que la création d’un espace standard).
Cette fonctionnalité permet la conservation des versions précédentes d’un élément. Par défaut, une nouvelle version est enregistrée lors de la création ou la modification d’un élément de contenu si celui-ci possède la propriété “versionnable”. Cette propriété peut être attribuée individuellement, par espace, par type ou encore globalement (c’est un exemple d’aspect).
L’historique est consultable, et il est possible de visualiser des versions anciennes ou de revenir à une version antérieure.
Il est possible d’effectuer une large gamme d’actions sur un contenu. Ces actions peuvent être agrégées en une séquence applicable en un seul passage.
Parmi les actions possibles :
Les règles de gestion apportent de l’intelligence à un espace. Elles permettent de mettre en place un workflow simple :
Les règles sont en général liées à un espace, mais peuvent également être appliquées sur un élément simple.
Une règle de gestion peut être déclenchée par des événements (apparition/disparition d’un contenu dans un espace), des conditions sur les documents (par exemple le nom, catégorie, le format, etc...) et peut entraîner toute action qui serait disponible par l’interface. Il est possible d’enchaîner des actions.
Un espace peut contenir plusieurs règles, qui seront alors appliquées dans l’ordre spécifié.
Tout contenu peut être rattaché à une ou plusieurs catégories. Une catégorie peut avoir plusieurs catégories parentes, ce qui permet de représenter différents types de liens (hiérarchie, taxinomie, ontologie). Cette fonctionnalité est principalement une aide à la recherche. Les propriétés du contenu peuvent elles aussi être catégorisées.
Alfresco offre un accès au contenu directement depuis une machine Windows (ou tout autre gérant les protocoles CIFS, FTP ou WebDAV).
L’accès à Alfresco se fait via la connexion de lecteurs réseau. Il est donc possible de l’ouvrir comme tout dossier du voisinage réseau, d’ajouter des raccourcis, etc... Un espace est alors vu comme un dossier, ce qui permet le glisser-déposer vers et depuis Alfresco et l’édition directe depuis tout logiciel. Les dossiers réseau peuvent être des espaces avancés (et donc comporter des règles).
Alfresco offre également la possibilité de travailler hors-ligne (en utilisant par exemple le porte-documents de Windows).
Par défaut, les espaces sont normalement lisibles par tous, mais modifiables uniquement par le propriétaire. Ce comportement est configurable et peut donc évoluer : il est par exemple possible de rendre des espaces privés et d’en empècher la lecture. Il est également possible d’inviter des utilisateurs ou des groupes dans un espace et leur donner un rôle (contributeur, coordinateur, éditeur, invité ou collaborateur).
Le contrôle des droits peut se faire jusqu’au niveau document. L’aspect collaboratif est renforcé par l’existence d’un système de notification par mail, ainsi que par la possibilité d’associer une discussion de type forum à un élément.
Détail des rôles :
Ce modèle est extensible et modifiable, il est également possible de gérer des groupes d’utilisateurs.
Afin d’intégrer Alfresco dans un SI, on peut mettre en place une synchronisation avec des annuaires (type LDAP / Active Directory).
Le pilotage ne se limite pas à l’interface web standard, qui est un composant optionnel, puisque l’on peut utiliser les services web (SOAP) et qu’Alfresco implémente la spécification JSR-168 de Java(Portlets). On peut aussi utiliser des API Java, PHP, .NET, ou Ruby !
Toujours dans la même optique, il est possible d’intégrer des flux entrants : messagerie, agenda, documents numérisés (OCR), etc... On peut donc envisager un lien avec des applications tierces (telles que des outils de gestion de preuves ou de facturation).
Alfresco est prévu pour permettre le fonctionnement en haute disponibilité, avec des fonctionnalités comme la sauvegarde à chaud et les possibilités de synchronisation. Il est également possible de travail sur une architecture répartie, avec la réplication de tout ou partie des données. Ainsi, on peut avoir de multiples entrepôts et de multiples points d’accès, avec une authentification unique (SSO) sur protocole NTLM .