Mémoire présenté par. Faiza BENACER. En vue de l'obtention du diplôme de. Magister en informatique THÈME. Soutenue publiquement devant le jury:



Documents pareils
GI81 : Réseaux & Travail Collaboratif Partie I : Travail Collaboratif

TCAO. *CSCW = Computer Supported Cooperative Work

Comprendre «le travail collaboratif»

Travail collaboratif. Glossaire

Présentation des technologies pour la collaboration Étude des logiciels pour les groupes (groupware)

Documentation Honolulu 14 (1)

Nom-Projet MODELE PLAN DE MANAGEMENT DE PROJET

Définition. Caractéristiques. - Du partage des ressources : espace de stockage, imprimantes, lignes de communication.

Travail collaboratif à distance

Manuel d utilisation NETexcom

Le travail collaboratif : guide des services

Types de REA produites dans le cadre de la séquence pédagogique

Objet du document. Version document : 1.00

Concepts et définitions


Qu'est-ce que le BPM?

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Manuel d utilisation du site web de l ONRN

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Business Intelligence avec SQL Server 2012

claroline classroom online

Catalogue des formations pour vos collaborateurs, pour vos clients,

Université de Bangui. Modélisons en UML

Introduction MOSS 2007

Université de Lausanne

Chapitre 1 : Introduction aux bases de données

Découverte de Moodle

Gestion collaborative de documents

COMMENT METTRE A JOUR SON SITE WEB?

Les entreprises qui adoptent les communications unifiées et la collaboration constatent de réels bénéfices

Guide Utilisateur. Les communications unifiées au service de la performance opérationnelle. sfrbusinessteam.fr. Faire équipe avec vous

Rencontre BTS-IRIS / INSA. TICE et Espaces collaboratifs

Contexte : «l e-business» TECHNIQUES DE MARKETING EN LIGNE. Contexte : «l e-business» Création de valeur 02/02/12

Documentation de produit SAP Cloud for Customer (novembre 2013) Nouveautés de SAP Cloud for Customer pour les administrateurs

Date de diffusion : Rédigé par : Version : Mars 2008 APEM 1.4. Sig-Artisanat : Guide de l'utilisateur 2 / 24

Partage avec collaboration Important : Ce type de partage exige la connexion à un serveur CmapServer.

Le travail collaboratif et l'intelligence collective

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Sage CRM. 7.2 Guide de Portail Client

modélisation solide et dessin technique

Google Apps for Business

:...2 I.6. :... 2 I.7. :... 2 I.8. :...3 I.9. :... 3 I.10. :... 3 II. 4 II.1.

Comment accéder à d Internet Explorer

Alfresco Guide Utilisateur

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP

Climat Scolaire - Manuel utilisateur - Chapitre 2 : «Créer, Editer et suivi d un texte»

Extension WebEx pour la téléphonie IP Cisco Unified

LES OUTILS DU TRAVAIL COLLABORATIF

SOMMAIRE. Savoir utiliser les services de l'ent Outils collaboratifs

EXTRANET STUDENT. Qu'est ce que Claroline?

Le logiciel pour le courtier d assurances

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

OpenScape Business. La solution de communications unifiées tout-en-un pour les PME

ERP5. Gestion des Services Techniques des Collectivités Locales

MEDIAplus elearning. version 6.6

Domaine D5 KARINE SILINI UNIVERSITÉ DU LITTORAL CÔTE D'OPALE --- LICENCE CREATIVE COMMONS : PATERNITÉ - PAS D'UTILISATION COMMERCIALE - PARTAGE

Séquence de découverte de SparkAngels Logiciel d entraide numérique

Travail collaboratif et à distance. DFGSM 2 Pr. F. Kohler 2012/2013

Livre Blanc WebSphere Transcoding Publisher

Communiquer : les autres Chèque n 7 Module 2

IFT2255 : Génie logiciel

WEA Un Gérant d'objets Persistants pour des environnements distribués

Messagerie & Groupeware. augmentez l expertise de votre capital humain

SECTION 5 BANQUE DE PROJETS

Domaine 1 : S approprier un environnement informatique de travail. Domaine 3 : Créer, produire, traiter et exploiter des données.

Comment utiliser mon compte alumni?

Java 7 Les fondamentaux du langage Java

Réseau Global MIDI Note applicative

QTEK 9100 QTEK S200 HP 6915

Sybase PowerAMC 16. Guide des nouvelles fonctionnalités générales. DOCUMENTATION

Prise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack

et Groupe Eyrolles, 2006, ISBN :

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date :

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Annuaires LDAP et méta-annuaires

GUIDE MEMBRE ESPACE COLLABORATIF. Février 2012

Premiers pas avec NetSupport SCHOOL

Méthodes et outils employés pour développer des logiciels libres

F O R M A T I O N S LOTUS NOTES. 8.5 Utilisateurs rue de la Bôle. E U R L. a u c a p i t a l d e

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Ebauche Rapport finale

What s New. HOPEX V1 Release 2. MEGA International Avril V1R2 What's New 1

Gestion des données de référence (MDM)

White Paper ADVANTYS. Workflow et Gestion de la Performance

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

Université Ferhat ABBAS -Sétif

Drupal Contributeur. Maitrisez la publication sous Drupal. Une formation Formateur : Fabien Crépin. Drupal Contributeur.

1 Introduction. Business Intelligence avec SharePoint Server 2010

BABEL LEXIS : UN SYSTÈME ÉVOLUTIF PERMETTANT LA CRÉATION, LE STOCKAGE ET LA CONSULTATION D OBJETS HYPERMÉDIAS

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

Vers la réalisation d un outil collecticiel à collaboration directe pour le contrôle aérien

INFORM :: DEMARRAGE RAPIDE A service by KIS

Chef de file dans le développement de solutions de gestion de contenu

FOAD CARNET DE RESSOURCES NOVEMBRE FOAD / M@gistère

