Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

36
DEVELOPPEMENT D’UN LOGICIEL DE RESEAU SOCIAL COMME SOUTIEN A UNE COMMUNAUTE DE PRATIQUES Dajana Kapusova Leconte Mémoire présenté pour l’obtention du DESS STAF Sciences et Technologies de l’Apprentissage et de la Formation TECFA, Faculté de Psychologie et de Sciences de l'Education Université de Genève Juin 2008 Jury : Daniel K. Schneider MER, TECFA Directeur Mireille Bétrancourt PO, TECFA Examinateur Frédéric Radeff Webmaster, UNIGE Examinateur

description

Mémoire présenté pour l’obtention du DESS STAF Sciences et Technologies de l’Apprentissage et de la Formation TECFA, Faculté de Psychologie et de Sciences de l'Education, Université de Genève juin 2008 1. INTRODUCTION 2. REVUE DE LITTERATURE 2.1. RESEAU SOCIAL 2.1.1. THEORIE DES SIX DEGRES 2.1.2. THEORIE DES LIENS FAIBLES ET DES LIENS FORTS 2.1.3. NOMBRE DE DUNBAR 2.2. LOGICIEL SOCIAL 2.2.1. COMMUNAUTES SUR INTERNET ET INTERACTIONS SOCIALES 2.2.2. TYPOLOGIE DES LOGICIELS SOCIAUX 2.2.3. TYPOLOGIE DES LOGICIELS DE RESEAUX SOCIAUX 2.2.4. FOAF – FRIEND OF A FRIEND 2.3. RESUME 3. ANALYSE DES LOGICIELS SOCIAUX 3.1. LINKEDIN 3.2. 6NERGIES 3.3. LAST.FM 4. LOGICIEL SOCIAL DE TECFA 5. CONCLUSIONS ET PERSPECTIVES 6. BIBLIOGRAPHIE ANNEXE 1 : LDAP ATTRIBUTS 3.4. RESUME

Transcript of Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Page 1: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

DEVELOPPEMENT D’UN LOGICIEL DE RESEAU SOCIAL COMME SOUTIEN A UNE COMMUNAUTE DE PRATIQUES

Dajana Kapusova Leconte

Mémoire présenté pour l’obtention du DESS STAF

Sciences et Technologies de l’Apprentissage et de la Formation

TECFA,

Faculté de Psychologie et de Sciences de l'Education

Université de Genève

Juin 2008

Jury : Daniel K. Schneider MER, TECFA Directeur

Mireille Bétrancourt PO, TECFA Examinateur

Frédéric Radeff Webmaster, UNIGE Examinateur

Page 2: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 2 -

Tables des matières 1. INTRODUCTION 3

2. REVUE DE LITTERATURE 4

2.1. RESEAU SOCIAL 4 2.1.1. THEORIE DES SIX DEGRES DE SEPARATION 5 2.1.2. THEORIE DES LIENS FAIBLES ET DES LIENS FORTS 5 2.1.3. NOMBRE DE DUNBAR 6 2.2. LOGICIEL SOCIAL 6 2.2.1. COMMUNAUTES SUR INTERNET ET INTERACTIONS SOCIALES 7 2.2.2. TYPOLOGIE DES LOGICIELS SOCIAUX 8 2.2.3. TYPOLOGIE DES LOGICIELS DE RESEAUX SOCIAUX 10 2.2.4. FOAF – FRIEND OF A FRIEND 11 2.3. RESUME 12

3. ANALYSE DES LOGICIELS SOCIAUX 13

3.1. LINKEDIN 14 3.2. 6NERGIES 17 3.3. LAST.FM 20 3.4. RESUME 22

4. LOGICIEL SOCIAL DE TECFA 22

4.1. CAHIER DES CHARGES 22 4.1.1. GESTION DU PROFIL DE L’UTILISATEUR 23 4.1.2. RECHERCHE SELON DIFFERENTS CRITERES DANS L’ENSEMBLE DU RESEAU 23 4.1.3. VISUALISATION DU VOISINAGE RESEAU 23 4.2. ENVIRONNEMENT TECHNIQUE 23 4.2.1. HTML 24 4.2.2. PHP 24 4.2.3. LDAP 24 4.3. FONCTIONNALITES 26 4.3.1. SE CONNECTER/DECONNECTER 26 4.3.2. CONSULTER SON PROFIL OU CELUI DES AUTRES MEMBRES 26 4.3.3. EDITER SON PROFIL 26 4.3.4. RECHERCHE 27 4.3.5. LIENS NAVIGABLES 28 4.3.6. VISUALISER LES MOTS-CLES (KEYWORDS) 28 4.3.7. VISUALISER LE VOISINAGE RESEAU 28 4.4. ARCHITECTURE DU LOGICIEL 29 4.4.1. CONNECT/DISCONNECT 30 4.4.2. PROFILE 30 4.4.3. MODIFY 30 4.4.4. SEARCH 30 4.4.5. KEYWORDS 31 4.4.6. NEIGHBOUR 31 4.4.7. INDEX 32 4.5. TEST UTILISATEUR ET PROBLEMES SOULEVES 32

5. CONCLUSIONS ET PERSPECTIVES 34

6. BIBLIOGRAPHIE 34

ANNEXE 1 : LDAP ATTRIBUTS 36

Page 3: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 3 -

1. Introduction

Depuis quelques années nous assistons à une explosion du nombre de sites web qui nous permettent de rentrer en relation avec d’autres personnes. Que ce soit pour développer votre réseau d’amis ou professionnel, pour faire partager votre passion avec d’autres ou pour construire une base de connaissances ensemble, ils sont nombreux à se partager le marché. La plupart d’entre eux sont gratuits et accessibles à tous à condition d’accéder au web. Ils s’appellent des logiciels sociaux et font désormais partie incontournable de notre vie. Nous allons nous intéresser plus particulièrement à une catégorie de ces logiciels, à savoir les logiciels des réseaux sociaux.

Le grand pionnier dans ce domaine était le site Friendster créé il y a 5 ans et qui se basait sur une théorie selon laquelle il était possible de contacter n’importe qui dans le monde en passant en moyenne par six personnes intermédiaires. Il parait facile de se faire de nouveaux amis à l’autre bout du monde dont on connaît rien mise à part la fiche de leur profil. Nous nous faisons des « amis » et l’ami d’un ami d’un autre ami devient aussi le nôtre. A force d’en avoir tellement nous ne savons plus qui est qui. Mais qu’en est-il des gens de notre entourage dont nous faisons connaissance au cours de notre vie au moment de nos études par exemple ?

Le Tecfa (Technologies de Formation et Apprentissage) de l’Université de Genève en fait partie et nous devons affirmer avec tristesse que malgré la petite taille de l’ensemble du réseau Tecfa, nous ne connaissons pas grand monde. Ses membres partagent un intérêt commun et cet intérêt perdure souvent au-delà des deux ans d’études de diplôme. Même si nous ne connaissons pas la plupart des membres, l’argument consistant à faire partie de Tecfa est en soi une aide à la mise en relation.

C’est pour cette raison que nous allons nous intéresser dans ce travail au Tecfa et à la manière dont nous pourrions favoriser la prise de contact entre les individus. Notre but n’est pas de développer un outil complet comparable aux logiciels sociaux déjà existants sur le marché mais avant tout de rassembler des informations sur les membres de Tecfa et d’en tirer le meilleur profit.

Pour imaginer un logiciel social adapté à nos besoins, nous allons tout d’abord procéder à une revue de littérature et étudier quelques logiciels de réseaux sociaux déjà existants. Nous allons ensuite définir le cahier des charges de notre outil social et décrire de quelle façon il a été implémenté. La phase de test mettra en avant les bugs de programmation à corriger et permettra l’amélioration de l’outil. Finalement, nous en discuterons les limites et présenterons nos conclusions.

Page 4: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 4 -

2. Revue de littérature

2.1. Réseau social

Un réseau social est une structure formée par des relations entre des personnes. Cette structure sociale est composée de nœuds, généralement représentés par des individus ou des organisations. Les nœuds sont reliés entre eux par diverses connaissances sociales qui peuvent aller d'une connaissance simple jusqu'à un lien familial très fort. Le terme « réseau social » a été utilisé pour la première fois en 1954 dans l’article « Class and committees in a Norwegian island parish1» de l’anthropologue social anglais J. A. Barnes.

Aujourd’hui, avec le développement de l’informatique, nous parlons énormément des réseaux sociaux en ligne, c’est-à-dire sur internet pour connecter des amis, des professionnels et d'autres individus entre eux à l'aide de différents outils que nous appelons les logiciels sociaux.

Chacun fait partie d’un ou plusieurs réseaux sociaux. Bien que les réseaux existent depuis toujours, ce n’est que depuis quelques années que ce terme est devenu très utilisé. C’est avant tout avec l’apparition de l’internet que les réseaux se sont développés grâce aux nouveaux logiciels et sites qui ont permis de faire évoluer les pratiques liées aux réseaux sociaux. Un autre terme nous vient du Canada qui décrit la prise du contact et la mise en relation ; c’est le « réseautage » ou « social networking » en anglais. De nombreuses publications et études ont vu le jour au sujet des réseaux sociaux et il existe même un journal qui lui est dédié : Social Networks2.

Nous pouvons imaginer un réseau social comme un graphe composé de nœuds et de liens. Les nœuds sont alors les différents acteurs (individus ou organisations) et les liens sont les rapports entre ces acteurs. Dans un petit groupe, un lien personnel peut être établi entre presque toutes les personnes. Par contre dans un très grand groupe, prenons par exemple un pays, il est impossible pour que chaque personne puisse avoir une relation même avec une fraction significative de ce groupe.

1 Barnes, J.: Class and Committees in a Norwegian Island Parish. Human Relations 7 (1954), p. 39-58. 2 http://www.sciencedirect.com/science//journal/03788733

Extrait de l’article de J.A. Barnes

Page 5: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 5 -

2.1.1. Théorie des six degrés de séparation

