• Aucun résultat trouvé

Travaux sur la d´ efinition de la collaboration

Etat de l’art

2.5.1 Travaux sur la d´ efinition de la collaboration

Les travaux de cette cat´egorie concernent les approches qui d´efinissent la collaboration dans le cadre de l’ing´enierie des processus. Le but est d’avoir une base permettant de repr´esenter la collaboration ou le travail collaboratif.

Suivant les besoins de collaboration plusieurs mod`eles ont ´et´e d´evelopp´es. Comme vu dans la section 2.4.1 ci-dessus, plusieurs auteurs (Ellis et al., 1991; Fuks et al., 2005) pr´esentent la communication, la coordination et la coop´eration comme les aspects qu’un syst`eme collaboratif doit satisfaire en vue d’assister les utilisateurs. La satisfaction de ces aspects donne lieu `a des mod`eles r´ecurrents dans la fa¸con de collaborer. Dans le cadre des objectifs de notre travail, nous privil´egions les mod`eles introduits sous forme de patrons, qui en mettant le focus sur la coor-dination des tˆaches (workflow), correspondent bien `a notre probl´ematique de recherche. Ainsi, dans cette section, nous pr´esentons essentiellement les patrons de collaboration de Lonchamp

(Lonchamp, 1998) et les patrons de workflow de Van der Aalst (van der Aalst et al., 2003b), qui sont des r´ef´erences en mati`ere de travaux de recherche dans le domaine.

2.5.1.1 Patrons de Lonchamp

Description de l’approche

Dans ses travaux, Lonchamp (Lonchamp, 1998) a d´efini des patrons de collaboration g´en´eriques pour la mod´elisation de situations r´ecurrentes. La d´efinition donn´ee au concept de patron se base sur les travaux de (Alexander et al., 1977). Lonchamp a d´efini un ensemble de treize patrons couvrant les situations de collaboration les plus repr´esentatives. Il propose une notation sp´ecifique pour illustrer visuellement les tˆaches, les flux de contrˆole et les donn´ees partag´ees entre tˆaches. A titre d’exemple, nous illustrons les deux patrons suivants : le patron ”co-work”, le patron ”multiprocessing”.

— Patron ”co-work” (figure 2.8). Ce mod`ele est utilis´e pour la production collaborative d’un document. C’est le cas o`u plusieurs acteurs travaillent en coop´eration sur une tˆache ´el´ementaire (en mode synchrone ou asynchrone). La production du document final r´esulte d’une s´erie de d´ecisions individuelles fusionn´ees ou de d´ecisions collectives. La notation utilis´ee ici indique qu’il s’agit d’une tˆache atomique (symbole A sur la figure) et collective (icone en bas `a droite).

Figure 2.8: Patron de collaboration ”co-work” (Lonchamp, 1998).

