Axe Ingénierie des Systèmes d Informations Gestion de documents électroniques (et le travail collaboratif assisté par ordinateur) Philippe BEAUNE Philippe.Beaune@emse.fr 21 septembre 2006
Objectifs Découvrir différents aspects du document numérique en entreprise : les outils, les formats, les usages,... Et permettre une réflexion sur : les impacts sociaux, organisationnels,... Aquérir, au passage, une autre vision de l informatique 21 septembre 2006 2
Moyens pédagogiques Suppression des conférences (industrielles) et des visites en entreprises : EDI, ERP, EAI, sécurité, co-revue de projets, perspectives,... (cf. http://www.emse.fr/~beaune/supports) Découverte de CVS et XML (cours et TP) Utilisation obligatoire dans votre projet d'axe de CVS (programmation, documentation,...) et présence d'une partie XML dans chaque projet Une conférence obligatoire sur les aspects juridiques Notation de l'u.p. sur les T.P. (à rendre par mél) ; la note du projet d'axe incluera l'utilisation de CVS et la partie XML 21 septembre 2006 3
Emploi du temps Jeudi 21 septembre 2006 matin Cours : généralités et CVS Vendredi 22 septembre 2006 matin TP : CVS (sans, puis avec, Eclipse) Jeudi 28 septembre 2006 matin Cours : XML Lundi 23 octobre 2006 matin TP : XML 1 Jeudi 26 octobre 2006 matin TP : XML 2 Jeudi 14 décembre 2006 matin Conférence : aspects juridiques du document numérique (présence active requise) 21 septembre 2006 4
Quelques généralités sur le document numérique (1) Document : contenant, contenu, médium Contenant : effacement du support, structure (logique/restitution), formats Contenu : «contrat de lecture», traitement automatique du sens (cf. Web Sémantique par ex.),inscription -> texte informé, sens -> connaissances Médium : phénomène social, légitimité d'une info cf. RTP DOC : http://rtp-doc.enssib.fr/ 21 septembre 2006 5
Le document numérique (2) Document papier : édité, lu ou traité, diffusé, archivé, (perdu?) Document numérique : édité, retouché, traité, retouché, diffusé, traité autrement, archivé, traité encore autrement, retouché encore une fois, 21 septembre 2006 6
Le document numérique (3) Des formats Des outils pour produire, traiter, archiver, retraiter, diffuser, une information 21 septembre 2006 7
Nouvelles conceptions de l organisation (J-Y PRAX, Manager la connaissance dans l entreprise) << Pour rester réactive face à un environnement de plus en plus instable, incertain et complexe, l organisation est davantage perçue comme un processus de transformation permanente que comme un état fini, elle est pilotée par ses finalités plutôt que par ses structures, elle favorise la coopération et la transversalité, en autorisant la construction collective de l intelligence, elle produit du sens. Les nouveaux modes d organisation : par projets, par processus, le fonctionnement en réseau, l ingénierie simultanée, la dynamique qualité sont fondés sur l intelligence collective.>> 21 septembre 2006 8
Inadaptation des S.I. Bases de données structurées = 5% des informations d une entreprise Trop rigides : principes de fonctionnement d une entreprise évoluent plus vite que l analyse du S.I., décalage permanent, Algorithmique : résolution de problèmes compliqués, solutions multiples mais déductibles par l analyse 21 septembre 2006 9
Les NTIC (J-Y PRAX) «La limite principale des systèmes d informations traditionnels est qu il ne prennent pas en compte la majeure partie de l information que l entreprise produit et gère ; celle qui n est pas structurée, celle qui n obéit ni à une rationalité prédéterminée ni à des traitements standards.» 21 septembre 2006 10
Contenu du cours Passer en revue quelques outils informatiques favorisant le travail collaboratif Voir leurs avantages, leurs inconvénients, les précautions à prendre, l applicabilité dans un contexte intra-entreprise, inter-entreprise,... Qu est-ce qui change lorsqu on numérise l information? En tirer des généralités? 21 septembre 2006 11
Plan 1. Coopération / Groupware : généralités 2. Des outils mél, forum, chat, agenda, édition, stockage, vidéoconférence, EDI, Workflow, 3. Mise en place d'un projet de Groupware 4. Versionnage, CVS 21 septembre 2006 12
Groupware / collecticiel Groupware is intentional GROUP processes and procedures to achieve specific purposes plus software tools designed to support and facilitate the group s work. Collecticiel (AFCET) : un ensemble de techniques et de méthodes qui contribue à la réalisation d un objectif commun à plusieurs acteurs, séparés ou réunis par le temps et l espace, à l aide de tout dispositif interactif faisant appel à l informatique, aux télécommunications et aux méthodes de conduite de groupe. 21 septembre 2006 13
Groupware Groupware technique : communications ou conférences à distance et asynchrone, capitalisation, traçabilité, accès immédiat et pertinent aux infos, gestion automatique des flux d infos, gestion plannings Groupware organisation : réduction déplacements, réduction des coûts de manip papier, faciliter décisions (accès infos), diminuer les erreurs par monitoring des processus Groupware stratégie : apprendre à «apprendre ensemble», esprit d équipe, démarche de changement permanent, partager vision commune, améliorer l image technologique 21 septembre 2006 14
Coopération / Groupware (1) Les collecticiels (groupware) étendent les possibilités du travail coopératif (CSCW) Efficacité centrée processus => évolution des entreprises : décentralisation, autonomie des groupes rapidité d adaptation / environnement instable qualité des processus administratifs conception plus rapide distributions organisationnelle & géographique 21 septembre 2006 15
Coopération / Groupware (2) Le groupe dans le temps & l espace même instant instants différents même lieu réunion planning réu él. agenda partagé à distance téléphone courrier vidéoconf mél 21 septembre 2006 16
Coopération / Groupware (3) La taille et la durée du groupe petit grand temporaire mél, forum sondage par formulaire électronique électronique permanent base de doc. agenda partagé, partagée annuaire électronique 21 septembre 2006 17
Coopération / Groupware (4) Un groupe est constitué d humains l outil change les rapports sociaux activités (exécution, assistance, demande, décision, exploration) dynamique de groupe (confiance, ) changement des organisations management : des 3S (stratégie, structure, système) aux 3P (projet, processus, personne) 21 septembre 2006 18
Coopération / Groupware (5) «La confiance est un facteur déterminant de la performance collective et en particulier dans le cas des communautés virtuelles ou/et d équipes dont la production est à forte intensité immatérielle. Même si, d expérience ou d intuition, nous partageons tous cette conviction, les mécanismes de création de la confiance restent énigmatiques et peu maîtrisables : la confiance, qu est-ce que c est? Comment la créer? À quelle rationalité obéit-elle?» «Nous sommes capables de confier notre santé et notre vie à un médecin parfaitement inconnu au seul prétexte qu il a obtenu un diplôme national que nous ne vérifions même pas, alors que nous hésiterons à confier les clefs de notre véhicule à un laveur de vitre» 21 septembre 2006 19
Coopération / Groupware (6) Les fonctionnalités du groupware : communication interpersonnelle coordination collaboration mémoire de groupe Repenser le système d information et d autres choses 21 septembre 2006 20
Coopération / Groupware (7) Objectif du groupware : améliorer (?) d où une adaptation à l entreprise et quelques précautions de base : administration à moindre coût disponibilité, et réactivité aux pannes adaptabilité aux évolutions de l entreprise pérennité ouverture (standards, extensibilité, composabilité) 21 septembre 2006 21
Coopération / Groupware (8) Une architecture adaptée; exemple d une architecture distribuée : connexion simple entre 2 PC par RTC providing (centralisation, réplication) interconnexions de réseaux locaux et ne pas oublier les contraintes de sécurité 21 septembre 2006 22
Coopération / Groupware (9) Un collecticiel est un système multi-utilisateur : espace de production (modèle conceptuel) ex. : édition partagée espace de coordination (aspect dynamique) ex. : workflow espace de communication (échanges) ex. : vidéoconférence 21 septembre 2006 23
Le trèfle fonctionnel espace de production édition partagée workflow espace de coordination Visio-conf agenda mél forum chat espace de communication 21 septembre 2006 24
Les enjeux du Groupware Faciliter la coordination de participants Faciliter la communication entre les membres Faciliter la cohésion du groupe Favoriser l implication individuelle des membres Faciliter le partage des ressources entre les participants Faciliter l organisation du groupe 21 septembre 2006 25
Des outils : définition Définition : Le groupware est l ensemble des technologies et des méthodes de travail associées qui, par l intermédiaire de la communication électronique, permettent le partage de l information sur un support numérique par un groupe engagé dans un travail collaboratif (Courbon & Tajan) 21 septembre 2006 26
Un peu d histoire En 1968 : NLS (onlinesystem), Standford Research Institute, co-rédaction à 17 personnes réparties sur tout le territoire des USA En 1968 : démo de vidéo conférence par Doug Engelbart 21 septembre 2006 27
Des outils : mél & forums repose sur un système de messagerie possibilité d attachement comm. asynchrone et archivage facilite l'information d'un plus grand nombre nombreux effets pervers (parapluie, langage, pub/spam, rédaction, inondation, ) liste de diff. vs forum gestion des méls par agents (cf. Maes) 21 septembre 2006 28
Des outils : chat Communication synchrone Conférence à plusieurs Echange de messages écrits Facilité de mise en œuvre 21 septembre 2006 29
Des outils : agenda électronique partagé màj de son agenda et publication recherche de rendez-vous (et déplacements) problème de standard pb de la maj : PDA, atteinte à la vie privée? pb d appropriation incontournable et d engagement collectif 21 septembre 2006 30
Des outils : édition conjointe Circulation de fichiers => pb des versions, suivi de l historique, édition conjointe synchrone : tableau blanc, partage d applications, écran distant, projection, édition conjointe asynchrone : cf. workflow 21 septembre 2006 31
Des outils : stockage de données Ftp, disques partagés, BdD réparties/distribuées Distribution des données / traitement Gestion des problèmes de concurrence, de fiabilité, de cohérence, d optimisation de requêtes ou de transaction, (verrous, réplications, ) cf. SGDT, ERP, 21 septembre 2006 32
Des outils : vidéoconférence Visioconférence + partage d applications : tableau blanc (bloc-notes) bureautique Application à la télémaintenance, télédiagnostic, coédition, Attention au comportement des acteurs 21 septembre 2006 33
Des outils : réunion électronique Salle aménagée (écrans claviers) mais discussions «face-à-face» Projection d un résultat (selon les méthodes) Vote électronique Analyse en direct Rationalisation trop grande? 21 septembre 2006 34
Des outils : l EDI Echanges clients/fournisseurs/sous-traitants Normalisations dès 1982 (ANSI) EDIFACT (ISO) : adm., comm., transp. Eviter les re-saisies (erreurs), accélérer les transmissions, Confidentialité, signature, => réseaux 21 septembre 2006 35
Des outils : Workflow (1) Automatisation de tout ou partie d une procédure administrative, durant laquelle des documents, des informations, ou des tâches sont passées d un participant à un autre pour une action, selon un ensemble de règles Workflow : ad hoc (notes d infos), administratif (ordres de missions), documentaire (production de documents), production (pilotage, cœur du métier de l ent.) 21 septembre 2006 36
Des outils : Workflow (2) opération : élément exécutable par un acteur acteur : personne en charge d une op. règles : gestion automatique des passages circulation : séquentielle, parallèle, conditionnelle mise en œuvre par formulaire él., et/ou par par BdD partagée (pour stockage) 21 septembre 2006 37
Des outils : Workflow (3) Amélioration des délais, de la qualité, de la fiabilité, de la confidentialité, : permet de meilleures décisions Suivi possible des procédures en cours Meilleure vision de son travail mais pression accrue (Ré)organisation des procédures Problèmes d ouverture (standards?) 21 septembre 2006 38
Des outils : Workflow (4) Besoin de flexibilité (utilisation de rôles vs. acteurs) Ne doit pas tuer la créativité Doit être accepté par tous Langages graphiques Recherches sur flexibilité (avec agents), sur formalisations, 21 septembre 2006 39
GED Objectifs : diminuer stockage et transactions, améliorer recherche, meilleure diffusion, sécuriser, décentraliser le traitement GED administrative, bureautique, documentaire, technique Indexation et recherche Enregistrement des documents définitifs, ou dès leur naissance? Aspects juridiques 21 septembre 2006 40
Des outils : divers Localisation/interruption (beep-beep- ) Post-It électroniques Ateliers de génie logiciel Vidéo-projection d un compte rendu live Environnements de TCAO (génériques ou dédiés) : organisation de lieux communs de stockage (espaces virtuels) et fonctionnalités diverses A tout ça, il faut ajouter maintenant la mobilité 21 septembre 2006 41
Le trèfle fonctionnel espace de production versionnage workflow espace de coordination édition partagée mél agenda forum chat Visio-conf espace de communication 21 septembre 2006 42
Mise en place d un projet groupware Diagnostic (problèmes, besoins) Conception (pragmatique ; étudier/reconfigurer les processus, les structures, les compétences,...) Réalisation (coûts, délais, migration des systèmes organisationnels et applicatifs, prototypages successifs) Mise en place (maîtrise du changement et gestion de la surcharge de travail) Pilotage (amélioration permanente, évaluation de la performance) 21 septembre 2006 43
Des pièges mise en place lente avantages difficiles à quantifier les seniors rechignent besoin de nouveaux rôles résistance au partage d informations compétitions inter-personnelles overdose d informations croire qu il ne s agit que de communications problèmes de comptabilités techniques restructurations... 21 septembre 2006 44
Du travail de groupe à la gestion des connaissances? Carré de Nonaka & Takeuchi connaissance tacite connaissance explicite connaissance tacite socialisation externalisation connaissance explicite internalisation combinaison 21 septembre 2006 45
Plan 1. Coopération / Groupware : généralités 2. Des outils mél, forum, chat, agenda, édition, stockage, vidéoconférence, EDI, Workflow, 3. Mise en place d'un projet de Groupware 4. Versionnage, CVS
versionnage : qu est-ce? Un système de gestion de l'évolution (et éventuellement de la co-production) d'un document ; et gestion des versions (concurrentes, parallèles) Un système de gestion de versions : pour la programmation, les sites Web, les livres, Permet de garder des traces Répond au problème des copies multiples dans une arborescence de versions différentes Données centralisées sur un serveur En extraire une partie pour travailler localement sur sa machine : travail en parallèle possible, aide à la gestion des conflits 21 septembre 2006 47
Versionnage : pourquoi? En Génie Logiciel : Développement multi-plateforme, multi-license Gestion de produits spécifiques qui évoluent, issus d'un tronc commun qui évolue également Traçabilité de l'évolution d'un logiciel Notion de release stable (versions majeures, mineures, alpha/beta) Possibilité de travail collaboratif Incitation à documenter les changements mêmes mineurs Utilisable pour la production de n'importe quel document numérique, sous conditions... 21 septembre 2006 48
Versionnage : problématique Cohérence : si plusieurs documents sont nécessaires à un projet et évoluent Dépendances : si un document est modifié, quelques autres documents doivent l'être Coordinations : si travail d'équipe Consistance : si plusieurs version en parallèle Archivage/historisation : permettre des retours en arrière 21 septembre 2006 49
Versionnage : numérotation M.m.p : M = Major level ; modif fonctionnelle du produit, compatibilité non garantie m = Minor level ; modif fonctionnelle d'une caractéristique p = Patch level ; correction de bugs Éventuellement ajout de d (développement), a (alpha), b (beta), puis RC (release candidate), numérotés : 4.0.8.b2 2.7.1.RC1 Éventuellement si M=O : en développement Éventuellement si m impair : en développement, sinon stable CVS fait autrement, mais offre la possibilité de «tags» 21 septembre 2006 50
CVS : comment ça marche? On peut travailler avec un CVS en local (seul, ou partage de disque) ou sur un serveur (à plusieurs, en client/serveur) L accès au serveur peut être non sécurisé (pserver) ou sécurisé (kerberos, ssh, ) Travail local puis synchronisation avec la base Pas sur modèle lock-modify-unlock... mais sur modèle copy-modify-merge 21 septembre 2006 51
L'outil standard diff Standard sous Unix pour fichiers «texte» ; existe sous d'autres OS, pour d'autres formats de fichiers Diff fichier1 fichier2 Sortie de la forme : n1 a n3,n4 n1,n2 d n3 n1,n2 c n3,n4 Exemple : 2c2,4 < voici la ligne 2 -- > voici la ligne 2 modifiée > et la suivante ajoutée 21 septembre 2006 52
L'outil historique rcs Revision Control System Fonctionne sur modèle lock-modify-unlock Fichiers texte uniquement ci <filename> : check in (crée <filename,v> et demande un commentaire), voir les options co -l <filename> : check out a working copy rcsdiff -r1.2 [-r2.3] <filename> rlog -r1.2 <filename> 21 septembre 2006 53
rcs : versions et autres sélections Par défaut : 1.1 puis 1.2 puis 1.3... à chaque ci Option -r2.3 crée une version 2.3 Option -stoto : spécifie un état (Exp, Stab, Rel) Option -wtoto : spécifie l'auteur (sinon login) Option -ddate : seulement pour co Option -n : spécifie un nom symbolique pour ci utilisable ensuite avec -r pour co 21 septembre 2006 54
rcs : création de branches Développement linéaire par défaut : (1.1) -> (1.2) -> (1.3) -> (2.1) -> (2.2) Pour créer une branche utiliser l'option -r avec par exemple -r1.3.1.1 (1.1) -> (1.2) -> (1.3) -> (2.1) -> (2.2) \----> (1.3.1.1) Puis possibilité de recoller avec rcsmerge 21 septembre 2006 55
rcs : substitution de mots-clés rcs substitue ces chaines lors du co $Author$ $Date$ $Id$ ou $Header$ $Revision$ $Log$ $Locker$ $Name$ $State$ 21 septembre 2006 56
rcs : limitations Ne permet de travailler que sur un seul fichier à la fois (fichiers non liés, pas d'ensembles) Ne travaille que localement, pas de réseau (à plusieurs => partage nécessaire du disque) Bloque l'accès au fichier «chargés» 21 septembre 2006 57
CVS : principes Concurrent Version System Repository = référentiel (local ou client/serveur) Modèle copy-modify-merge Fichiers texte uniquement Convient mêmes aux gros projets Reprend les idées de base de rcs Beaucoup d'implantations (inclus dans Linux, dans eclipse, existe aussi sous MSWindows) 21 septembre 2006 58
CVS : fonctionnalités CVS gère les numéros de versions et aide à gérer les conflits CVS permet aussi de comparer les fichiers locaux avec ceux du référentiel (marche sur du texte ligne à ligne : ne pas hésiter à aller à la ligne, ne pas tout mettre dans la base) CVS permet d avoir des historiques CVS permet d attacher des commentaires aux versions CVS permet d attacher des noms symboliques aux versions (tags) CVS permet de créer des branches puis de fusionner Attachement de scripts sur événements (avertissement par mél,...) 21 septembre 2006 59
CVS : quelques commandes init : création d'un référentiel vide import : mise en place initiale des fichiers checkout : extrait une copie de travail des modules désirés update : met à jour les fichiers d une copie de travail par rapport aux versions de la base commit : archive une version dans la base mais il faut synchroniser avant (avec update) add puis commit : ajout d'un fichier 21 septembre 2006 60
21 septembre 2006 61
Puisque l'utilisateur Y veut apporter des modifs faites sur une version antérieure (à cause des modifs faites par X), cvs refusera le commit. Y devra faire un update pour «merger» les modifs de X et les siennes. S'il n'y a pas de conflits, cvs le fait, sinon il avertit et Y doit faire les modifs. 21 septembre 2006 62
CVS : accès au référentiel 5 méthodes d'accès : accès direct (en local) : local serveur simple (port 2401 par déf.) : pserver serveur avec kerberos : kserver serveur avec GSSAPI : gserver serveur avec rsh/ssh : ext cf. variable d'environnement CVSROOT 21 septembre 2006 63
CVS : versions, sélections, branches sélection par dates sélection par tag création de branches 21 septembre 2006 64
La gestion de versions Il n y a pas que CVS mais il est assez simple Il est ouvert et gratuit Il existe comme outils en ligne sur Linux Il existe des versions GUI pour Windows et autres, et des interfaces Web Il existe même une version serveur pour Windows NT Il est intégré dans eclipse Très utilisé dans l Open Source 21 septembre 2006 65
CVS : quelques conseils Se limiter aux fichiers texte Ne pas tout mettre dans CVS Ne déposer dans la base CVS un fichier modifié qu après être vraiment sûr qu il fonctionne bien avec le reste(compil, tests, ) à vos claviers 21 septembre 2006 66