Les sites des réseaux sociaux s'appuient sur la théorie des six degrés de séparation avancée en 1967 par le scientifique américain Stanley Milgram, de l’Université Harvard. Selon cette théorie, il existerait en moyenne six degrés de séparation, c'est-à-dire six intermédiaires entre vous et n'importe qui d'autre dans le monde. Ainsi, il est possible d’atteindre n’importe quelle personne qui qu’elle soit, où qu’elle vive. Faisons vite le calcul. Si chacun ajoute dans son réseau 43 de ses relations, nous arrivons au sixième degré de séparation à 436, ce qui nous donne 6'321'363’039 personnes. C'est incroyable, nous pouvons contacter tout le monde ! Ceci dit, personnellement nous ne savons même pas qui habite dans notre immeuble.

Stanley Milgram a mené son expérience en choisissant au hasard des habitants de la ville Omaha, au Nebraska, et leur avait demandé d'expédier des colis à un habitant de Boston identifié par son seul nom et son métier (courtier); jamais son adresse. Les « expéditeurs » devaient envoyer le colis à une personne qu'ils connaissaient et qui leur paraissait être la plus susceptible de faire progresser le colis vers Boston. Il avait fallu, chaque fois, entre six et sept étapes au colis pour atteindre sa destination, d’où le nom de la théorie.

Avec le développement des nouvelles technologies et de l’internet, cette théorie a pu être testée à plus grande échelle. Deux chercheurs de l’université de Columbia ont lancé en 1998 le projet Small World3. 6’000 personnes venant du monde entier ont été invitées à entrer en contact avec 18 « cibles » réparties dans 13 pays du monde. Les volontaires ne connaissaient que leur nom et leur fonction et devaient les approcher en demandant à une seule relation de trouver une relation qui connaîtrait quelqu'un qui… et ainsi de suite jusqu'à elles. A première vue, ce ne fut pas un grand succès. Sur 24’000 recherches lancées, seules 384 arrivèrent à destination. Si autant de requêtes n'ont pas abouti, c'est que noyées sous les spams et les virus, de nombreuses personnes contactées n'ont pas donné suite à la chaîne.

2.1.2. Théorie des liens faibles et des liens forts

Notre réseau relationnel peut être divisé en deux catégories de liens : les liens forts ou les liens faibles. Les liens forts s’établissent entre les membres de votre famille, vos amis proches et vos collègues réguliers. Ils durent sur le long terme, sont d’une réciprocité élevée, les échanges sont plus fréquents et plus intimes. Tandis que les liens faibles s’établissent habituellement sur un court terme et sont très contextuels, p.ex. pour la durée d’un projet. L’échange est unique et à faible répétition.

Les logiciels sociaux s’appuient avant tout sur le développement des liens faibles. Pourquoi ? Cela vous étonnera, mais les relations les plus efficaces sont plus souvent du côté des liens faibles. Car les individus avec lesquels nous sommes faiblement liés travaillent dans des sphères différentes et ont donc accès à des informations différentes de celles que nous recevons. En plus, nous avons en général plus de connaissances que d’amis. Cette théorie de

3 http://smallworld.columbia.edu

Page 6: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 6 -

la force des liens faibles4 est connue depuis 1973 dans le domaine de la sociologie suite aux travaux sur la force et la faiblesse des liens interpersonnels et la diffusion de l’information du sociologue américain Mark Granovetter.

2.1.3. Nombre de Dunbar

Il est important d’entretenir des liens forts, mais le cercle de vos proches est très limité et vous n’avez ni le temps nécessaire ni l’envie de l’accroître et de l’entretenir sans cesse. Selon l’anthropologue anglais Robin Dunbar5, il existe une limite cognitive du nombre de personnes avec lesquelles nous pouvons maintenir une relation forte. Il a calculé que le cerveau humain ne peut maintenir plus de 150 connexions sociales actives à un instant T. Cette limite a été calculée en fonction du volume de la région du néocortex du cerveau de 36 primates6. Il semble que le nombre de membres d’un groupe qu’un primate peut suivre est limité par le volume du néocortex et ainsi, en corrélant les résultats, Dunbar a prédit la taille moyenne d’un groupe chez l’être humain qui est de 150.

Le nombre de Dunbar fait l’objet de discussion au sujet des logiciels sociaux pour déterminer la taille des réseaux qu’ils devront prendre en compte. Ce chiffre reste controversé et selon les observations de C. Allen, la taille d’un groupe d’une communauté en ligne se situe au dessous de ce nombre7.

2.2. Logiciel social

Un logiciel social permet aux individus de se rencontrer, de se connecter ou de collaborer via une communication sur internet et de former ainsi une communauté virtuelle. Il s'agit d'un logiciel ou d’un outil de mise en relation s'appuyant sur l'interaction d'un groupe ou d'une communauté.

Les logiciels sociaux sont devenus très populaires depuis ces dernières années, mais ses débuts datent depuis beaucoup plus longtemps. Christophe Allen, la référence américain dans le domaine du logiciel social, a décrit dans son article « Tracing the Evolution of Social Software8 » l'historique du concept du logiciel social. Il situe l'idée du logiciel social en 1945. A cette époque, Vannevar Bush, conseiller scientifique de Roosvelt durant la deuxième guerre mondiale, a imaginé et décrit dans son article « As we may think » un dispositif appelé

4 Granovetter, M. S.: The Strength of Weak Ties. American Journal of Sociology 78 (1973), p. 46-47 et p. 1360-1380. 5 Dunbar, R.: Co-evolution of neocortex size, group size and language in humans, Behavioral and Brain Sciences 16 (1993), p. 681-734. 6 Le terme primate désigne les hommes, les grands singes, les autres singes et les lémuriens. Les primates forment un ordre des mammifères placentaires, caractérisés par une vie en général arboricole, des ongles aux doigts et orteils, la préhension par opposition du pouce, une prédominance de la vision sur l'olfaction (perception des substances odorantes). 7 http://www.lifewithalacrity.com/2004/03/the_dunbar_numb.html 8 http://www.lifewithalacrity.com/2004/10/tracing_the_evo.html

Page 7: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 7 -

« memex » que nous appellerions aujourd'hui un ordinateur personnel et qui aurait des bénéfices pour les groupes.

« Un memex, c'est un appareil dans lequel une personne stocke tous ses livres, ses archives et sa correspondance, et qui est mécanisé de façon à permettre la consultation à une vitesse énorme et avec une grande souplesse. Il s'agit d'un supplément agrandi et intime de sa mémoire. »

Bien que le terme « logiciel social » est relativement nouveau, l’idée existe déjà depuis très longtemps. Le développement a commencé avec le lancement du site Friendster aux Etats-Unis en mars 2003 proposant la rencontre en ligne se basant sur la théorie des six degrés de séparation. Depuis, plusieurs centaines d'outils de logiciels sociaux ont vu le jour et avec l’effet de mode, chaque semaine de nouveaux naissent. Certains logiciels ont rencontré beaucoup de succès, surtout outre-atlantique.

Mentionnons que Friendster a obtenu en juin 2006 un brevet sur certains aspects de sa technologie de réseaux sociaux. Ce brevet couvre la manière dont les relations entre des individus sont établies et affichées une fois qu’ils sont inscrits dans le réseau social.

2.2.1. Communautés sur internet et interactions sociales

Les sites des réseaux se reposent sur la notion de communauté en ligne (ou communauté virtuelle). Ce sont des groupes de personnes qui communiquent et interagissent entre eux à l'aide des technologies de l'information, typiquement l'Internet, plutôt que face à face. Les communautés sont plus ou moins importantes et jouent sur un critère pour se différencier.

Nous pouvons distinguer :

• communauté d'intérêt (community of interest) – des personnes partageant un intérêt commun ou une passion. Elles partagent des idées au sujet de cette passion, cherchent des solutions aux problèmes communs. Toutefois, les membres savent peu l’un sur l’autre en dehors de ce domaine. Leur participation est fréquente.

• communauté de pratique (community of practice) – est un groupe de professionnels qui s’organise pour échanger des informations, des expériences, le savoir-faire relatifs au domaine bien précis. Ils sont confrontés aux interrogations et problèmes similaires qu’ils essayent de résoudre ensemble.

• communauté d'objectifs (community of purpose) – met l’accent sur la réalisation d’un but commun. comme par exemple les contributeurs de Wikipedia qui veulent construire une encyclopédie en ligne gratuite.

Page 8: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 8 -

Le mot communauté provient du latin « communis » (commun) dérivant lui-même de « cum » (avec, ensemble) et de « munus » (charge, dette). Commun se dit d’une chose qui appartient à tous, concerne tout le monde, qui est partagée, faite avec d’autres.

Toute communauté est basée sur l’interaction sociale entre les membres. Plus la communauté fournit de possibilités pour le contact social, plus grande seront les chances que les membres établissent un lien entre eux. Selon des études scientifiques de comportement, dans la vie de tous les jours, les individus choisissent les amis du même age, revenu, sexe, état civil et/ou ethnie et que la similarité des intérêts est un facteur important pour créer des liens. Les individus peuvent avoir plusieurs choses en commun, comme le montre le graphique ci-dessous (liste non exhaustive).

Et c’est justement sur ces similarités que se basent les sites des réseaux sociaux. Ceux-ci proposent des outils qui suggèrent aux membres des « voisins », c'est-à-dire des personnes qui vous ressemblent afin de créer une interaction. Un voisin peut être quelqu’un qui a un profil semblable (le profil étant les informations que la personne a rentrées lors de son inscription sur un site) ou avec un comportement semblable (p.ex. elle écoute le même genre de musique sur internet).

En étudiant certains sites de réseaux sociaux plus loin dans ce travail, nous verrons de quelle façon ces similarités sont mises en avant.

2.2.2. Typologie des logiciels sociaux

Nous n’avons pas trouvé une définition précise qui identifie les règles pour qu’un service puisse être classifié comme logiciel social. Néanmoins, son principe fondamental consiste en une mise en relation, prise de contact. Dans certains ouvrages, les logiciels sociaux sont strictement limités.

Page 9: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 9 -

Dans le Wikipedia9 nous pouvons trouver plusieurs outils utilisés dans les applications des réseaux sociaux, dont voici quelques uns :