Plateforme AnaXagora. Guide d utilisation

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Bien programmer. en Java ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Catalogue & Programme des formations 2015

Transcription:

République algérienne démocratique et populaire Ministère de l'enseignement supérieur et de la recherche scientifique Université Ferhat Abbas Sétif Faculté des sciences Département d'informatique Mémoire présenté par Faiza BENACER Spécialité: Informatique Option: Informatique En vue de l'obtention du diplôme de Magister en informatique THÈME Développement d'une Interface Partagée à base du Package Groupware MAUI Soutenue publiquement devant le jury: Mr. M.ALIOUAT, MCA, Université de Sétif Président Mr A.ZIDANI, M.C, Université de Batna Rapporteur Mr A.MOUSSAOUI, Université de Sétif Examinateur MCA, Mr B.BELATTAR, MCA Université de Batna Examinateur Promotion 2011-2012

Table des matières Chapitre1 Groupware: Concepts de base 1.1 Introduction... 5 1.2 Définitions... 5 1.1.1 CSCW (Computer Supported Cooperative Work)... 5 1.1.2 Groupware... 6 1.3 Origine et évolution des outils de travail collaboratif... 6 1.4 Taxonomie des outils de travail collaboratif... 7 1.4.1 Classification Spatio-Temporelle... 7 1.4.2 Classification fonctionnelle - Trèfle du collecticiel... 8 1.4.3 Classification par domaine d application... 10 1.5 Caractéristiques et fonctionnalités des systèmes groupware... 15 1.5.1 Caractéristiques... 15 1.5.2 Fonctionnalités... 16 1.6 Problèmes de mise en œuvre relatifs aux éditeurs collaboratifs... 17 1.7 Conclusion... 18 Chapitre 2 Group Awareness 2.1 Introduction... 20 2.2 Notion du workspace awareness... 21 2.2.1 Espace de travail partagé... 21 2.2.2 Catégories de conscience de groupe... 22 2.2.3 Définition du workspace awareness... 23 2.3 Eléments de la conscience de groupe... 23 2.4 Sources d'informations de conscience de groupe... 25 2.4.1 La communication intentionnelle... 25 2.4.2 La communication conséquente... 25 2.4.3 La Rétroaction du groupe (Feedthrough)... 26 2.5 Mécanismes de conscience dans les systèmes groupware... 27 2.5.1 Mécanismes 2D... 27 2.5.2 L'audio et la vidéo... 27

2.5.3 Détecteurs médiatisé... 27 2.5.4 Représentations visuelles 3D... 27 2.6 Classification des mécanismes existants selon les types des sources d'informations... 28 2.6.1 Outils pour la communication intentionnelle... 28 2.6.2 Outils pour la communication conséquente gestuelle... 29 2.6.3 Outils pour la rétroaction du groupe:... 31 2.7 Conclusion... 35 Chapitre 3 Groupware: Mise en œuvre 3.1 Introduction... 37 3.2 Architecture logicielle des systèmes groupware... 38 3.2.1 Modèles d'architecture pour les systèmes mono-utilisateur... 38 3.2.2 Modèles d'architecture pour les collecticiels... 41 3.3 Outils de développement... 45 3.3.1 Les boîtes à outils... 45 3.3.2 Les plates-formes et les frameworks... 45 3.3.3 Architecture de distribution... 46 3.4 Description de la boite à outils MAUI... 46 3.4.1 Caractéristiques générales... 46 3.4.2 Infrastructure de communication... 48 3.4.3 Infrastructure de composants... 49 3.4.4 Versions Groupware des composants mono-utilisateur.... 51 3.4.5 Composants dédiés collecticiels... 51 3.5 Conclusion... 52 Chapitre 4 GTextPane: Un composant d'edition Collaborative 4.1 Introduction... 53 4.2 Présentation... 54 4.3 Caractéristiques... 56 4.3.1 Couplage... 56 4.3.2 Granularité... 57 4.4 Architecture du GroupwareTextPane... 57

4.5 Modèle d'événements... 62 4.6 Implémentation de la conscience de Groupe... 64 4.6.1 Conscience de présence... 64 4.6.2 Conscience d'identité... 65 4.6.3 Conscience d'action... 67 4.6.4 Conscience de localisation... 68 4.7 Conclusion... 69 Chapitre 5 Implémentation de l Edition Collaborative, Approche des Transformées opérationnelles 5.1 Introduction... 71 5.2 Approche des Transformées Opérationnelles... 72 5.2.1 Principe... 72 5.2.2 Modèles de cohérence... 74 5.2.3 Synthèse... 78 5.3 Implémentation de l'edition collaborative... 80 5.3.1 Modèle de l'édition collaborative... 80 5.3.2 Respect des contraintes du Modèle de Cohérence "CA"... 81 5.3.3 Organisation de l historique.... 84 5.3.4 Structure du système... 85 5.3.5 Fonctions de Transformation... 86 5.3.6 Algorithmes d intégration... 88 5.4 Conclusion... 93 Chapitre 6 Application 6.1 Introduction... 94 6.2 Eléments du workspace awareness donnés par les composants visuels du Toolkit... 95 6.2.1 Versions Groupware des composants mono-utilisateur.... 95 6.2.2 Composants dédiés groupware... 104 6.3 Eléments de conscience donnés par le GTextPane... 108 6.4 Conclusion... 111 Conclusion Générale... 112

