La mise en place d'un workflow avancé naît d'une réflexion sur un
besoin particulier. Tous les cas amenant à la création d'un workflow sont
différents mais voyons quelques cas concrets :
- besoin d'imposer la saisie de métadonnées sur des documents par des
personnes identifiées,
- besoin d'imposer un circuit de validation à des documents,
- besoin de déplacer des documents de façon automatique en fonction
d'un circuit,
- ...
Lorsqu'un workflow est démarré à partir d'un document, ce dernier se
trouve intégré dans le circuit décrit par le processus du workflow. On
peut imaginer un workflow comme un tunnel qui imposerait une route à un
document. Ce tunnel ayant une entrée (le démarrage du workflow) et une
sortie (la finalisation du workflow).
Voici les axes de réflexion devant amener à la formalisation d'un
workflow :
- Quel est le but principal qui vous amène à créer un workflow
(finalité du workflow) ?
- Quels sont les intervenants susceptibles de devoir traiter des
tâches ?
- De combien d'étapes avez-vous besoin ?
- Pour chaque étape, quelles sont les informations à saisir que vous
souhaitez imposer à l'utilisateur ? (commentaire pour apporter une
information à l'étape suivante, renseignement d'une métadonnée qui sera
reportée sur le document,...)
- Pour chaque étape, avez-vous besoin d'envoyer des notifications par
mail ? Si oui, à qui ?
- Pour chaque étape, quels doivent être les droits à définir sur le
document ? (l'utilisateur qui traite la tâche est-il simple lecteur ou
doit-il pouvoir modifier le document?)
- Pour chaque étape, quelles sont les transitions possibles ? (refus
possible, dans ce cas il faut définir la redirection qui va être faite,
nombre de choix de transition offert,...)
- Les utilisateurs devant être assignés lors d'une transition d'une
étape à une autre, le sont-ils de façon automatique (les mêmes
utilisateurs recevront toujours les mêmes tâches), de façon manuelle
(c'est l'utilisateur de l'étape précédente qui choisit à qui va être
assignée la tâche suivante).
- ...
Le principe est donc de créer un visuel décrivant les étapes du
workflow, exemple :
Chaque étape doit ensuite être clairement décrite :
- Quels sont les champs proposés par chaque étape (métadonnées à
renseigner, champ de commentaire, date d'échéance pour le traitement de
la tâche suivante,...
- Quelles sont les transitions offertes à chaque étape avec
identification de la suite du circuit, exemple :
- Bouton « Refus » : retour à l'étape 1 avec assignation à
xxx.
- Bouton « Valider » : poursuite vers l'étape 3 avec assignation à
xxx.
- Pour chaque transition de chaque étape, quels sont les traitements
automatisés :
- Notification email à telle personne.
- Modification des droits sur le document.
- Enrichissement automatique de certaines métadonnées (exemple, le
statut du document passe en « Validé »)
- Relance automatique en fonction d'une date d'échéance
- ...