• Instant Messaging – application permettant de communiquer avec une autre personne via une connexion. Les personnes sont ajoutées à la liste des contacts grâce à un identificateur ou adresse e-mail. Pour communiquer, il faut cliquer sur le nom de la personne, cette dernière doit être connectée, et écrire dans une fenêtre prévue à cet effet. L’échange est synchrone.

• Internet Relay Chat (IRC) – permet à plusieurs utilisateurs de discuter entre eux dans un espace de discussion (chat room). Chacun peut lire et écrire des messages qui sont visibles à tous ou qui sont destinés à une personne bien précise. Il s’agit d’une communication synchrone.

• Internet Forums – permettent aux utilisateurs de poster un sujet auquel les autres peuvent réagir dans un commentaire et cela à n’importe quel moment. Les commentaires se suivent les uns derrières les autres et forment une file de discussion. Souvent, il est possible de poster une image ou un fichier. Le forum fait partie d’un outil asynchrone.

• Blogs (Web logs) – sont des journaux en ligne qu’une personne alimente régulièrement avec des billets (« posts » en anglais) que d’autres peuvent commenter. Il peut s’agir d’un journal intime ou de n’importe quel sujet pour lequel l’auteur se passionne. La communication se fait grâce aux commentaires, soit directement sous le billet soit dans un billet d’un autre blog grâce au trackback, un lien de référence au billet.

• Wikis – un ensemble de pages web qui peuvent être créées facilement grâce à la syntaxe de wiki. Tout le monde ou ceux qui ont accès peuvent créer, modifier ou supprimer le contenu.

• Social Network services – permettent aux utilisateurs de se rencontrer en ligne et de partager une passion ou un but communs. Pour accéder à un tel service, ils remplissent leurs profils, leurs intérêts etc. Nous pouvons citer en exemple le site de rencontre Meetic ou le site de réseautage professionnel Linkedin. Nous nous arrêterons sur les services des réseaux sociaux plus loin dans ce travail.

• Social guides – recommandent des lieux à visiter comme des cafés, restaurants, bornes wifi.

• Social bookmarking – sites qui permettent de partager les sites favoris (bookmarks) des utilisateurs entre eux. La recherche se fait grâce aux différents critères, les tags entre autre.

• Social citations – destiné avant tout au milieu académique, ce logiciel permet de poster des citations des articles se trouvant sur internet. Classées dans des catégories

9 http://en.wikipedia.org/wiki/Social_software

Page 10: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 10 -

définies, le logiciel est utile par exemple aux chercheurs afin de partager des ressources.

• Social libraries – sites qui permettent aux utilisateurs de partager les informations sur leur collection de livres, CDs, DVDs … Ils ont à leur disposition des outils de vote et recommandation pour les ouvrages et même un système prêt entre amis.

• Social Shopping Applications – les utilisateurs partagent entre eux les recommandations et critiques sur les articles.

• Collaborative real-time editing – outils d’édition d’un fichier texte ou media simultanément par plusieurs utilisateurs en réseau.

• Virtual Worlds and Massively-Multiplayer Online Games – sont des endroits pour se rencontrer et interagir avec d’autres personnes dans un monde virtuel, celui-ci ressemblant à la réalité.

2.2.3. Typologie des logiciels de réseaux sociaux

Une autre classification est proposée par David Pollard. Il s’agit d’une typologie des différentes fonctionnalités des logiciels de réseaux sociaux selon leur objectif. Pollard regroupe les principaux objectifs des logiciels de réseaux sociaux en huit grandes catégories10 :

1. finding people – trouver des personnes : les découvrir, les localiser,

2. building directories, network maps and social networks – construire des annuaires, des cartes de réseaux et réseaux sociaux,

3. inviting people to join your networks – inviter des personnes à joindre votre réseau,

4. managing access to your networks – gestion d’accès à vos réseaux,

5. connecting with people in your networks – se connecter aux personnes de votre réseau,

6. managing relationships across media – gestion des relations à travers des médias : par exemple en faisant la transition d’une relation basée sur l’email ou weblog à une relation basée sur la voix (voice-to-voice) ou face-à-face,

7. collaborating with people in your networks – collaborer avec les personnes de votre réseau,

8. content sharing with people in your networks – partager le contenu avec les personnes de votre réseau.

Un logiciel social peut utiliser plus d’une fonctionnalité. Si nous prenons par exemple les weblogs, nous pouvons identifier les fonctionnalités suivantes : partager le contenu, trouver des personnes, publication du contenu, forum.

10 http://blogs.salon.com/0002007/2006/08/14.html

Page 11: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 11 -

2.2.4. Foaf – Friend of a Friend

Outre les logiciels sociaux que nous avons mentionnés, il existe un projet dont le but est de créer un réseau de documents web compréhensibles par des machines. Il s’appelle Foaf (Friend of a Friend) et a débuté en 2002. Il repose sur un vocabulaire RDF (Resource Description Framework) permettant de décrire des personnes et les relations qu’elles entretiennent entre elles grâce aux déclarations telles que le nom, le prénom, les projets etc. Un profil Foaf consiste en une page XML et contient des informations brutes structurées selon une sémantique.

Page 12: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 12 -

XML (eXtended Markup Language) est parfaitement approprié pour le web sémantique car il permet de décrire au travers des balises la structure d’un document et la nature des informations qu’il contient.

Le principe du Foaf est le suivant : une personne crée un fichier Foaf qui contient des informations la décrivant et le place sur le web. Chacun est libre de choisir le nombre et le détail des informations le concernant. Les spécifications actuelles permettent de définir les champs des catégories suivantes : les données de base (nom, prénom, etc.), les informations personnelles (centres d’intérêts, connaissances…), les comptes en lignes (email, messageries instantanées…), les documents et images (textes produits par la personne, photos personnelles…), et enfin les groupes et projets.

2.3. Résumé

En vue du développement d’un logiciel social pour Tecfa, nous allons passer en revue les théories et typologies qui précédent et situer le réseau Tecfa par rapport à celles-ci.

Les réseaux sociaux sont partout et existent aussi hors ligne qu’en ligne. En ligne ils s’organisent autour des logiciels sociaux. Tel est le cas de la communauté de pratique de Tecfa qui s’est formée autour des différents logiciels sociaux comme Tecfaseed, EduTech Wiki et beaucoup d’autres. Pour bien délimiter le réseau de Tecfa auquel nous allons nous intéresser, voici un critère très précis : il s’agit des personnes appartenant à la structure de Tecfa au sens institutionnel en tant qu’unité de la FPSE et qui ont été rentré dans l’annuaire LDAP de Tecfa. Par rapport à l’ensemble de la communauté de pratique, la taille de ce réseau est plus petite et compte environ 200 membres (étudiants Staf/Maltt, corps enseignant et de recherche, collaborateurs, y compris les anciens). Les informations disponibles sur les personnes sont dispersées et pire encore, les pages web personnelles sont souvent

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:admin="http://webns.net/mvcb/"> <foaf:Person rdf:ID="me"> <foaf:name>Dajana Kapusova Leconte</foaf:name> <foaf:title>Mrs</foaf:title> <foaf:givenname>Dajana</foaf:givenname> <foaf:family_name>Kapusova Leconte</foaf:family_name> <foaf:nick>daja</foaf:nick> <foaf:mbox_sha1sum>032138b1a2cccb1477c8de9235ba568efd152e22</foaf:mbox_sha1sum> <foaf:homepage rdf:resource="http://tecfa.unige.ch/perso/staf/kapusova/"/> <foaf:workplaceHomepage rdf:resource="http://www.unige.ch/fapse/"/> <foaf:knows> <foaf:Person> <foaf:name>Daniel Schneider</foaf:name> <foaf:mbox_sha1sum>27ee2681fc9f6dc08eba520ff3a6ef142e088d9d</foaf:mbox_sha1sum> <rdfs:seeAlso rdf:resource="http://tecfa.unige.ch/tecfa-people/schneider.html"/> </foaf:Person> </foaf:knows> </foaf:Person> </rdf:RDF>

Page 13: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 13 -

incomplètes, obsolètes ou carrément vides. Comment alors savoir qui se cache derrière les noms et ce qu’il a à apporter à notre communauté ?

Les liens s’établissent principalement entre les étudiants de la même volée, entre les étudiants et les enseignants/collaborateurs et enfin entre le corps enseignant lui-même. Pour établir un lien entre deux membres, nous pouvons soit le faire directement, si nous arrivons à trouver les coordonnées de la personne, soit passe par un intermédiaire, le plus souvent un enseignant qui saura nous diriger vers la bonne personne. Nous sommes tentés dire qu’il existe au maximum un degré de séparations entre les membres et de ce fait la théorie des six degrés de séparation n’est pas pertinente pour la mise en relation. Même s’il existe des liens forts entre certains individus, la plupart des personnes entretiennent des liens faibles. De plus, la provenance de ces personnes est très variées (psychologues, informaticiens, maîtres à l’école et même musiciens) et ne peux être que favorable à l’efficacité des relations.

En regardant la typologie de Pollard, la fonctionnalité à laquelle nous portons notre intérêt est celle de la recherche : finding people. Illustrons par des exemples concrets deux situations dans lesquelles nous avons cherché à rentrer en contact avec d’autres membres de Tecfa. Le premier, c’était quand nous cherchions un spécialiste dans un domaine bien précis mais n’avions pas les moyens de savoir quelle personne possédait ces compétences. Et le deuxième, c’était lors d’une recherche d’emploi où nous voulions découvrir à quoi ressemblait une entreprise depuis l’intérieur et une fois de plus nous n’avions aucune information à disposition permettant de nous dire si un membre de Tecfa n’y travaille pas par hasard. Voici donc des situations réelles auxquelles nous pourrions donner une réponse avec notre outil.

3. Analyse des logiciels sociaux