Table des figures 1-1 Matrice Espace/Temps... 7 1-2 Trèfle du collecticiel... 9 2-1 Modèle de travail collaboratif... 22 2-2 principe de rétroaction de groupe... 26 2-3 Exemples d'avatars... 29 2-4 Télépointeurs dans GroupSketch... 30 2-5 Télépointeurs enrichies d'informations supplémentaires... 30 2-6 Vues rectangles dans le système GroupDesign... 31 2-7 Vue radar... 33 2-8 Vue radar, télépointeurs et multiscrollbars... 34 3-1 Composants du modèle Arch... 39 3-2 Agent M.V.C... 40 3-3 Agent PAC.... 41 3-5 Modèle Zipper... 42 3-6 Modèle générique de Dewan... 43 3-7 Modèle ALV.... 44 3-8 Structure du Toolkit MAUI [Hill 03].... 48 3-9 Flux des messages groupware dans MAUI [Hill 03].... 48 3-10 hiérarchie générale des composants... 49 4-1 Hiérarchie du groupware TextPane.... 54 4-3 Classes des EditorKits implémentées par Java.... 58 4-2 Modèle MVC des composants textuels java... 58 4-4 Structure d'un document HTML.... 60 4-5 Structure du modèle de données du GTextPane... 60 4-6 Architecture collaborative des composants graphique du Toolkit... 62 4-7 Recueil des événements utilisateur d'un GButton.... 63 4-8 Le Modèle d'événements "Event/Listener" du GTextpane.... 64 4-9 Hiérarchie des événements Groupware... 66 5-1 Principe de la Transformation opérationnelle.... 72 5-2 TP2 Puzzle.... 76 5-3 La concurrence contextuelle... 81 6-1 GScrollPane, vues rectangles et muti-srcollbars... 96 6-2 Un GList en mode d'utilisation individuel... 101 6-3 Les Télépointeurs dans l'éditeur collaboratif.... 105 6-4 Traces des télépointeurs dans l'éditeur collaboratif... 106 6-5 Chat Control dans l'éditeur collaboratif.... 107 6-6 Affichage de la liste des participants dans l'éditeur collaboratif... 108 6-7 Coordonnés et états des participants donnés par le GTextPane.... 111

Introduction Générale 1. Contexte Le Travail Collaboratif Assisté par Ordinateur (TCAO), est un domaine de recherche qui a émergé au milieu des années 80, avec comme objectif l'utilisation de techniques informatiques pour supporter le travail du groupe. Ce domaine se situe à la croisée de plusieurs disciplines informatiques et sciences humaines. Il emprunte à l'interface Homme Machine, aux réseaux, au multimédia et aux systèmes distribués. Les systèmes informatiques réalisés dans le cadre du CSCW visant à favoriser le travail d'un groupe d'utilisateurs par delà les distances sont appelés Groupware, collecticiels en français. Avec le développement fulgurant des réseaux et des moyens de télécommunication, l'émergence des outils de travail collaboratif a connu un essor important, et la nécessité de mettre en relation des personnes, avec de divers intérêts, augmente d'un jour à l'autre donnant naissance à plusieurs types d'outils groupware et plusieurs domaines d'applications. Parmi les classes existantes, on trouve les systèmes de communication Homme Homme médiatisés, les jeux en réseaux, les éditeurs collaboratifs et les systèmes d'espaces de travail partagé. Un point primordial à la réussite de la collaboration dans la vie courante c est d être conscient d'autrui. Maintenir cette conscience par le groupware est donc une obligation quelque soit le type d'application. Cette maintenance se révèle difficile dans les systèmes collaboratifs en général et en particulier dans les systèmes temps réel offrant un espace de travail partagé, où les sources d'informations sont limitées et leur représentation sera alors difficile. Dans le but d étudier les moyens et les outils permettant d offrir un haut niveau de conscience de groupe, nous avons choisi de développer un éditeur de texte collaboratif synchrone. Deux problèmes nous ont confronté: la mise en œuvre des mécanismes de conscience et; le maintien de la cohérence des documents partagés par les utilisateurs de l éditeur. Ce dernier est un problème complexe dans les éditeurs collaboratifs et a donné naissance à plusieurs approches dont l approche des Transformées opérationnelles utilisées initialement dans les éditeurs collaboratifs synchrones. Introduction générale 1

2. Problématique La conscience de groupe (Awareness) est une notion qui a fait l'objet de certaines études récentes. Sa définition reste propre au contexte dans lequel elle est utilisée. Dans les systèmes groupware temps-réel à espace de travail partagé, qui constituent notre domaine d'intérêt elle est définie comme étant la compréhension des activités des autres dans l'espace de travail. Les systèmes groupware sont difficiles à construire par rapport aux applications interactives mono-utilisateurs. Cette difficulté est augmentée par les divers aspects à prendre en compte. Ces aspects sont relatifs à la phase de conception de l'application qui doit prendre en considération les différents besoins, dont l'awareness qui en fait partie. Ils sont aussi liés à la phase de réalisation où le développeur doit s'affronter aux problèmes de collecte d'informations et de sa distribution, de gestion de sessions, de communication réseaux, etc. La réussite de la mise en place d un système de conscience de groupe satisfaisant dans une application dépend étroitement des outils, de conception et de mise en œuvre des collecticiels, choisis. Pour cette raison nous avons comme premier objectif: étudier les moyens permettant de mettre en œuvre les différents types de conscience de groupe pouvant être utilisés dans les espaces de travail partagés. Notre démarche va contenir l étude des modèles de conception logicielle. Cette phase permet de répondre à la question: comment structurer une application pour assurer un dialogue entre les différents composants supportant la conscience? Dans la deuxième phase, celle de l implémentation logicielle, il s agit de choisir, par exemple, l architecture d exécution de l application, distribuée ou centralisée, le mécanisme de diffusion de message, etc. La plupart de ces aspects sont confiés à une plate-forme collaborative ou à une boîte d outils collaborative. L un des Toolkits construits pour supporter le développement des collecticiels est MAUI (Multi User Awareness User Interface,) un Toolkit graphique Java conçu pour faciliter le développement des interfaces graphiques multi-utilisateurs conscientes de la collaboration. Ce Toolkit, à la différence des autres, propose des versions groupware pour les composants standards ordinaires tels que les différents types de boutons, les barres de défilement, les menus, les boîtes d éditions, etc. Néanmoins en exploitant ce Toolkit nous avons trouvé qu il ne contient pas une version groupware de composant servant d édition de documents. Ce qui nous a motivés à développer de tel composant. Nous avons alors tracé comme objectif principal le développement d un composant d édition collaborative, basé sur MAUI. Ce composant doit offrir aux utilisateurs des mécanismes de conscience de groupe qui leurs facilitent la collaboration. Les systèmes d édition collaborative permettent à plusieurs utilisateurs d éditer simultanément un même document à travers un réseau informatique. Le travail coopératif présente la même caractéristique: afin d obtenir une grande réactivité, plusieurs utilisateurs voulant travailler sur les mêmes données en même temps peuvent Introduction générale 2