— Patron ”multiprocessing” (figure 2.9). Ce mod`ele est utilis´e lorsque plusieurs acteurs produisent simultan´ement leur propre version du document (ou de l’artefact) sans avoir acc`es aux contributions des autres. Il s’ensuit la n´ecessit´e d’int´egrer les diff´erentes ver-sions produites. Ce mod`ele introduit une tˆache, rework, qui est optionnelle et peut ˆetre raffin´ee en cours d’ex´ecution (indiqu´e par le point d’interrogation).

Discussion

multi-Figure 2.9: Patron de collaboration ”multiprocessing” (Lonchamp, 1998).

instanciation avec le concept de Multiple Task”. Il g`ere le flux de contrˆole des tˆaches `a un niveau inter-tˆache mais ne d´efinit pas l’ordonnancement des instances d’une mˆeme tˆache (intra-tˆache). Lonchamp d´efinit deux types de flux de donn´ees pour g´erer le partage des produits : un flux synchrone et un flux asynchrone. Les concepts d’acteurs et d’outils sont pris en compte pour sp´ecifier qui est en charge de l’ex´ecution d’une tˆache.

Pour la communication, Lonchamp se base sur les outils CSCW mais n’inclut pas directement dans son approche de moyens de mise en oeuvre de cette exigence.

Concernant la coop´eration, Lonchamp pr´evoit la distribution des donn´ees en entr´ee et en sortie mais pas la structuration composite d’un produit. Pour le mode de passage, Lonchamp a mis en place un m´ecanisme de copie ou de transfert des donn´ees. Les donn´ees peuvent ˆetre en lecture seule (fl`eche en pointill´ee) ou en lecture/´ecriture (fl`eche bidirecitonnelle en pointill´ee).

2.5.1.2 Patrons de Van der Aalst

Description de l’approche

Van der Aalst (van der Aalst et al., 2003a) propose des patrons de workflow d´ecrivant des fonctionnalit´es r´ecurrentes des syst`emes de workflow. Ces patrons sont class´es en diff´erentes cat´egories : ”control”, ”resource”, ”data”, ”exception handling” , ”presentation” et ”log imper-fection”. Etant donn´e le grand nombre de patrons d´ecrits par Van der Aalst, nous pr´esentons `

a titre illustratif quelques patrons repr´esentatifs de la cat´egorie ”control”.

— Patron ”sequence” (figure 2.10). Une tˆache est ex´ecut´ee apr`es l’ach`evement de la tˆache pr´ec´edente. Ce mod`ele est utilis´e lorsque l’instance d’une tˆache ne peut ˆetre ex´ecut´ee que si celle qui la pr´ec`ede a fini de s’ex´ecuter. Cela peut ˆetre impos´e, par exemple, par le manque de disponibilit´e de ressources (acteurs ou produits), ou une volont´e de proc´eder par raffinement. Dans ce patron, I1 et o1 repr´esentent respectivement l’entr´ee

et la sortie. Les tˆaches en s´equentiel sont repr´esent´ees par un rectangle (A et B). p1 repr´esente le produit interm´ediaire ´echang´e.

Figure 2.10: Patron de workflow ”sequence” (van der Aalst et al., 2003a).

— Patron ”parallel” (figure 2.11). Plusieurs tˆaches sont effectu´ees en parall`ele. Lorsque les ressources requises pour effectuer deux tˆaches sont disponibles, ce mod`ele peut ˆetre utilis´e pour leur ex´ecution. Cependant, cela n´ecessite qu’il n’y ait pas de liens entre eux ni de ressources `a partager entre les deux.

Figure 2.11: Patron de workflow ”parallel”(van der Aalst et al., 2003a).

— Patron ”synchronization” (figure 2.12). Il s’agit d’exprimer la convergence de plusieurs tˆaches ex´ecut´ees simultan´ement vers une tˆache apr`es la fin de leur ex´ecution. Le point particulier de ce mod`ele est que l’ex´ecution d’une tˆache suivante (la tˆache C sur la figure) n´ecessite la fin de toutes les tˆaches `a synchroniser (A et B).

— Patron ”simple merge” (figure 2.13). Ce mod`ele est organis´e de la mˆeme mani`ere que le pr´ec´edent `a la diff´erence que l’ex´ecution d’une nouvelle tˆache (la tˆache C sur la figure) ne n´ecessite que la fin de l’ex´ecution de l’une des tˆaches ex´ecut´ees en parall`ele (A ou B).

Figure 2.13: Patron de workflow ”simple merge”(van der Aalst et al., 2003a).

Discussion

Les patrons de van der Aalst, d´efinissent un ordonnancement entre diff´erentes tˆaches. Cet ordonnancement se fait au niveau inter-tˆache.

Tout comme ceux de Lonchamp, les patrons de van der Aalst ne couvrent pas l’aspect commu-nication.

Avec les patrons sur les transferts de donn´ees, van der Aalst satisfait les exigences du mode de transfert avec un transfert par r´ef´erence (”pattern data transfer by reference” ) et un transfert par copie (”pattern data transfer by value” ). Il d´efinit un ensemble de donn´ees sp´ecifiques `

a chaque instance d’une tˆache multi-instance. Cependant, ces patrons n’indiquent pas si les ´

el´ements de l’ensemble sont de mˆeme nature, ce qui ne permet pas de d´efinir le concept de produit composite.

2.5.1.3 Bilan des approches ´etudi´ees sur la d´efinition de la collaboration

Cette section d´ecrit notre analyse des travaux sur la d´efinition de la collaboration. Le tableau 2.4 pr´esente une comparaison des approches `a base de patrons analys´ees par rapport aux crit`eres de la collaboration.

Exigences Approches /

Crit`eres Lonchamp van der Aalst Coordination

Flux de travail Inter-task Inter-task Flux de donn´ees Inter-task Inter-task Ressources

par-tag´ees Actor, Tool Non pr´evue

Communication

Conscience sur l’´etat du syst`eme

Non pr´evue Non pr´evue Discussions Non pr´evue Non pr´evue Coop´eration

Mode d’acc`es In / Out In / Out Mode de

pas-sage ef´erence, Copie ef´erence, Copie Structuration Non pr´evue Non pr´evue

Table 2.4: Tableau comparatif des approches traitant de la d´efinition de la collaboration.

De ce tableau, nous pouvons d´eduire que les patrons ici repr´esent´es sont orient´es coordination des tˆaches. Aucun des deux approches ´etudi´ees ici ne pr´evoit de m´ecanismes de communica-tion concernant la collaboracommunica-tion. Les discussions ne sont pas formalis´ees. La structuration des produits n’est pas couverte ce qui rend difficile la manipulation d’un produit composite.

2.5.2 Travaux sur la mod´elisation de la collaboration dans les