Dans cette partie, nous allons étudier certains logiciels sociaux qui ont connu un vif succès auprès des internautes. Pour chacun d’entre eux, nous préciserons de quel type de logiciel il s’agit, quel est son objectif et le public cible. Nous porterons notre intérêt sur les fonctionnalités et les services qu’ils mettent en place afin d’attirer de nouveaux membres et de les fidéliser. Nous soulèverons les fonctionnalités qui seront intéressantes pour notre logiciel social de Tecfa.

Les logiciels suivants seront mis sous la loupe pour des raisons évoquées ci-dessous :

• Linkedin – l’un des plus connus des logiciels. Nous nous y intéresserons pour sa mise en place de réseaux basés sur la théorie des six degrés de séparation. De plus, nous trouvons qu’il démontre parfaitement bien la manière dont on peut inciter un utilisateur à agrandir sans cesse son réseau.

• 6nergies – un logiciel visant une population plus petite que Linkedin et dont nous faisons partie presque depuis sa création. Nous l’avons choisi parce que ses créateurs

Page 14: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 14 -

ont une approche moins orientée marketing et participent eux-mêmes à l’animation du site. Nous voulions également voir comment peut s’établir un lien dans un réseau qui ne se construit pas en passant par des intermédiaires, donc pas selon la théorie des six degrés de séparation.

• Last.fm – un site complètement différent des deux logiciels de réseaux professionnels. Il est construit autour d’un intérêt bien précis, à savoir la musique. Nous voulions découvrir comment les interactions sociales peuvent se créer autour de cet intérêt.

3.1. Linkedin

Linkedin est un site de réseaux sociaux professionnels. Accessible à travers le monde, il compte environ 13 millions de membres (août 2007), 150 types d’industries et 400 régions économiques. Son objectif est de créer des réseaux professionnels s’appuyant sur la théorie des 6 degrés. Chaque membre possède des contacts de premier niveau, c’est-à-dire les membres avec lesquels il est directement lié. Pour contacter les membres d’un niveau supérieur (du deuxième, troisième degré), il doit se faire recommander par un membre du premier degré qui adresse la demande à son propre contact et ainsi de suite jusqu’à arriver à la personne demandée. La prise de contact est donc basée sur la confiance. Linkedin est limité à 3 degrés, ce qui représente déjà au 3ème degré un chiffre impressionnant.

En tant que site de réseaux professionnels, Linkedin propose un service de recherche d’emploi et de recrutement. Toujours basé sur le principe de la confiance, pour pouvoir postuler ou pouvoir recruter une personne, il faut se faire recommander par les membres proches. Récemment, un service de questions a été mis en place. Les membres peuvent poser des questions et répondre, celles-ci sont visibles par tous jusqu’au 3ème degré.

Comment attirer les membres

Dès la page d’accueil, l’accent est mis sur le réseau déjà existant dont le potentiel utilisateur fait partie. Celui-ci n’a qu’à entrer l’entreprise dans laquelle il travaille où l’école qu’il a fréquenté et il aura instantanément la réponse chiffrée du potentiel du réseau. Bien évidemment, ces chiffres parlent d’elles-mêmes et peuvent avoir un pouvoir de persuasion. Rien que pour l’Université de Genève, Linkedin annonce plus de 500 membres inscrits qui ont travaillé dans cette université.

Page 15: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 15 -

Barrières à l’entrée

Même si l’inscription paraît facile, ceci ne suffit pas à se construire un réseau instantanément. L’utilisateur doit d’abord remplir son profil et il est encouragé à le faire ; un baromètre lui indique le pourcentage d’achèvement de son profil. Le profil représente alors une barrière à l’entrée et augmente la qualité de la communauté. Les personnes non sérieuses seront vite découragées, d’autant plus que pour nouer des contacts, il faut se faire recommander par quelqu’un qui se trouve déjà dans votre réseau, c’est ce que l’on appelle un réseau basé sur la confiance.

Quel bénéfice pour l’utilisateur

A tout moment, l’utilisateur est encouragé à réseauter. Les chiffres à l’appui, il peut visualiser le potentiel de son réseau jusqu’au 3ème degré grâce aux membres qui se trouve déjà dans son réseau. Et ce chiffre augmente exponentiellement. A titre d’exemple, même si vous ne faite pas énormément d’efforts de networking, avec 9 contacts au premier degré, cela peut représenter plus de 109'300 personnes au 3ème degré. De quoi être impressionné. Mais ceci n’est qu’une infime partie des outils mis en place permettant d’élargir son réseau professionnel.

Réputation du membre

Un point important pour nouer de nouveaux contacts de qualité est la bonne réputation du membre. Trouver la bonne personne est très important car une mauvaise première expérience sera souvent aussi la dernière. Comment alors se retrouver parmi tous les membres ? Car un ami d’un ami n’est pas toujours synonyme d’un ami. En ce qui concerne le réseau, il ne faut pas se baser sur le nombre de connections qu’a un membre. Cinq bonnes connexions valent plus que vingt connexions médiocres. Pour palier ce manque, Linkedin a mis en place un système de recommandations, c’est-à-dire un utilisateur peut publier un commentaire sur un autre utilisateur (provenant toujours du 1er degré).

E-mails de notification

Les notifications par e-mail sont motivantes pour les membres et leur rappellent qu’une opportunité à contribuer s’offre à eux. Il peut s’agir d’une notification quand un utilisateur fait une demande de réseau, quand un utilisateur a mis à jour son profil, a ajouté un nouveau

Page 16: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 16 -

contact. Toutefois, un nombre trop élevé de messages avec aucune nouvelle information sera pris comme un spam et l’utilisateur y prêtera moins attention.

Intéressons-nous à présent aux différents objectifs de Linkedin tels que présentés par Pollard dans la section précédente.

Finding people

La mise en relation est facilitée grâce aux deux critères que les membres peuvent avoir en commun : l’endroit où ils ont travaillé ou l’endroit où ils ont étudié (finding collegues and classmates). Un membre avec le même employeur ou de la même école qu’un autre membre lui est automatiquement proposé en tant que contact potentiel. L’outil de recherche permet de chercher des contacts selon différents critères, tels que nom, mot clé, entreprise, industrie, emplacement (finding experts, business partners, sales leads). La partie Jobs & Hiring est consacrée à la recherche de collaborateurs (finding co-workers).

Inviting people

Que serait un logiciel de réseaux sociaux sans pouvoir inviter les autres à rejoindre votre réseau ? Plusieurs options de réseautage sont à disposition au sein de Linkedin. Tout d’abord, un membre peut envoyer un e-mail d’invitation directement depuis Linkedin. Ensuite, il peut télécharger son carnet d’adresse personnel tel que googlemail et visualiser ceux qui ne sont pas encore inscrits sur Linkedin. Ceux reconnus en tant que membres déjà actifs peuvent être invités à rejoindre le réseau.

Acces permissionning

L’accès au réseau des autres membres est protégé ce qui évite le spamming. Il est nécessaire d’obtenir d’abord l’accord d’un membre du 1er niveau pour pouvoir accéder aux contacts du 2ème niveau (système de recommandations). Néanmoins, un membre peut visualiser son réseau potentiel jusqu’au 3ème niveau ce qui paraît non négligeable.

Connecting

La communication entre membres se fait à l’aide de messages internes en asynchrone. Libre aux membres de passer ensuite à un autre moyen de communication en dehors du site.

Collaborating

Depuis peu, Linkedin a mis en place le service Answers. Ce service donne la parole aux utilisateurs qui souhaitent obtenir des réponses sur un sujet bien précis. Si vous n’avez pas de réponse ou un avis à donner, vous pouvez toujours consulter les échanges qui ont lieu autour de la question.

Page 17: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 17 -

3.2. 6nergies

Un autre site de réseau relationnel porte le nom 6nergies. Dédié également aux professionnels, il s’est focalisé sur les pays francophones. Difficile de savoir combien de membres compte à ce jour 6nergies. Sans doute, il ne joue pas sur la quantité mais sur la qualité. Au contraire des autres services, ce site est devenu payant en début 2007 pour les nouveaux inscrits. D’ailleurs, il ne joue pas un jeu clair. Pas possible de savoir que le service sera payant après une période d’essais, vous le saurez seulement une fois inscrit.

6nergies innove constamment et complète sa panoplie de services, gratuits ou payants, pour dynamiser l’activité de ses membres. Basé sur la théorie des 6 degrés de séparation, ce service est néanmoins moins strict que Linkedin. Les membres peuvent être contactés directement par messagerie interne. La qualité prévaut sur la quantité ; ce choix se fait ressentir sur la stratégie de 6nergies. Aucune information chiffrée n’est donnée quant à votre réseau potentiel au-delà du premier degré. Aucun chiffre impressionnant, c’est exactement le contraire de ce que vise le site. D’ailleurs, les créateurs de 6nergies ont également leur profil et sont joignables comme n’importe quel autre membre. En plus de leur présence, ils publient régulièrement des messages à l’attention des membres en les informant des nouveautés sur le site, de ce qui se passe, les conseillant sur la façon de réseauter et bien d’autres.

S’étant inspiré des logiciels de communication synchrone, 6nergies a mis en place un service de « signal social ». Il est semblable à celui du statut que l’on retrouve dans les tchat, p.ex. occupé, absent etc. Toutefois, il est plutôt basé sur votre statut de réseauteur bien évidemment et permet de signaler aux autres si vous êtes disponible, en prospection, en collaboration et autres et éventuellement comment vous contacter. L’étiquette de votre signal social s’intègre facilement dans les pages web (p.ex. sur votre propre blog).

Persuader un potentiel membre

6nergies ne joue pas sur les chiffres comme Linkedin, mais sur votre visibilité. Son slogan est : « Votre visibilité s’accroît, votre réseau s’étend ! » (même s’il est difficilement compréhensible de quelle visibilité il s’agit). Les avantages à rejoindre 6nergies sont annoncées sur la page d’accueil : développer son activité, être visible des chasseurs de tête, faciliter ses recrutements… Des messages clairs et courts sont accompagnés par d’autres messages sur les services offerts, ainsi qu’un énorme bouton nous incitant à nous inscrire en 3 minutes que l’on ne peut pas rater.

Page 18: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 18 -

Barrières à l’entrée