répliquer ces données, travailler en parallèle chacun sur sa copie, les copies vont alors diverger, puis fusionner les données et réconcilier ces différentes copies. Un éditeur synchrone est composé d un nombre connu ou inconnu de répliques. Chaque modification apportée à une réplique est envoyée sous forme d une opération aux autres qui vont l exécuter afin qu elle soit visible en temps-réel par tous les collaborateurs. Cependant, le contenu du document au moment de génération de cette opération peut être différent de l état actuel du document qui va l intégrer suites aux éventuelles modifications faites en parallèle à cette opération. L exécution de cette opération sur l état actuel va entraîner alors une divergence entre les répliques. Il est évident qu un éditeur doit assurer que toutes les répliques convergent, vers un état identique, quand toutes les opérations auront été exécutées. Des techniques de contrôle de concurrence sont alors nécessaires. Plusieurs approches ont été proposées dans ce domaine, l approche des Transformées Opérationnelles (OT) est la plus intéressante. Utilisée initialement pour pallier ce problème dans les éditeurs synchrones, elle consiste à transformer une opération reçue d un site distant avant qu elle soit exécutée pour tenir compte des effets des opérations exécutées entre temps localement. [Weiss 10] [Imine 06] [Li et al. 10] La plupart des travaux basés sur les OT supposent que pour être correct un éditeur doit satisfaire certaines conditions, ces conditions constituent ce qu on appelle modèle de cohérence. Le modèle de cohérence le plus utilisé, est le modèle CCI, comportant trois conditions: Convergence, Causalité et Intention. A la différence des deux premières, la dernière condition n était pas formalisée [Weiss 10] [Imine 06] [Li et al. 10], ce qui ne rend pas possible la démonstration des algorithmes basés sur ce modèle. Du Li et dans le souci de concevoir des solutions prouvables, a défini un nouveau cadre conceptuel pour le développement et la prouvabilité des algorithmes de transformation opérationnelle, nommée ABT (Transformation Basée sur l Admissibilité). Le modèle de cohérence ici, comporte deux conditions formulables toutes les deux : la causalité et l admissibilité. Nous avons choisi de suivre la méthodologie de ABT pour l implémentation du module édition collaborative dans notre composant. 3. Contribution Nous développons un composant servant à l édition collaborative des documents texte. Nous exploitons notre composant dans la réalisation d un éditeur collaboratif synchrone, Toute modification sur une réplique est appliquée à toutes les autres répliques en temps-réel. Cette application nous permet de montrer les différents aspects relatifs à la conception et la réalisation des collecticiels. Nous enrichissons ce composant avec des mécanismes de conscience de groupe. Au cours d une session de travail, un utilisateur sera totalement conscient de la présence et des activités des autres dans l espace de travail. En particulier, nous essayons de réduire les situations de conflit qui peuvent se produire suite à l accès à la même position dans le document partagé, grâce à la conscience de localisation. Introduction générale 3

En termes d'implémentation de l édition collaborative nous utilisons des algorithmes avec les principales caractéristiques suivantes : - Ils sont fondés sur un Framework théorique récent ABT, la Transformation Basée sur l Admissibilité, par conséquent sont formellement prouvés [Li et al.10]). - Ils sont utiles pour les opérations d annulation comme pour les opérations normales ; - Ils ne nécessitent pas de serveur central, ce qui les rend utilisables sans modification sur un réseau pair à pair. Le grand progrès apporté par ces algorithmes est la complexité temporelle qui est de l ordre de O H, où H est le nombre des opérations exécutées sur le document. Cette amélioration des performances est due au maintien de l historique des opérations dans l ordre de la relation d effet, utilisée dans ABT pour préserver l admissibilité. Nous proposons une extension des fonctions utilisées aux opérations sur les chaînes de caractères. Les opérations prises en charge initialement par le modèle sont l insertion ou la suppression d un caractère à une position donnée. 4. Structure du mémoire Le mémoire est organisé en 6 chapitres: Le chapitre 1 présente les concepts de base des systèmes groupware. Nous commençons par définir le domaine du TCAO et le groupware, nous présentons ensuite les principales classifications des collecticiels, leurs caractéristiques et leurs fonctionnalités. Nous exposons les problèmes auxquels est confronté le développement des éditeurs collaboratifs. Le chapitre 2 dresse un état de l'art de la conscience du groupe dans les collecticiels. Nous définissons les différents éléments de la conscience du groupe qui peuvent exister, ainsi que les techniques logicielles permettant de les assurer. Le chapitre 3: est consacré à la mise en œuvre des outils de travail collaboratif. Nous présentons les modèles existants d'architecture logicielle utilisés dans la conception des systèmes collaboratifs, ainsi que les outils de développements. Nous donnons ensuite une description du Toolkit qu'on a exploité dans notre travail de recherche. Ce Toolkit, nommé MAUI, est un Toolkit Java, conçu pour faciliter le développement des interfaces graphiques multi-utilisateurs conscientes de la collaboration. Le chapitre 4: présente le composant MGTextPane, servant au développement d'éditeurs collaboratifs. Nous donnons la structure et l'architecture du composant ainsi que les mécanismes utilisés pour l'implémentation de la conscience de groupe. Le chapitre 5: concerne l'implémentation de l'édition collaborative par l'approche des transformées opérationnelles. Le chapitre 6: décrit à travers une interface graphique, intégrant le composant Groupware TextPane, le fonctionnement de celui-ci ainsi que des autres composants graphiques du Toolkit utilisé. Introduction générale 4

