FR 2789775 A1 20000818 FR 9901876 A 19990216 - 1 - Procédé et outil d'interface graphique pour représenter un processus dynamique" DESCRIPTION La présente invention concerne un procédé d'interface graphique pour représenter un processus dynamique. Elle vise également un outil d'interface graphique mettant en oeuvre ce procédé. Cette invention s'inscrit dans le cadre des représentations graphiques de processus dynamique, qui sont du type "workflow" couramment utilisé en informatique. On entend par workflow un mécanisme qui permet de définir et de connaître l'état parmi plusieurs états dans lequel se trouve l'entité ou le concept objet du workflow. Il gère essentiellement des états et des transitions entre ces états. Tout workflow possède au moins un état initial et un état final auquel on accède par au moins une action. Ce concept de workflow peut s'appliquer à de nombreux domaines dans lesquels il est nécessaire de connaître l'état d'une entité à un instant donné. Actuellement, la mise en oeuvre d'un procédé de gestion de workflow en environnement graphique type Windows ou X-windows est assurée à l'aide d'enchaînements d'objets graphiques type fenêtres modales ou modeless, onglets, listes etc. Or la pratique des procédés actuels de représentation graphique à base de workflow met nettement en lumière les difficultés rencontrées par les utilisateurs même pour des processus dynamiques peu complexes, notamment en matière d'ergonomie visuelle. Le but de la présente invention est de remédier à ces inconvénients en proposant un procédé d'interface graphique de représentation d'un processus dynamique, 2- offrant une meilleure ergonomie que les modes actuels d'interface graphique par fenêtre. Cet objectif est atteint avec un procédé d'interface graphique pour représenter un processus dynamique, comprenant un mécanisme dit de workflow utilisé pour définir et de connaître parmi une pluralité d'états l'état dans lequel se trouve ledit processus dynamique et gérer des transitions entre ces états. Suivant l'invention, la gestion du mécanisme de workflow est réalisée par un objet graphique de type graphe mettant en oeuvre des sommets et des arcs nommés respectivement Etats et Actions dans ledit mécanisme de workflow. Ainsi, on réalise une interface homme machine basée sur la théorie des graphes et dont la fonction est la gestion d'un workflow. La particularité du système de représentation graphique selon l'invention réside dans le fait que l'essentiel des mécanismes nécessaires à la gestion du workflow est réalisé par un objet graphique de type graphe qui constitue le coeur du système IHM. De plus, cet objet particulièrement adapté à cette fonction offre des possibilités nouvelles, particulièrement difficile à mettre en euvre tant sur le plan technique que sur le plan fonctionnel avec les autres systèmes précités. Le procédé selon l'invention comprend avantageusement une définition d'une représentation graphique initiale du mécanisme de workflow au moyen de l'objet graphe, incluant une définition des états possibles du mécanisme de workflow et une définition des actions constituant les chemins possibles entre ces états. La définition d'une représentation graphique initiale inclut par exemple une personnalisation des actions, notamment une définition de droits d'utilisateur, de destinataire ou de délai. - 3- Le procédé selon l'invention peut en outre comprendre une génération, à partir d'une représentation graphique initiale du mécanisme de workflow, d'une représentation graphique de ce qui est vu par5 l'utilisateur du processus dynamique. la représentation graphique "lutilisateur" est avantageusement conçue pour montrer de façon différente les chemins autorisés et les chemins non autorisés pour l'utilisateur du processus dynamique. Il est par ailleurs avantageux de prévoir une définition de propriétés pour chaque action du mécanisme de workflow, et une création de modèles ou "templates" constituant des ensemble de valeurs prédéfinies de ces propriétés. Par ailleurs, le procédé selon l'invention peut comprendre une représentation graphique du mécanisme de workflow pour visualiser l'état d'avancement d'un projet donné. En particulier, la représentation graphique du mécanisme de workflow peut comprendre au moins un sommet possédant des caractéristiques visuelles dynamiques indicatives de l'avancement d'un état donné du mécanisme de workflow. On peut aussi prévoir que la représentation graphique du mécanisme de workflow comprenne au moins un arc comportant des caractéristiques visuelles dynamiques indicatives de l'activation d'une action entre deux états du mécanisme de workflow. Lorsque le procédé selon l'invention est mis en oeuvre pour un suivi d'anomalies logicielles, il comprend alors une gestion des anomalies en les déplaçant d'un état à un autre tout le long du mécanisme de workflow et en affectant si nécessaire des propriétés spécifiques à chaque état. Suivant un autre aspect de l'invention, il est proposé un outil d'interface graphique pour représenter - 4- un processus dynamique, mettant en oeuvre le procédé selon l'invention. D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après. Aux dessins annexés donnés à titre d'exemples non limitatifs: - la figure 1 illustre un premier exemple de page- écran obtenue avec le procédé selon l'invention, représentant un "workflow" original; - la figure 2 illustre un second exemple de page- écran obtenue avec le procédé selon l'invention, représentant un "workflow" utilisant des modèles graphiques (templates); - la figure 3 illustre un troisième exemple de page- écran obtenue avec le procédé selon l'invention, représentant un "workflow" d'utilisateur; et - la figure 4 illustre un quatrième exemple de page- écran obtenue avec le procédé selon l'invention, représentant un "workflow" d'un projet. On va maintenant décrire, en référence aux figures précitées, plusieurs exemples caractéristiques de représentations graphiques de workflow obtenues avec le procédé selon l'invention, dans le cadre d'une application de suivi d'anomalies logicielles. Il est à noter que les actions et états qui sont communs aux représentations graphiques des différentes figures sont repérés dans la suite par des indications de référence communes. Dans un premier temps, on s'attache à la description des mécanismes mis en oeuvre par l'objet graphe. Un objet graphe met en oeuvre: - des sommets nommés états dans le mécanisme de - des arcs nommés actions dans le mécanisme de workflow. Les différents sommets [états] d'une représentation d'un mécanisme de workflow sont reliés par des arcs -5- [actions]. Il existe aussi des arcs [actions] associés à un seul sommet [action] et constituant ainsi des boucles. Les étapes essentielles de mise en euvre du procédé selon l'invention sont décrites ci-dessous. Un administrateur définit, en référence à la figure 1, une représentation graphique initiale du mécanisme de workflow à l'aide de l'objet graphe: Définition des sommets (états) possibles du workflow, - Définition des arcs (actions) constituant les chemins possibles entre les états, Personnalisation des actions (droits utilisateur, destinataire, délai....) L'utilisateur gère les anomalies en les déplaçant d'un état à un autre tout le long du workflow et en affectant si nécessaire les propriétés spécifiques à chaque état. Dans l'exemple pratique d'un workflow original Wo illustré par la figure 1, la représentation graphique comprend dans sa partie supérieure un état initial SO à partir duquel soit une action "ouvrir" A02 conduit à un état "ouvrir" S2, soit une action "entrer" A01 conduit à un état "nouveau" Sl. De cet état Si, soit une action "ouvrir" A12 conduit à l'état "ouvrir" S2, soit une action "fermer" A14 conduit à un état "fermer" S4. A partir de l'état "ouvrir" S2, soit une action "réassigner" A22 est entreprise, soit une action "réparer" A23 conduit à un état "validation en cours" S3. De cet état "validation", on peut effectuer soit une action "réassigner" A33, soit une action "valider" A34 conduisant à l'état "fermer" S4. Ce workflow original peut devenir directement un workflow utilisateur (figure 3) ou un workflow modèle (figure 2) qui peut être réutilisé pour définir un workflow original. - 6- Ainsi, il est possible de définir un ensemble de propriétés pour chaque action du mécanisme de workflow. Afin de faciliter la saisie de ces propriétés, l'administrateur peut créer des modèles ou templates, en5 référence à la figure 2. Un template constitue un ensemble de valeurs prédéfinies de ces propriétés. A titre d'exemple non limitatif illustré en figure 2, la représentation graphique Wt d'une mécanisme de workflow utilisant des modèles dérivée de la représentation graphique Wo du mécanisme de workflow original diffère de celle-ci par un état "ouvrir" S2' contenant trois modèles ou templates Tl, T2, T3, en substitution de l'état "ouvrir" initial S2. Un mécanisme de workflow utilisateur représente ce qui est vu par l'utilisateur, en référence à la figure 3. Il présente par rapport au "workflow original" la particularité de montrer de façon différente les chemins autorisés et les chemins non autorisés pour l'utilisateur donné. Celui-ci peut identifier de façon explicite les opérations qu'il peut effectuer sur ce workflow. Ainsi, dans la représentation graphique d'utilisateur Wu donnée en figure 3 et dérivée de la représentation graphique originale de la figure 1, les actions "entrer" A01, "ouvrir" A12, "réassigner" A22, A33, et "réparer" A23 sont autorisées tandis que les actions "ouvrir" A02' reliant l'état "initial" SO à l'état "ouvrir" S2, "fermer" A14' reliant l'état "nouveau" Si à l'état "fermer" S4 et "valider" A34' reliant l'état "validation en cours" S3 à l'état "fermer" S4 ne sont pas autorisées. Un workflow "projet" est une représentation générale du workflow pour un projet donné, en référence à la figure 4. Il est utilisé essentiellement pour visualiser l'état d'avancement du projet. Il peut être décliné en autant d'instances que nécessaire pour le suivi correct du projet. - 7 - Ainsi, dans la représentation graphique Wp d'un mécanisme de workflow correspondant à un projet en cours, des représentations graphiques dynamiques sont prévues pour ceux des états du mécanisme de workflow qui sont en5 cours d'exécution. A titre d'exemple non limitatif, l'état "initial" SOp est représenté avec un taux d'exécution de 10%, l'état "ouvrir" S2p est représenté avec un taux d'exécution de 30%, l'état "validation en cours" S3p est représenté avec un taux d'exécution de 53% et l'état "fermer" S4p est représenté avec un taux d'exécution de 7%. Le procédé de représentation graphique selon l'invention est prévu pour être implémenté sous la forme d'un outil logiciel d'interface-utilisateur ayant vocation à constituer une alternative crédible aux interfaces graphiques actuelles à base de fenêtre. Bien sûr, l'invention n'est pas limitée aux exemples qui viennent d'être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l'invention. En particulier, les dimensions et agencements des représentations graphiques des mécanismes de workflow ne sont bien sûr pas limitées aux exemples décrits. Par ailleurs, on peut utiliser une variété d'effets visuels pour illustrer le caractère dynamique de certaines actions représentées par le mécanisme de workflow. Par exemple, des modifications de couleur, d'intensité, de dimensions des cadres représentant les états peuvent être mises en oeuvre. De même, les chemins illustrant les actions peuvent faire l'objet d'un traitement graphique spécifique, notamment pour faciliter le repérage d'une action en cours ou illustrer le taux de fréquentation d'un chemin particulier. - 8- REVENDICATIONS 1. Procédé d'interface graphique pour représenter un processus dynamique, comprenant un mécanisme dit de workflow (Wo, Wt, Wu, Wp) utilisé pour définir et de connaître parmi une pluralité d'états l'état dans lequel se trouve ledit processus dynamique et gérer des transitions entre ces états, caractérisé en ce que la gestion du mécanisme de workflow est réalisée par un objet graphique de type graphe mettant en ouvre des sommets et des arcs nommés respectivement Etats (SO, Si, S2, S3, S4) et Actions (A0l, A02; A12, A14; A22, A23; A33, A34) dans ledit mécanisme de workflow. 2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend une définition d'une représentation graphique initiale (Wo) du mécanisme de workflow au moyen de l'objet graphe, incluant une définition des états possibles du mécanisme de workflow et une définition des actions constituant les chemins possibles entre ces états. 3. Procédé selon la revendication 2, caractérisé en ce que la définition d'une représentation graphique initiale (Wo) inclut une personnalisation des actions, notamment une définition de droits d'utilisateur, de destinataire ou de délai. 4. Procédé selon l'une des revendications 2 ou 3, caractérisé en ce qu'il comprend en outre une génération, à partir d'une représentation graphique initiale (Wo) du mécanisme de workflow, d'une représentation graphique (Wu) de ce qui est vu par l'utilisateur du processus dynamique. - 9- 5. Procédé selon la revendication 4, caractérisé en ce que la représentation graphique "utilisateur" (Wu) est conçue pour montrer de façon différente les chemins autorisés (A01, A12, A22, A23, A33) et les chemins non5 autorisés (A02', A14', A34') pour l'utilisateur du processus dynamique. 6. Procédé selon l'une quelconque des revendications 2 à 5, caractérisé en ce qu'il comprend en outre une définition de propriétés pour chaque action du mécanisme de workflow, et une création, au sein d'une représentation graphique (Wt), de modèles ou "templates" (T1, T2, T3) constituant des ensemble de valeurs prédéfinies de ces propriétés. 7. Procédé selon l'une quelconque des revendications 2 à 6, caractérisé en ce qu'il comprend en outre une représentation graphique (Wp) du mécanisme de workflow pour visualiser l'état d'avancement d'un projet donné. 8. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la représentation graphique du mécanisme de workflow comprend au moins un sommet possédant des caractéristiques visuelles dynamiques indicatives de l'avancement d'un état donné dudit mécanisme de workflow. 9. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la représentation graphique du mécanisme de workflow comprend au moins un arc comportant des caractéristiques visuelles dynamiques indicatives de l'activation d'une action entre deux états. 10. Procédé selon l'une quelconque des revendications précédentes, mis en euvre pour un suivi - 10- d'anomalies logicielles, caractérisé en ce qu'il comprend une gestion des anomalies en les déplaçant d'un état à un autre tout le long du mécanisme de workflow et en affectant si nécessaire des propriétés spécifiques à chaque état. 11. Outil d'interface graphique pour représenter un processus dynamique, mettant en oeuvre le procédé selon l'une quelconque des revendications précédentes.