Même si le site permet une inscription en 3 minutes, il vous en faudra beaucoup plus pour compléter votre profil et de vous rendre « visible » au sein du site. Etant donné que la prise de contact se fait en grande partie en utilisant la recherche (par mot clé, entreprise…), vous avez tout intérêt à fournir un profil de qualité. De quoi décourager les personnes pas très sérieuses. D’ailleurs, depuis que le site est devenu payant, ceci peut représenter une autre barrière à l’entrée pour les nouveaux inscrits, malgré un tarif pas vraiment exorbitant.

Mots-clés

6nergies met l’accent sur les intérêts professionnels de ses membres en utilisant des mots-clés associés au profil de chaque membre. Appelé également des tags, ce sont ces mots qui permettent principalement la recherche d’autres membres avec les mêmes orientations professionnelles ou des professionnels d’un domaine bien précis. Afin d’inciter les membres au réseautage, la page d’accueil affiche les 10 tags les plus populaires et 10 tags au hasard. Au lieu de s’intéresser donc à la similarité des membres, le site incite ses membres à découvrir d’autres horizons.

Groupes d’intérêt

6nergies donne à ses membres la possibilité de créer des groupes basés sur les intérêts, thèmes ou encore localisation et d’établir ainsi une relation avec les autres. Ces groupes sont ouverts à tous, ils peuvent être soumis à une demande d’adhésion ou pas. Chaque groupe a à disposition un blog leur permettant de discuter de la problématique autour du sujet pour lequel il a été crée. En regardant l’activité au sein de quelques groupes pris au hasard, ils nous semble toutefois que cette fonctionnalité ne stimule pas l’interaction sociale et la participation à la vie d’un groupe est proche de zéro.

Géolocalisation

Vous voudriez localiser physiquement les contacts de votre carnet d’adresse ? La géolocalisation avec Google map intégrée dans 6nergies nous montre en un clin d’œil la localisation de vos contacts sur une carte. A notre avis, il s’agit plutôt d’un gadget inutile car en dehors de votre réseau, vous n’aurez aucune indication sur les membres qui pourront vous intéresser, comme par exemple les membres avec les mêmes intérêts dans un rayon de 100 km.

Maintenant que nous avons mis sous la loupe

Page 19: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 19 -

les fonctionnalités et comment est géré ce réseau, concentrons-nous sur les différents objectifs de ce site en tant que logiciel de réseaux sociaux.

Finding people

La recherche de nouveaux contacts se fait à l’aide d’un outil de recherche qui parcourt pratiquement tous les champs du profil des membres. Pas besoin de se casse la tête avec l’orthographe exact du mot-clé de votre recherche, l’utilisation de l’étoile « * » remplacera une partie du mot-clé (voir les expressions régulières). Par exemple « informati* » aura comme résultat « information », « informatique » etc. La recherche peut encore être affinée en précisant le nom de l’organisation, le domaine d’activité, le pays ou le code postal. Un moyen efficace de recherche sont les tags que les utilisateurs eux-mêmes définissent dans leur profil. 10 tags au hasard et 10 tags les plus populaires sont intégrés dans la page principale des membres. A eux de découvrir ensuite les profils associés.

Building network maps

6nergies exploite la cartographie des réseaux qui permet de visualiser graphiquement le réseau des relations. Il s’agit d’une autre manière de représentation des réseaux à l’aide des points (membres) et des arcs (relations). Les arcs sont soit les relations avec les membres du 1er degré soit les tags que vous partagez avec les autres membres. Le reproche que nous pouvons faire à 6nergies est que les cartes sont très difficilement lisibles.

Inviting people

Le service d’invitation est similaire à celui de Linkedin : invitation directe en indiquant l’email de la personne à inviter, en important le carnet d’adresses des clients de messagerie tel que google mail. 6nergies offre en plus l’importation des contacts à l’aide de fichiers csv et Vcard. Les personnes invitées partageront automatiquement le réseau de la personne qui les a invitée.

Access permissionning

La stratégie du site est très simple : tous le monde a accès à votre profil, peut vous envoyer des messages et voir votre réseau. Sauf si vous mettez la main à la poche et que vous vous abonnez au Club 6nergies proposant des services supplémentaires. Une pratique opposée à celle de Linkedin où il faut justement payer pour pouvoir contacter les membres en dehors de votre réseau direct.

Collaborating

Le site propose aux membres de rejoindre des groupes selon leurs intérêts. Un blog est à disposition de chaque groupe permettant la publication au sein du groupe. Grande fut notre surprise quand nous avons découvert que le site a à son actif environ 360 groupes dont la majeure partie ne dépasse pas les 1-4 membres et dont les blogs sont vides. 6nergies se serait-

Page 20: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 20 -

il trompé d’outil de collaboration au sein des groupes ? Un forum serait peut être un outil plus adapté pour développer la communication.

3.3. Last.fm

Nous allons découvrir maintenant un autre site se distinguant des deux autres mentionnés précédemment. Il s’agit d’un site social de musique, donc basé sur un intérêt bien précis : la musique. Last.fm est une plate-forme musicale communautaire fondée en 2002 avec une approche légèrement différente que Linkedin et 6nergies, en dehors du fait qu’elle est entièrement consacrée à la musique. Selon les goûts des membres, last.fm optimise le profil musical de chaque utilisateur pour établir des recommandations personnalisées, mettre en relation les utilisateurs qui partagent les même goûts, proposer des flux radios sur mesure…

Grâce au plugin « Audioscrubbler », un outil qui détecte le nom de l’artiste ou du groupe, le titre de la chanson qu’écoute un utilisateur sur son ordinateur ou sur les radios en ligne de last.fm et il transmet les informations à la base de données de last.fm. Ces données sont affichées sur la page personnelle de chaque utilisateur et les outils de réseau social lui recommandent ensuite une musique similaire à celle qu’il écoute, de rentrer en contact avec d’autres utilisateurs avec un profil similaire (on les appelle les « voisins »). Last.fm génère automatiquement une page de profil avec les données de l’utilisateur et les statistiques sur la musique qu’il écoute. Tous les services sont centrés autour de l’utilisateur. C’est lui qui est créateur du contenu et c’est grâce à lui et son profil qu’un contenu peut être proposé à d’autres utilisateurs.

Nous pouvons compter last.fm parmi les services des réseaux sociaux car il permet aux utilisateurs de se rencontrer en ligne et de partager une passion commune. A l’opposé des deux autres logiciels que nous avons étudiés, il n’est pas basé sur la théorie des six degrés de séparation. Mais vous pouvez également ajouter directement des amis à votre réseau. Libre à vous de contacter qui vous voulez, le logiciel lui-même vous constitue un voisinage basé sur vos goûts musicaux et la musique que vous écoutez.

Ce site est très complet et ne voulons pas décrire toute la panoplie des services et foncionnalités. Nous allons décrire celles qui ont retenues le plus notre attention.

Persuader un potentiel utilisateur

L’approche envers les nouveaux membres potentiels est bien évidemment orientée vers la musique. A l’opposé des deux sites précédents, ce n’est pas vous qui aller chercher la musique qui vous plaît mais c’est le site qui le fait à votre place. De quoi se laisser tenter et d’oublier les recherches sans fin pour trouver les personnes avec les mêmes goûts musicaux que vous.

Page 21: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 21 -

Voisins

La grande force de last.fm est l’énorme banque de données autour des utilisateurs, des artistes, des titres musicaux et des événements. C’est à partir d’elles qu’un algorithme détermine qui a des goûts musicaux semblables aux vôtres. Le grand secret reste les critères qui rentrent en jeux pour le calcul du voisinage. En plus, suivant ce que vous écoutez, vous obtiendrez des recommandations quant à la musique ou les événements.

Mots-clés

Pour décrire les morceaux et les artistes, les membres leur assignent des tags. Grâce à cette libre taxonomie, nous pouvons chercher des chansons, artistes, membres, événements, radios, vidéos, les top artistes, les top albums, des tags similaires, enfin apparemment tout.

Widgets

Le widget est un outil que l’on peut incorporer dans des pages web et qui sont en lien direct avec votre profil sur last.fm. Les plus mordus de la musique vont certainement l’utiliser dans leur blog ou leur profil de réseaux sociaux. Il y en a pour tous les goûts : de la liste de ce que vous avez écouté récemment, par la mosaïque des top albums, jusqu’auwidget le plus amusant qui vous calcule votre compatibilité avec un autre membre au niveau des goûts musicaux. J’ai découvert ainsi que je n’avais absolument rien en commun avec mon seul ami du site, à savoir un ancien collègue. Enfin, je m’en doutais bien.

Barrières à l’entrée

L’accès au site est gratuit mais pour que vous puissiez vraiment tirer profit de sa puissance, vous avez intérêt à écouter de la musique. Plus vous en écouter, plus riche sera votre profil et mieux le site saura vous conseiller. Mais écouter est synonyme d’une contrainte, il faut que ça soit sur votre ordinateur car c’est l’audiosclubbler qui récupère les données de ce que vous écoutez. Les adeptes d’une chaîne stéréo, d’un iPod etc. n’y trouveront pas alors leur compte.

Finding people

La recherche des personnes n’est sans doute pas la fonctionnalité la plus importante de ce site. Mise à part la recherche classique par nom ou nom d’utilisateur (ce qui ne nous avance pas plus), on peut obtenir la liste des gens qui sont en train d’écouter quelque chose.

Connecting

Quand vous écoutez de la musique, la liste des chansons est instantanément mise à jour sur le site. Tout le monde peut voir ce que vous êtes en train d’écouter. Voici une belle preuve de votre présence virtuelle. De plus, les membres sont accessibles en synchrone via leur shoutbox ou en asynchrone par messagerie interne.

Page 22: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 22 -

Collaborating

Le site social de musique est avant tout axé sur la collaboration. Elle a des aspects très divers. D’une part, elle demande les interventions des membres en construisant une banque la plus complète possible autour de la musique : d’écrire des articles, d’associer un titre musical à un ou plusieurs genres, de donner son avis etc. Et d’autre part, de manière indirecte, les membres collaborent à l’élaboration d’une liste des artistes les plus écoutés de la semaine.