Chapitre 1 Groupware: Concepts de base v 1.1 Introduction Dans ce chapitre nous donnons une présentation de la notion et des outils de travail collaboratif assisté par ordinateur, CSCW, ainsi que des concepts connexes afin de présenter le contexte de notre travail et de déterminer une démarche appropriée. Nous commençons par donner les définitions, l'origine et l'évolution du TCAO et du Groupware. Nous présentons ensuite dans la section 1.4 les différentes classifications proposées dans la littérature. Il s'agit de trois taxonomies principales et de quelques variantes de ces dernières. Par l'exposé de ces taxonomies, nous éclaircissons la notion de collecticiel, les modes de fonctionnement, l'étendue des possibilités. Nous déduisons aussi certaines fonctionnalités requises par les outils de travail collaboratif que nous présentons avec certaines caractéristiques dans la section 1.5. Dans la section 1.6 nous mettons en évidence les problèmes relatifs au développement des outils de partage d'espace de travail et en particulier des éditeurs collaboratifs qui constituent notre domaine d'application. Ceci nous permet notamment d'identifier le problème de fusion de données dans lequel la gestion des situations conflictuelles pose un défi significatif. A la lumière de ce qui est présenté, nous pouvons déterminer une démarche à suivre dans la réalisation de notre travail. 1.2 Définitions 1.1.1 CSCW (Computer Supported Cooperative Work) En français TCAO(Travail Coopératif Assisté par Ordinateur), est un domaine de recherche qui s'intéresse au travail de groupe. Il a pour objectif d'offrir des outils et des supports permettant à des utilisateurs de travailler en groupe dans un espace de travail virtuel en disposant des facilités similaires à celles de la vie réelle: communication orale, textuelle ou visuelle, interaction sur des objets communs, etc. Chapitre 1 Groupware: Concepts de base 5

1.1.2 Groupware Plusieurs définitions ont été proposées dans la littérature pour décrire un Groupware, citons la définition, la plus courante, donnée par C.Ellis en 91 et traduite par Karsenty en 94: " Systèmes informatiques qui assistent un groupe de personnes engagées dans une tâche commune et qui fournissent une interface à un environnement partagé" [Grudin 94] [Laurillau 02] [Gomes 06]. Jean-Claude Courbon, définit le groupware comme: " L'ensemble des technologies et des méthodes associées qui, par l'intermédiaire de la communication électronique, permettent le partage de l'information sur un support numérique à un groupe engagé dans un travail collaboratif et /ou coopératif " [Courbon98]. Collecticiel est le terme utilisé par la communauté française comme traduction du terme Groupware. Nous trouvons aussi rarement les termes "synergiciel" ou "partagiciel". Nous allons utiliser indifféremment les termes Groupware, collecticiel, outil de travail collaboratif ou application collaborative pour désigner un tel système. 1.3 Origine et évolution des outils de travail collaboratif Le CSCW et le groupware ont émergés au milieu des années quatre-vingt. Le terme «Groupware» est utilisé par Peter et Trudy Johanson-Lenz [Grudin94] en 1981 dans un article intitulé «Consider the groupware : Design and Process Impacts on Communication in Electronic Medium» [Penichet et al.07] avant le terme CSCW apparu en 1984 où Irene Greif du MIT (Managment Information Technology) et Paul Cashman de Digital Equipment Corporation ont organisé un atelier qui rassemblait une vingtaine de personnes de différents domaines dans le but d étudier le travail de groupe et d explorer le rôle de la technologie dans l environnement de travail du groupe[grudin94]. L atelier regroupant des personnes telles que Douglas Engelbart (à l origine du système NLS/AUGMENT dans les années 1960, doté des premières fonctionnalités de travail informatique en groupe), Clarence Ellis, et autres, a inventé le terme CSCW (Computer Supported Cooperative Work) pour décrire cette discipline. La première conférence dédiée au CSCW a vu le jour en 1986 au Etats-Unis. La première génération des systèmes coopératifs a fournit les systèmes à écran partagés (NLS, MBlink). La deuxième génération offre des systèmes à fenêtres partagées (VConf, SharedX, Timbuktu) qui permettent de transformer des applications monoutilisateur en applications multi-utilisateurs transparentes à la coopération. Ces systèmes ont été importants pour l acceptation commerciale des collecticiels. Puis les boites à outils d interfaces multi-utilisateur (GroupKit v.1, ArtWindow, Netmeeting), issues de la technologie des interfaces homme-machine, sont apparues et étendent les systèmes à fenêtres partagées pour supporter les applications conscientes de la coopération et des Chapitre 1 Groupware: Concepts de base 6

mécanismes flexibles. La quatrième génération a vu naître les architectures à partage de données avec une distinction claire de l abstraction et de la vue graphique des données (Rendezvous, MMConf, Suite). Ces architectures permettent l accueil des retardataires, la détection d une perte de synchronisation, le support de sessions persistantes. La nouvelle génération se focalise principalement sur le support de la flexibilité et du multimédia. 1.4 Taxonomie des outils de travail collaboratif Il existe plusieurs classifications des outils d aide de travail de groupe, les plus répandues dans la littérature sont la classification spatio-temporelle (Espace-Temps) et la classification fonctionnelle (Trèfle du collecticiel). Nous présentons une troisième classification basée sur le domaine d application. La présentation de ces classifications est incontournable, elle permet en fait de distinguer les grandes classes des outils ainsi que déterminer les fonctions associées. 1.4.1 Classification Spatio-Temporelle Cette classification a été citée dans plusieurs travaux [Grudin 94]: Johansen en 1988 l a présentée sous forme de matrice, nommée Matrice Temps-Lieu, Ellis en 1991 la nomme matrice Espace-Temps. Elle est fondée sur 2 critères : le premier, axe d espace, définit la distance spatiale séparant les membres du groupe, deux cas sont possibles: même lieu, les utilisateurs sont dans la même salle (face à face) ou lieux différents : des villes ou des pays différents ou même des étages d un bâtiment. Le deuxième qui est l axe du temps détermine si l'outil groupware permet aux participants d interagir en même moment ou à des moments différents. Cette dimension permet de distinguer 2 grandes classes de collecticiels : les collecticiels synchrones ou temps-réel (real-time Groupware) et les collecticiels asynchrones (asynchronous Groupware) La Figure 1-1 montre des exemples d outils classés dans la matrice Espace-Temps Espace Lieux différents (à distance) Même lieu (face à face) Vidéo conférence Chat e-mail Tableau blanc électronique Post-it Même moment (Synchrone) forum de discussion Workflow Figure 1-1 Matrice Espace/Temps Moments différents (Asynchrones) Temps Grudin étend cette classification en introduisant la notion d imprévisibilité sur chacune des dimensions [Grudin 94][Courbon98]. Sur l axe du temps, une interaction peut se dérouler au même instant, à des instants différents prévisibles ou à des instants Chapitre 1 Groupware: Concepts de base 7

différents non prévisibles c'est-à-dire que les utilisateurs ne peuvent pas prévoir le moment de l interaction. Par exemple, dans un système de courrier électronique il n est pas possible de prévoir à quel moment les messages seront lus. De même, selon la dimension spatiale les participants peuvent se trouver dans le même lieu, dans des lieux éloignés localisables ou encore dans des lieux éloignés non localisables (imprévisible). Dans une vidéo conférence, par exemple, les participants sont répartis géographiquement dans des lieux différents mais prévisibles. On trouve aussi parfois une classification basée sur la taille et la durée de vie du groupe [Courbon98] pour lequel l outil collecticiel est destiné. Un outil peut être conçu pour être utilisé par plusieurs personnes ou par un nombre de personnes réduit (quelques personnes à une dizaine de personnes) Il peut conserver le travail réalisé par les membres du groupe d une façon permanente ou juste pour une période courte. Par exemple: Un salon de causerie réunit un nombre réduit de personnes pour une durée limité. Un sondage concerne généralement un grand public et n est pas permanent. Un annuaire électronique est conservé pour une longue période et il peut contenir les renseignements d un grand nombre de personnes. Beaucoup d outils peuvent être placés dans plus d une classe, un éditeur partagé par exemple, peut permettre les deux modes d interactions, synchrone et asynchrone. 1.4.2 Classification fonctionnelle - Trèfle du collecticiel Ellis et Wainer en 1994 [Salber95] ont proposé un modèle qui classifie les outils groupware selon les fonctionnalités intégrées et ils ont défini ces fonctionnalités par 3 aspects : - L aspect ontologique: décrit les classes des objets manipulés par le collecticiel ainsi que l ensemble des opérations possibles sur ces objets ; - L aspect coordination: définit les activités des participants et les relations entre ces activités ; - L aspect de l interface utilisateur : définit les interactions entre les participants et le Groupware et les autres participants [Salber95]. Inspiré de cette décomposition tripartie d Ellis, le groupe de travail Scoop du pôle de recherche centrée sur la communication Homme-Machine, a défini un modèle qu il a nommé le modèle du Trèfle fonctionnel du collecticiel, ce modèle considère que les services d un collecticiel couvrent trois espaces: la Production, la Coordination et la Communication. La Production désigne l exécution des tâches individuelles et/ou collectives concourant à l œuvre commune; La Coordination Il s agit de définir les acteurs (individus, groupes, rôle, agents, logiciels), d identifier les activités et les tâches et leurs relations temporelles, de désigner enfin les acteurs responsables des tâches et des activités; Chapitre 1 Groupware: Concepts de base 8

La Communication offre aux acteurs du collecticiel la possibilité d échanger de l information. La Figure 1-2 montre des exemples d outils classés dans le trèfle. Il existe des outils qui remplissent plus d une fonctionnalité et se situent donc dans l intersection de deux ou trois espaces du trèfle. Communication E-mail, Messagerie instantanée Workflow Agenda Plate forme collaborative Edition partagée Coordination Production Figure 1-2 Trèfle du collecticiel La classification d un outil simple destiné à résoudre un problème spécifique dans une des taxonomies existantes est facile, mais les systèmes de travail de groupe de nos jours sont complexes, ils intègrent plusieurs outils et fonctions et leur classification devient alors plus difficile et elle se diffère selon qu on prend en considération seulement les fonctionnalités que le système est conçu initialement pour les satisfaire ou qu on considère les fonctionnalités supplémentaires. Une classification proposée dans [Penichet et al.07] combine la classification spatio-temporelle et une classification basée sur trois caractéristiques du CSCW : la communication, la coordination et le partage d informations. Elle propose aussi de préciser si les fonctionnalités additionnelles sont prises en compte ou non. Le Tableau 1-1 montre des exemples d'outils de travail collaboratif classés selon cette méthode. Cette taxonomie signifie qu avec les fonctionnalités de base l e-mail par exemple, est considéré comme un outil de communication synchrone destiné à des personnes dispersées. Si nous considérons ses fonctionnalités additionnelles, nous obtenons la classification présentée au dessus du tableau. Il permet la communication, la coordination et le partage d'informations entre personnes dispersées ou non, en mode asynchrone. Chapitre 1 Groupware: Concepts de base 9