3.4. Résumé

Après avoir analysé trois logiciels sociaux, résumons les points importants que nous pouvons retenir pour le développement de notre outil social. Les sites des réseaux sociaux ont leurs propres stratégies pour attirer de nouveaux membres. Du fait que Tecfa est un réseau privé, nous n’avons pas besoin de nous préoccuper de la façon d’élargir le réseau. Par contre, n’oublions pas qu’il est primordial de mettre en place des outils pour que les membres existants mettent à jour leur profil. Nous ne souhaitons pas que les informations dans les profils restent obsolètes comme dans les pages web personnelles. Dans ce cas, un système de notification serait approprié pour par exemple rappeler aux membres qui n’ont pas mis à jour leur profil depuis longtemps ou annoncer l’arrivée de nouveaux membres c’est le cas à la rentrée universitaire.

Comme nous l’avons déjà précisé, la théorie des six degrés de séparation ne se prête pas bien au réseau de Tecfa et nous allons de ce fait porter notre attention à la construction du réseau en nous basant sur les similarités des profils des membres. Puisque la chose que nous avons tous en commun est l’intérêt pour les technologies éducatives, nous prendrons comme critère de voisinage les compétences des membres. Et la façon la plus simple pour décrire les compétences nous paraît l’utilisation de mots-clés.

4. Logiciel social de Tecfa

Suite à la revue de littérature et l’analyse des trois logiciels de réseaux sociaux, nous allons développer un outil social adapté au réseau de Tecfa décrit dans ce chapitre.

4.1. Cahier des charges

Nous avons imaginé un outil accessible sur internet qui permettrait de :

• gérer les profils des membres dont les informations seront mises à jour par eux-mêmes,

• effectuer une recherche sur l’ensemble du réseau selon différents critères,

• visualiser le voisinage réseau d’un membre basé sur la proximité des profils.

Page 23: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 23 -

4.1.1. Gestion du profil de l’utilisateur

Chaque membre possède une page avec son profil contenant des informations le concernant. Elles sont divisées en plusieurs catégories, selon qu’elles concernant la vie privée, professionnelle ou les études à Tecfa. La dernière catégorie concerne seulement les étudiants. L’utilisateur peut facilement mettre à jour son profil. Certaines données ne sont pas modifiables comme le nom, le prénom, le statut à Tecfa. Il revient à l’administrateur de les tenir à jour. Le profil est visible aux autres membres et l’utilisateur peut consulter les profils de tous les autres membres.

4.1.2. Recherche selon différents critères dans l’ensemble du réseau

Grâce aux informations introduites par les membres, il est possible d’effectuer une recherche. L’utilisateur peut soit introduire par lui-même un mot de recherche et de choisir dans quel champ du profil la recherche doit s’effectuer, soit de faire la recherche grâce aux liens navigables. Les liens navigables sont des mots-clés cliquables dans les profils et qui affichent directement le résultat de recherche. Par exemple chaque mot-clé du champ « Compétences » (Skills) est un lien que nous pouvons cliquer et qui affiche toutes les personnes ayant également ce mot-clé défini comme compétence.

4.1.3. Visualisation du voisinage réseau

Quand deux individus ont plusieurs choses en commun, nous pouvons dire qu’ils sont proches. Dans le cas de Tecfa, le dénominateur commun n’est pas les gens que l’on connaît mais les intérêts communs comme les compétences ou la problématique du mémoire Staf/Maltt. Plus de points deux personnes ont en commun, plus elles sont proches, ce que nous appelons ici des « voisins » proches ou voisinage réseau. Le but est donc de visualiser le voisinage d’un membre Tecfa basé sur la similitude des profils. Sous similaire nous entendons deux profils avec au moins un même mot-clé défini dans le champ « Skills ». Les voisins s’affichent du plus proche au plus éloigné.

4.2. Environnement technique

Nous avons utilisé les trois technologies suivantes pour le développement de notre logiciel :

• le langage HTML – pour construire les pages web et les formulaires,

• le langage PHP – pour rendre l’outil dynamique et interactif se servant des fonctions disponibles, ainsi que pour se connecter à LDAP, d’effectuer des requêtes et de récupérer les données,

• LDAP – pour stocker les données liées aux utilisateurs.

Page 24: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 24 -

4.2.1. HTML

Le langage HTML avec ses tags affichera le contenu des pages à l’écran. L’encodage des caractères se fait en UTF-8 avec lequel nous pouvons afficher correctement les caractères de presque toutes les langues à l’écran. Pour le design, nous avons utilisé des feuilles de styles CSS allégeant considérablement le code HTML. La page de recherche et celle de la modification du profil contiennent des formulaires qui vont récupérer les informations que l’utilisateur a entrées à l’aide du clavier et les traiter ensuite.

4.2.2. PHP

Le langage PHP était nécessaire pour travailler dynamiquement sur les données. Il nous sera utile pour récupérer les données, les traiter et les afficher ensuite à l’écran. PHP dispose de fonctions qui permettent l’interrogation de l’annuaire LDAP où seront stockées les informations, mais pour nous faciliter le travail, nous allons utiliser une librairie avec des classes (class.ldap.php). Les résultats des requêtes LDAP doivent ensuite être manipulées car elles sont contenues dans des tableaux multidimensionnels. Seulement après elles seront affichées à l’écran.

4.2.3. LDAP

Nous avons choisi LDAP pour stocker les données plutôt qu’une autre technologie telle que la base de données MySQL pour une raison très simple. Un annuaire déjà existant à Tecfa contient de nombreuses informations sur les membres de Tecfa que nous avons pu réutiliser et compléter avec des données supplémentaires nécessaires à notre mémoire de recherche.

LDAP (Lightweight Directory Access Protocol) est un protocole d’annuaire sur TCP/IP. Souvent appelé annuaire LDAP, même s’il ne s’agit que d’un protocole, il donne accès aux informations contenues dans l’annuaire qui est une sorte de base de données hiérarchique. Très performant en lecture, sa fonction première est de chercher et retrouver des attributs d’un objet stockés dans l’annuaire. Grâce à la communication client-serveur, il permet à l’utilisateur de se connecter ou de se déconnecter, de rechercher, comparer, créer, modifier ou effacer des entrées dans l’annuaire.

La structure hiérarchique des données LDAP se présente comme un arbre d’objets appelés entrées de l’annuaire. Les entrées peuvent correspondre à des personnes ou encore à une imprimante, un groupe etc. LDAP de Tecfa ne contient que des personnes. Chaque entrée a un identificateur unique (« Distinguished Name », ou DN), dans notre cas il s’agit du nom d’utilisateur pour se connecter au serveur web de Tecfa. Chaque entrée contient un ensemble d’attributs. Un attribut peut avoir une ou plusieurs valeurs et les valeurs sont d’un certain type (p.ex. case-insensitive string, labeled URL).

Voici une image qui illustre les entrées et les attributs :

Page 25: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 25 -

En plus, les objets peuvent hériter des propriétés (attributs) d’autres objets en précisant l’attribut ObjectClass. Ainsi nous pouvons réutiliser des attributs déjà prédéfini et de les enrichir par nos propres attributs supplémentaires ce qui est le cas de tous les attributs commençant par « tds » = Tecfa Directory Schema (Annexe 1).

Page 26: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 26 -

Avant de commencer le développement, nous nous sommes familiarisés avec la structure du LDAP qui est défini dans des schémas. Le LDAP de Tecfa en utilise quatre dont trois sont publics11 (core.schema, cosine.schema et inetorgperson.schema) et un créé suite aux besoins de Tecfa (tecfa.schema). Ces schémas sont des fichiers texte définissant les objectClass, leurs attributs et les types d’attributs. A titre d’illustration, vous trouverez plus haut une copie d’écran montrant à quoi ressemble cette structure (pour l’attribut « surname ») avec Apache Directory Studio, un outil user-friendly que nous avons utilisé au début de notre travail pour gérer l’annuaire LDAP.

4.3. Fonctionnalités

4.3.1. Se connecter/déconnecter

L’accès à l’outil social est protégé par un mot de passe. Chaque utilisateur possède son propre login et mot de passe. Il nous semblait important de protéger l’accès car certaines informations sont personnelles et ne devraient pas être accessibles sur internet à n’importe quel internaute et encore moins aux moteurs de recherche. Si l’utilisateur est reconnu (login et mot de passe corrects), il aura accès à l’outil, sinon l’accès lui est refusé et on lui redemande de se connecter. L’utilisateur peut également se déconnecter.

4.3.2. Consulter son profil ou celui des autres membres

L’utilisateur peut visualiser son propre profil mais également ceux de tous les autres membres du réseau. La page du profil contient des informations divisées en quatre parties : les données générales, personnelles, professionnelles et liées à Tecfa. Ces dernières concernent avant tout les étudiants. Pour identifier visuellement la personne, le profil dispose d’une photo. Une autre information importante est la date de la mise à jour du profil qui nous renseigne sur la pérennité des données.

4.3.3. Editer son profil

Chaque utilisateur peut éditer son profil à sa guise. Toutefois, certaines informations ne sont pas modifiables et il appartient à l’administrateur du LDAP de les tenir à jour (p.ex. le nom et le prénom, le statut à Tecfa, la volée Staf/Maltt). La séparation en quatre parties telle que dans

11 disponibles à l’adresse : http://www.zytrax.com/books/ldap/ape/

Page 27: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 27 -

la page du profil est conservée. Une aide est fournie à l’utilisateur sur la nature des champs et la façon dont il doit les remplir. Les attributs multivaleurs s’affichent à l’écran comme des valeurs séparées par des virgules. Cette manière est très répandue sur le web et bien connue sous le nom « tags ». Les tags sont des marqueurs ou libellés associés au profil de l’utilisateur et qui le décrivent. La personne les définit elle-même et ils seront ensuite utilisés pour la recherche. La mise à jour du profil se fait en une fois sur l’ensemble des données. L’utilisateur peut abandonner son action en cliquant sur le bouton « Cancel ».

4.3.4. Recherche