Outil Caractéristiques du CSCW Partage d info Communication Coordin ation Temps/Espace Sync. Async. Même e-mail 0 1 0 0 1 0 1 Chat 0 1 0 1 0 0 1 Forum 1 1 0 0 1 1 1 Vidéoconférence 1 1 0 1 0 0 1 Gestion document de 1 1 0 0 1 1 1 Workflow 0 0 1 0 1 1 1 Agenda 0 1 1 0 1 1 1 GDSS 1 1 1 1 0 1 1 Diffé rent E-mail 1 1 1 0 1 1 1 Tableau 1-1 Classification selon plusieurs critères 1.4.3 Classification par domaine d application Cette classification permet de catégoriser les collecticiels selon le domaine d'application [Nigay11]. Nous soulignons qu'il n'existe pas de décomposition unifiée des catégories d'outils de travail collaboratif; chaque classification, dans la littérature, peut privilégier un aspect particulier. Nous distinguons quatre grandes catégories d'outils: les applications de messagerie, dédiées à la communication Hommme-Homme médiatisée; les outils de coordination; les outils d'espace de travail et de ressources partagées et les jeux en réseaux. Nous allons donner pour chaque catégorie des exemples de classes d'applications. Nous soulignons que nous n'allons pas cerner toutes les classes existantes; vu la multiplicité et la diversité des outils, reconnues récemment avec l'essor des réseaux à haut débit, d'internet et de la téléphonie mobile, qui ont rendu les outils de travail collaboratifs de plus en plus accaparés par le grand public et utilisés par différentes organisations. 1. Les applications de messagerie électronique Les deux termes messagerie électronique et courrier électronique sont utilisés souvent indifféremment bien qu ils ne désignent pas la même chose [Courbon98]. Le courrier électronique est le moyen par lequel une personne peut envoyer à un ou plusieurs correspondants des messages. Chapitre 1 Groupware: Concepts de base 10

La messagerie électronique quant à elle, est une infrastructure conjuguant informatique et télécommunication dans le but de faire circuler des informations de diverses natures entre des postes de travail, et donc entre des personnes. A ce titre un système de messagerie fournit des services à divers types d applications. Le courrier électronique est une des applications qui fait appel au système de messagerie. Les systèmes actuels offrent des fonctionnalités supplémentaires par rapport aux messageries classiques, avec la prise en compte de groupes d'utilisateurs, de leur organisation et de leurs caractéristiques respectives. Courrier électronique, e-mail (Electronic mail) ou Courriel Le courrier électronique est la technologie Groupware répondant à la communication interpersonnelle asynchrone, la plus connue et la plus utilisé depuis longtemps. Identique au courrier postal, le courrier électronique permet d envoyer et de recevoir des messages, dont le contenu est le plus souvent un texte, accompagné éventuellement de fichiers annexes de différents types. Les logiciels de gestion de courrier sont enrichis par beaucoup de fonctionnalités complémentaires. Messagerie instantanée ou Chat (Internet Relay Chat : IRC) "Internet Relay Chat", appelé couramment chat, date de 1988 [Vil06]. C'est l une des applications les plus répandues, utilisée pour établir une communication synchrone, contrairement au courrier, et instantanée entre un groupe de personnes dans des espaces publics ("room"). Les messages des participants dans la conversation sont affichés à l écran l un à la suite de l autre. Forum de discussion Outil de communication asynchrone adapté à des discussions structurées. Un forum représente un site web permettant à des individus professionnels ou amateurs d échanger d opinions, de partager leurs connaissances, de poser des interrogations ou de faire un commentaire, sur un ou plusieurs thèmes de discussion. Chaque intervention est similaire à un message du courrier électronique, à la différence près qu il n y a pas de destinataire particulier. La contribution individuelle venant simplement s ajouter aux précédentes. Un forum peut être public, c.à.d. ouvert à tous les internautes qu ils peuvent le consulter et s ils le désirent, y contribuer par une question, une réponse ou un commentaire ; et il peut être fermé, c.-à-d. limité à un groupe de personnes déterminé. Liste de discussion Comme un forum, la liste de discussion est un outil de communication asynchrone à la différence qu il utilise le courrier électronique, les messages sont délivrés automatiquement dans les boîtes à aux lettres électroniques des membres de la liste, un abonné envoie un message à l adresse électronique de la liste et un programme de l application se charge de le distribuer à tous les abonnées. Généralement il faut s inscrire à la liste. Chapitre 1 Groupware: Concepts de base 11

Liste de diffusion (NewsLetters mailing list) Contrairement à la liste de discussion, la communication ici est unidirectionnelle. Un membre de la liste ne peut s exprimer mais recevoir seulement des informations, bulletin, magasine, revue de presse ou simple message de l administrateur, dans sa boîte aux lettres. Vidéoconférence La vidéo conférence permet à deux ou plusieurs personnes éloignées de communiquer en temps réel depuis leurs ordinateurs en disposant du son et de la vidéo provenant des webcams présentes chez les participants. Ils ont été les premiers outils à traiter les données multimédias sur des ordinateurs [Villemur06]. Parmi les systèmes de vidéo conférence existants, citons Vic et Rat, WebEx, NetMeeting, Cu-SEE-Me. On trouve aussi des mots comme visioconférence ou téléconférence. La visioconférence n entre pas dans la définition du Groupware, selon Courbon, puisqu elle consiste à permettre une réunion dans des salles équipées de moniteur vidéo, de caméra pour la personne et d une deuxième caméra pour transmettre l image du document en support de discussion, il y a absence d échange d informations numérisées. MédiaSpace Un médiaspace est un support de communication Homme-Homme Médiatisée (C.H.H.M) qui repose sur des flux vidéo mais contrairement à la vidéoconférence la disponibilité d un médiaspace est permanente. Il est composé de réseaux audio et vidéo reliés à des réseaux informatiques [Salber95], la présence de caméras fonctionnant en permanence dans les bureaux permet d entretenir une conscience forte entre les membres d un groupe. Un médiaspace vise alors à créer un espace virtuel partagé qui se superpose à l espace physique. La communication peut se faire aussi sous forme écrite : envoyer une note (Post-it) ou Envoyer un courrier. 2. Outils d organisation et de coordination Ce sont des outils de suivi et de gestion de projet qui permettent de synchroniser, de contrôler et d'accélérer les interactions entre les contributeurs. Parmi ces outils, les systèmes Workflow, les systèmes d'aide à la décision, les agendas partagés, les plannings collectifs. Agenda partagé Également nommé Calendrier partagé (Group Calendar), Planning électronique. Ces systèmes permettent de résoudre des problèmes concernant la planification de tâches [Gome 06]. Ils permettent à un utilisateur de tenir à jour son emploi du temps et de le partager avec les autres collaborateurs du groupe pour que chacun puisse consulter la disponibilité des autres en vue d organiser des réunions physique ou virtuelles. Chapitre 1 Groupware: Concepts de base 12