L’interface de recherche sert à trouver des membres selon les critères spécifiés par l’utilisateur. Ces critères portent sur plusieurs attributs à la fois : Lastname Skills, Other Diploma, Job Domain et Thesis Keywords, mais la recherche peut se faire aussi sur un seul attribut à la fois. Le mot soumis à la recherche permet à son tour des résultats plus vastes grâce à la fonctionnalité de « wildcard » (communément connu sous le signe *).

Selon si nous plaçons ce signe de remplacement avant et/ou après le mot cherché, LDAP cherchera à l’intérieur des valeurs des attributs de la manière suivante :

• « mot » - la valeur doit correspondre exactement au mot recherché,

• « mot * » - le début de la valeur doit correspondre au mot recherché. Ainsi avec « web* » nous obtiendrons les résultats « web », « webdesign » etc.,

• « *mot* » - le mot recherché doit se trouver à l’intérieur de la valeur. Ainsi avec « net » nous obtiendrons « internet », « social networking » etc.

L’utilisateur n’a pas à se préoccuper si le mot doit être en majuscules ou minuscules et obtiendra le même résultat quelque soit la casse des mots (exemple : php, PHP, Php sont équivalents). En cas de résultat, une liste des membres s’affiche à l’écran.

Page 28: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 28 -

4.3.5. Liens navigables

Les liens navigables sont des mots avec liens hypertexte sur lesquels l’utilisateur peut cliquer et sera emmené directement à l’interface de recherche. Ils se trouvent sur presque toutes les pages. Selon de quel mot il s’agit et dans quel champ il se trouve, la recherche dans l’annuaire sera lancée et portera sur le mot et champ en question. Donc si nous cliquons par exemple sur le mot « html » du champ « Skills », nous obtiendrons toutes les personnes qui ont défini le mot « html » dans le champ « Skills » de leur profil. Nous donnons de cette façon l’accès direct à la recherche. Le module des mots-clés se comporte de la même manière, sauf que les liens navigables conduisent à une recherche dans cinq champs à la fois ce qui correspond au choix « All fields below » de l’interface de recherche. A nouveau, la casse des mots n’a pas d’importances.

4.3.6. Visualiser les mots-clés (keywords)

Complémentaire au module de recherche est le module des mots-clé. Sous mots-clé nous entendons l’ensemble des valeurs des champs Skills, Job Domain et Thesis Keywords dans l’annuaire LDAP. Ce module fonctionne comme nuages de mots-clés (keyword clouds). Il affiche par ordre alphabétique les mots en mettant en avant le poids de chaque mot (le nombre d’occurrences d’un mot par rapport à l’ensemble des mots).

Donc les mots les moins fréquents ont la taille la plus petite et les mots les plus utilisés ont la taille la plus grande. Les mots-clés affichés sont des liens navigables et permettent à l’utilisateur de rechercher directement les membres qui ont défini ce mot dans leur profil.

4.3.7. Visualiser le voisinage réseau

Nous appelons voisinage réseau l’ensemble des membres qui ont des profils semblables à celui de l’utilisateur. Pour simplifier le fonctionnement de ce module, nous avons considéré comme semblables des profils dont au moins un mot du champ « Skills » d’un membre correspond à celui d’un autre membre. La casse des caractères ne joue aucun rôle. Plus le membre est proche, c'est-à-dire plus de mots-clés il a en commun avec l’utilisateur, plus haut il s’affichera dans la liste des membres. L’utilisateur a ensuite l’accès direct au profil des membres de son voisinage ainsi qu’à la recherche via des liens navigables.

Page 29: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 29 -

keywords neighbour

profile modify

4.4. Architecture du logiciel

Notre outil est disponible sur internet à l’adresse http://tecfa.unige.ch/staf/staf-j/kapusova/ldap et stocké sur le serveur web tecfa.unige.ch dans le répertoire /web/staf/staf-j/kapusova/ldap. L’image ci-contre montre l’ensemble des fichiers et répertoires nécessaires au bon fonctionnement de notre outil. Dans cette partie nous allons décrire le développement des différents modules

Le répertoire images contient les images nécessaires au design. Dans le répertoire lib se trouvent les scripts javascript utilisés dans la page modify.php et destinés au remplissage automatique de certains champs. Lors de la connexion d’un utilisateur, sa session est enregistrée dans le répertoire sessions.

Le fonctionnement et l’interconnexion des pages entre elles se présente comme suit :

search

Page 30: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 30 -

La page index.php est la page d’accueil et est reliée à toutes les autres pages, pour cette raison nous ne l’avons pas mis dans le schéma. Nous remarquons que la page search.php est au milieu de notre graphique ce qui confirme une fois de plus que la fonctionnalité centrale de l’outil est la recherche : finding people.

4.4.1. Connect/Disconnect

Après avoir introduit le nom d’utilisateur et le mot de passe, ceux-ci sont récupérés grâce au formulaire HTML (connect.php) et envoyé au serveur LDAP pour vérification (fonctions ldap_connect et ldap_bind). S’il ne correspondent pas à ce qui est dans LDAP, la connexion est refusée et on redemande à l’utilisateur de se connecter. Pour que l’utilisateur reste connecté tout au long de l’utilisation de notre logiciel, le login et le mot de passe sont stockés comme variables de session dans un cookie.

4.4.2. Profile

Les fonctions ldap_connect et ldap_bind se connectent à l’annuaire. Avec ldap_search, nous récupérons tous les attributs et leurs valeurs de l’entrée dont l’attribut « uid » correspond au login de l’utilisateur connecté. En plus simple, nous allons récupérer l’ensemble des valeurs de tous les champs de l’utilisateur logué. Il faut savoir qu’en réalité ce qui se passe c’est que l’annuaire est parcouru entrée par entrée en regardant si l’entrée correspond aux conditions de recherche. Grâce à la fonction ldap_get_entries nous allons obtenir un tableau multidimensionnel avec les résultats de recherche qu’il faut d’abord les traiter selon le type d’attribut avant de pouvoir afficher le profil à l’écran. Un attribut multivaleurs par exemple (Skills) sera affiché comme un ensemble de mots séparés par des virgules et fonctionnant comme des liens navigables. Cette page affiche aussi bien le profil de l’utilisateur que ceux de tous les autres membres. S’il s’agit de l’utilisateur lui-même, il aura en plus un bouton pour éditer son profil et il sera redirigé vers la page modify.php.

4.4.3. Modify

Cette page est un formulaire HTML qui récupère les informations introduites par l’utilisateur au moyen du clavier. Ensuite, elle les envoie par la méthode POST à la page profile.php qui les récupère et convertit selon le type d’attribut pour la fonction ldap_modify qui, à son tour va modifier les valeurs des attributs dans LDAP. Ainsi les attributs multivaleurs doivent être sous forme d’un tableau, les URL sous forme d’une variable avec la syntaxe http://www.mysite.com [Titre].

4.4.4. Search

L’interface de ce module correspond en effet à un formulaire HTML qui reçoit les données suivantes :

Page 31: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 31 -

• le mot de recherche,

• dans quel attribut le mot doit être cherché,

• si la recherche se fait sur une valeur exacte ou une partie de cette valeur.

Au moment où l’utilisateur clique sur le bouton « Search », plusieurs étapes sont nécessaires avant d’obtenir le résultat :

1. l’interface web de la page de recherche – l’utilisateur précise et lance sa recherche,

2. la méthode POST du formulaire HTML envoie les données de recherche, PHP les traite et les adapte à la requête LDAP ldap_search en précisant un filtre et les attributs dont elle va retourner les valeurs en retour.

3. la fonction ldap_search lance la recherche dans l’annuaire LDAP,

4. les fonctions ldap_first_entry et ldap_next_entry parcourent l’annuaire entrée après entrée et récupèrent les résultats,

5. la fonction ldap_get_entries retourne un tableau multidimensionnel avec les résultats complets que nous pouvons enfin traiter et afficher à l’utilisateur.

Nous voudrions encore remarquer que si le mot recherché contient des caractères spéciaux, ceux-ci doivent être transformés en hexadécimal pour pouvoir être interprétés correctement par la fonction ldap_search. De ce fait, un apostrophe ‘ se transformera en \27 et le mot de recherche « l’internet » deviendra alors « l\27internet ».

L’interface de recherche sert aussi à l’affichage des résultats provenant des liens navigables.

4.4.5. Keywords

Le module des mots-clés affiche l’ensemble des valeurs des trois attributs : Skills, Job Domain et Thesis Keywords. Tout d’abord, nous les récupérons depuis l’annuaire.. Du fait que certains mots peuvent être en majuscules et/ou en minuscules, nous les transformons en minuscules et comptons le nombre d’occurrences de chaque mot. Nous éliminons ensuite les doublons (fonction array_unique), trions les valeurs par ordre alphabétique et les affichons finalement à l’écran avec une taille de police correspondant à l’équation suivante :

(nombre d’occurrences / nombre total de mots) * (taille max – taille min) + taille min

où taille min et taille max sont la taille minimale et maximale de la police respectivement.

4.4.6. Neighbour

Ce module sans doute le plus difficile nous a demandé un long moment de réflexion. Si trouver les membres qui ont au moins une même compétence que l’utilisateur est facile, il en est autrement pour déterminer à quel point les membres se sont proches, c'est-à-dire combien

Page 32: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 32 -

de mots-clé ils ont en commun. Le voisinage réseau se base seulement sur les valeurs de l’attribut « Skills ».

Pour savoir si un autre membre a des compétences en commun avec l’utilisateur, nous allons faire la recherche avec la fonction ldap_search. Nous obtiendrons alors un tableau complet qui ne précise pas quelles sont exactement les compétences communes. Une des solutions pour le savoir serait de chercher les membres voisins compétence après compétence, donc une par une, ce qui reviendrait à parcourir l’arborescence entière de l’annuaire plusieurs fois, autant de fois que l’utilisateur a de compétences. Cette solution pas très économique en ressources nous a amené à chercher une autre voie.

Nous avons finalement opté pour une solution très satisfaisante. Premièrement, nous allons récupérer les valeurs de « Skills » de l’utilisateur. Deuxièmement, nous allons interroger LDAP en cherchant des entrées qui ont au moins une valeur de « Skills » commune avec l’utilisateur. Troisièmement, nous allons trouver l’intersection entre les mots-clés de l’utilisateur et de ses voisins. C’est la fonction array_intersect qui s’en charge. Et quatrièmement, nous n’avons plus qu’à compter la taille du tableau des intersections (fonction count), le trier du plus grand nombre au plus petit et l’afficher.

4.4.7. Index

C’est la page d’accueil qui s’affiche après la connexion de l’utilisateur. Elle affiche entre autre les 10 derniers profils mis à jour. La date de mise à jour est en fait stockée dans un attribut opérationnel de LDAP « ModifyTimestamp ». Nous allons donc trier l’ensemble des utilisateurs selon la date de modification et en affichons les 10 derniers. Ce sont les derniers qui sont les plus récent, car LDAP ne peut trier que par ordre croissant, c’est-à-dire de la date la plus éloignée jusqu’à la plus proche.

4.5. Test utilisateur et problèmes soulevés

Le premier module que nous avons développé était celui gérant le profil car il nous était nécessaire d’avoir quelques profils complets afin de se lancer dans le reste du développement. Déjà à ce stade lors de la mise à jour des profils, les utilisateurs nous ont fait part des améliorations à apporter. Il s’agissait notamment d’introduire une fonctionnalité qui lors du remplissage de certains champs proposerait automatiquement des mots déjà existants dans l’annuaire. N’étant pas très sûr au début de la façon d’implémenter cette fonctionnalité, mise à part qu’elle pouvait être développée en Ajax, nous nous y sommes lancés un peu plus tard. En utilisant des scripts existants en Ajax, Ajax.Autocompleter du site script.aculo.us12, nous les avons adaptés et fait fonctionner avec LDAP.

12 http://github.com/madrobby/scriptaculous/wikis/ajax-autocompleter

Page 33: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 33 -

Cette fonctionnalité utile à l’utilisateur suggère interactivement des mots-clés lors de la saisie. Elle dépend d’une part de ce que la personne est en train de taper et d’autre part de ce qui existe déjà dans l’annuaire. Exemple : Quand nous tapons « in » dans le champ Skills, nous obtenons les suggestions suivantes p.ex : informatique, internet. Nous évitons de cette façon d’avoir des mots-clés similaires ou les mêmes avec un orthographe différent (p.ex. base de données et bases de données), d’autant plus que grâce à ces mots sera calculé le voisinage réseau d’un membre.

Une fois quelques profils existants, il nous était plus facile de développer le reste des modules et de tester leur fonctionnement. Les utilisateurs ne présentaient pas de difficultés particulières à effectuer les tâches qui leur ont été assignées. Néanmoins, ils nous ont fait part des bugs et des suggestions :

• si le login ou mot de passe ne sont pas correctes, on n’arrive plus du tout à se connecter ; en plus rien n’indique clairement que la connexion n’a pas été établie. Ce bug a été corrigé.

• il n’est pas clair comment est calculé le voisinage réseau.. Nous avons mis une note explicative sur la page du voisinage et rajouté le nombre de compétences en commun avec chaque utilisateur.

Voici encore leurs remarques que nous avons pris en compte pour une implémentation dans le futur :

• le champ « Web page » devrait pouvoir accepter le lien URL sans préciser un titre. Si l’utilisateur n’indique pas de titre, alors il prend automatiquement la valeur du URL.

• mettre un lien vers les pages Homepage et Workpage pour les étudiants,

• pouvoir faire une recherche selon la volée Staf/Maltt,

• afficher combien de fois le profil d’un membre a été visualisé. Cette fonctionnalité serait plus difficile à mettre en place, car il nous faudra un accès supplémentaire permettant d’aller modifier n’importe quelle entrée de l’annuaire.

Suite à ça, nous-même avons quelques réflexions à faire pour de futures améliorations :

• la proposition automatique des mots ne gère pas les doublons. Donc p.ex. elle ne devrait pas proposer php et Php à la fois, car c’est la même chose.

• dans le module Keywords, si un mot a un trop grand poids par rapport aux autres, il aura la plus grande taille mais tous les autres mots seront très petit. Prévoir donc également une fonction logarithmique pour calculer la taille des mots.

• si le nombre de mots-clé est trop important, afficher dans la page des Keywords seulement les plus utilisés,

Page 34: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 34 -

• si la taille du voisinage réseau est conséquente, n’afficher p.ex. que les vingt voisins les plus proches.

5. Conclusions et perspectives

Nous avons dans le cadre de notre mémoire étudié les réseaux sociaux et plus particulièrement les logiciels des réseaux sociaux. Ils sont nombreux sur la toile et mènent une guerre entre eux. Les uns se sont spécialisés dans les réseaux professionnels, d’autres dans les réseaux d’amis ou d’amoureux ou encore autour d’un intérêt bien précis. Grâce à l’internet et à leur gratuité la plupart du temps, ils atteignent un public très large à travers le monde.

Tecfa est également un réseau social de professionnels ou passionnés des technologies éducatives. Bien que la communauté de pratique est grande, nous avons défini comme membre du réseau social de Tecfa toute personne poursuivant la formation Staf/Maltt, les enseignant et les collaborateurs, car nous possédons déjà des informations à leur sujet.

Nous avons développé un outil adapté à la taille et l’intérêt que les personnes ont en commun, focalisé sur la fonctionnalité « finding people ». Pour cela, nous avons réutilisé une technologie déjà existante au sein de Tecfa, l’annuaire LDAP. Notre outil testé auprès d’un groupe d’utilisateurs est parfaitement opérationnel. Bien qu’il s’agisse d’un prototype, il est utilisable à grande échelle et prêt à être utilisé par les 200 membres du réseau. Il restera encore à apporter les améliorations évoquées au point précédant et à la rentrée universitaire en septembre, la nouvelle volée de Maltt appréciera plus particulièrement cet outil social. Un point important restera encore à mettre en place : la façon de fidéliser les membres et les faire revenir régulièrement.

6. Bibliographie

Allen, C.: Tracing the evolution of Social Software, http://www.lifewithalacrity.com/2004/10/tracing_the_evo.html

Barnes, J.: Class and Committees in a Norwegian Island Parish. Human Relations 7 (1954), p. 39-58.

Bermond, N.: Le Networking Social (travail realise dans le cadre du Mastere Management de Projets e-Business), http://pagesperso-orange.fr/n.bermond/networking-social.pdf

Dunbar, R.: Co-evolution of neocortex size, group size and language in humans, Behavioral and Brain Sciences 16 (1993), p. 681-734.

Github: Ajax Autocompleter, http://github.com/madrobby/scriptaculous/wikis/ajax-autocompleter

Page 35: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 35 -

Granovetter, M. S.: The Strength of Weak Ties. American Journal of Sociology 78 (1973), p. 46-47 et p. 1360-1380.

LDAP – Le modèle d’information, http://www.commentcamarche.net/ldap/ldapinfo.php3

LDAP – Object classes and attributs, http://www.zytrax.com/books/ldap/ape/

Lefebvre, A.: Les réseaux sociaux pour professionnels, Pourquoi et comment en tirer profit…, http://www.6nergies.net/IMG/pdf/reseaux-sociaux-pro-1.3-3.pdf

Loic Le Meur Blog [FR] : Logiciels sociaux, http://loiclemeur.com/france/logiciels_sociaux/

Social Networks Research Report, by wildbit, http://www.wildbit.com/wildbit-sn-report.pdf

Travers, J. et Milgram, S.: An Experimental Study of the Small World Problem. Sociometry, Vol. 32, No. 4, 1969, p. 425-443.

Telfizian, L.: Les réseaux qui marchent. Le Figaro, 26 sept. 2005, p. 13-15.

The Dunbar Number as a Limit to Group Sizes, http://www.lifewithalacrity.com/2004/03/the_dunbar_numb.html

The Social Networking Landscape, http://blogs.salon.com/0002007/2005/11/02.html#a1327

Tutorial LDAP, http://www-sop.inria.fr/members/Laurent.Mirtain/ldap-livre.html

Wenger, E.: Communities of Practice: Learning, Meaning and Identity. Cambridge University Press, 1988

Wikipedia: Dunbar’s Number, http://en.wikipedia.org/wiki/Dunbar%27s_number

Wikipedia: Social Network, http://en.wikipedia.org/wiki/Social_network

Wikipedia: Social Software, http://en.wikipedia.org/wiki/Social_software

Page 36: Développement d'un logiciel de réseau social comme soutien à une communauté de pratique

Mémoire de DESS Staf Dajana Kapusova Leconte

- 36 -

Annexe 1 : LDAP attributs

uid username core.schema cn common name core.schema sn surname core.schema givenName given name core.schema personalTitle personal title cosine.schema userPassword user password core.schema manager LDAP manager inetorgperson.schema description description cosine.schema mail email address core.schema homePostalAddress home postal address inetorgperson.schema homePhone home telephone number cosine.schema mobile mobile telephone number cosine.schema title job title core.schema street street address (work) core.schema l locality (work) core.schema postalCode post code (work) core.schema roomNumber room number (work) interorgperson.schema telephoneNumber telephone number (work) core.schema facsimileTelephoneNumber fax core.schema tdsPhotoURL photo URL tecfa.schema tdsSkill skills tecfa.schema tdsTecfaHomePage webpages tecfa.schema tdsDiploma other diplomas tecfa.schema tdsEmployer employer tecfa.schema tdsJobDomain job domain tecfa.schema tdsMThesisURL Staf/Maltt thesis tecfa.schema tdsMThesisKeyWord thesis keywords tecfa.schema tdsMHomePage Staf/Maltt homepage tecfa.schema tdsMWorkPage Staf/Maltt workpage tecfa.schema tdsMPromotion Staf/Maltt promotion tecfa.schema tdsMStudentCategory staf or maltt category tecfa.schema tdsMStudentStatus student status tecfa.schema

Les attributs en gras ont été utilisés pendant le développement du logiciel.