L environnement logiciel permet en général de rechercher des plages de disponibilité communes aux collaborateurs, de proposer des dates, de générer automatiquement des convocations ou des demandes d accord, de détecter l incompatibilité dans la planification d une tâche, etc. Les systèmes d aide à la décision GDSS (Group Decision Support Systems) Ces systèmes offrent plusieurs outils pour faciliter la prise de décision par un groupe d utilisateurs, tels que le vote électronique, le brainstorming (qui consiste à demander à un groupe d émettre des idées sur un sujet proposé de la manière la plus libre possible. Les participants sont invités à rebondir sur les idées émises par les autres) [Courbon98]. L anonymat et le droit de parole sont des fonctionnalités normalement mises en œuvre dans ces systèmes pour encourager les utilisateurs à s engager dans le processus de prise de décision [Gome 06]. GroupSystems est un exemple de tel système. Systèmes Workflow Traduit littéralement par "Flux de travail" ou "Flux de processus", sont des systèmes permettant la modélisation et la gestion informatique de l'ensemble des tâches à accomplir et des différents acteurs impliqués dans la réalisation d'un processus métier (industriels, commerciaux, administratifs, etc.). Le processus de travail est géré par une application Client/Serveur [Nigay11]. 3. Les outils de partage d'espace de travail et de ressources Ce sont des outils de collaboration par excellence, offrant la possibilité à des utilisateurs de travailler ensemble à distance et éventuellement en ligne, sur un même objet, sur une même interface dans le cadre d'un projet commun. Le modèle d'espace partagé introduit la notion d'activité qui associe un ensemble d'utilisateurs avec un ensemble d'objets selon la sémantique: chaque utilisateur possède les objets de l'activité [villemur 06]. Une session de travail lie dynamiquement un sousensemble d'objets et des utilisateurs d'une activité donnée. Ces objets sont appelés Artéfacts de travail. Ces outils regroupent les éditeurs, les tableaux blancs et les tables, les navigateurs collaboratifs. Les applications d édition conjointe Les environnements d édition conjointe permettent à un ensemble d utilisateurs de collaborer à l élaboration d un document mis en commun, les auteurs portent leurs contributions (modifier ou annoter le document) l un après l autre (mode asynchrone) ou en même temps (mode synchrone). Dans le mode asynchrone, l application permet de faire circuler le document, de manière séquentielle, entre les différents rédacteurs qui peuvent y apporter leurs contributions. Dans le deuxième cas, mode synchrone, les collaborateurs éditent le document simultanément. Chapitre 1 Groupware: Concepts de base 13

Selon la nature du contenu des documents partagés, on distingue : Les éditeurs de textes partagés et les éditeurs graphiques. Le type des documents traités évolue technologiquement [villmur06]. On passe du format textuel simple à des partages d'objets graphiques et d'images fixes, puis les documents deviennent des pages Web au format HTML, puis sont remplacés par des documents XML. Parmi les éditeurs existants citons InterNote, Quilt, Suite, GROVE, GRIFFON, DistEdit; des éditeurs plus récents sont, entre autres: Ace, SubEthatEdit, Gobby. Tableau blanc partagé Permet de traiter des informations graphiques et des images fixes. Il reproduit le comportement d'un tableau blanc classique. Cet outil est très utile dans le cas de télé-séminaires ou de télé-réunions. Les supports de la réunion sont visualisés, discutés et annotés au travers du tableau blanc partagé. Exemple: le tableau blanc de l'environnement Platine [villmur06]. Les navigateurs collaboratifs: Ces outils prennent en compte des documents Web pouvant contenir tout type de média textuel, graphique, des images fixes et flux multimédias. Il s'agit d'une extension de la navigation à un groupe d'utilisateurs. La co-navigation propose le concept de navigation synchrone passant d'un mode d'interaction fort, où une présentation identique est forcée chez tous les membres, à un mode plus assoupli, ou des mécanismes de visualisation des pages visités et des portions des vues sont appliqués. Colab est un exemple de navigateurs collaboratif [Vimr06]. 4. les jeux en réseau Sont certainement les collecticiels qui connaissent, avec les systèmes de messagerie, l essor le plus fulgurant. En synthèse, notons que certains outils recouvrent, comme c'est le cas dans les classifications précédentes, plusieurs domaines d'application. Ils peuvent intégrer, dans un même environnement, des outils complémentaires aux fonctionnalités de base dont ils sont créés pour satisfaire et par conséquent, ces outils embrassent alors plus d'une catégorie. Toutefois, nous croyons les avoir classé selon leurs fonctionnalités novices. L'exposé de ces taxonomies nous a permis d'avoir une image plus claire sur ce qu'est un collecticiel, sur les besoins requis, sur l'étendue des possibilités et sur la complexité de réalisation. Il nous a permis aussi, de préciser la catégorie d'outils de notre application. En fait, nous nous intéressons aux outils synchrones permettant à un groupe d'utilisateurs éloignés géographiquement de travailler sur les mêmes documents, les mêmes objets dans un espace de travail partagé (Shared Workspace). Chapitre 1 Groupware: Concepts de base 14