<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet href="ePBLproject11.css" type="text/css"?>
<?xml-stylesheet href="ePBLproject11.xsl" type="text/xsl"?>
<!DOCTYPE project SYSTEM "ePBLproject11.dtd">
<project>
  <name>Visualisation de l'information dans le portail STAF18</name>
  <authors>Dajana Kapusova</authors>
  <date>14.05.2004</date>
  <updated>06.07.2004</updated>
  <goal>
    <title>Visualisation de l'information dans le portail STAF18 sous forme graphique en SVG</title>
    <description>Le but de ce projet est de développer un "petit" dispositif en SVG qui permette de visualiser la prductivité des membres dans le portail STAF18.<br/>Pour ce faire, je vais d'abord étudier les différentes techniques de représentation visuelle de l'information et d'interaction. Ceci me permettra de trouver un type de visualisation qui sera approprié pour visualiser l'information du portail, à savoir l'activité des membres: articles écrits, commentaires postés, liens soumis, participation dans le forum et/ou autre. Après avoir déterminé les informations à visualiser, je vais proposer une métaphore de navigation et développer un "petit" dispositif, accessible aux utilisateurs du portail, en langage SVG en format d'objets graphiques bi-dimensionnels: des images, des contours graphiques vectoriels et/ou du texte.</description>
  </goal>
  <state-of-the-art><h1><a name="infoviz">Introduction à "InfoVis"</a></h1><p>La quantité d&#x2019;informations disponible aujourd'hui est plus grande que jamais. Les utilisateurs deviennent surchargés par la masse et la complexité de l&#x2019;information, et son exploration et analyse deviennent de plus en plus difficile. Ainsi, il y a un besoin de trouver des moyens pour représenter l'information visuellement afin de permettre aux utilisateurs d'obtenir l'information d&#x2019;une manière efficace et de la comprendre.</p><h2>Pourquoi visualiser l'information</h2><p>La visualisation de l'information permet aux utilisateurs de traiter toute cette information grâce à nos possibilités visuelles innées de perception. Les applications de visualisation de l'information se basent sur le système perceptif de l&#x2019;être-humain : couleur, taille, forme, proximité et mouvement. Par conséquent, les applications de visualisation de l'information nous permettent de comprendre mieux des systèmes complexes, de prendre de meilleures décisions et de découvrir l'information qui pourrait autrement rester inconnue.</p><h2>Qu'est-ce que la visualisation de l'information</h2><p>La visualisation de l'information ("InfoVis") combine des aspects de la visualisation scientifique, des interfaces humain-ordinateur (human-computer interfaces), de l'exploitation de données (data mining), de l&#x2019;imagerie et des graphiques. Elle se focalise sur l&#x2019;information qui est souvent abstraite. Le problème principal des recherches est alors de découvrir de nouvelles métaphores visuelles pour représenter l'information et de comprendre quelles sont les tâches analytiques qu&#x2019;elles peuvent supporter.</p><p>La visualisation est la présentation graphique de l'information. Son but est de fournir à l&#x2019;utilisateur une compréhension qualitative du contenu de l'information. L'information peuvent être des données, des processus, des relations ou des concepts. La présentation graphique peut nécessiter la manipulation des entités graphiques (points, lignes, formes, images, texte, surface) et des attributs (couleur, intensité, taille, position, forme, mouvement).</p><p>C&#x2019;est plus que de jolis images. Pour créer une visualisation, on doit retracer l'information dans un espace physique qui représentera les liens entre les informations. Ce processus de transformation commence par des données brutes qui sont collectées avec un processus automatique et qui n&#x2019;ont pas été encore manipulées. L&#x2019;utilisateur extrait un sous-ensemble de données intéressantes organisées d&#x2019;une manière plus structurée, en général maintenu dans une base de données relationnelle. La forme plus structurée peut alors être associée à une structure visuelle par association d&#x2019;attributs de données aux attributs visuels. Finalement, la représentation visuelle peut être manipulée interactivement par l'utilisateur en obtenant de différentes vues de la même visualisation. Il ne s'agit pas juste de créer une super demo, une visualisation doit supporter des tâches spécifiques, la découverte, la prise de décision, l'explication.</p><p>L'exploration visuelle de données suit habituellement une étape de trois processus: vue d'ensemble d'abord, zoom et filtrage, et après détails à la demande (Overview first, zoom and filter, and then details-on-demand); ce que Shneiderman [4] appelle "Information Seeking Mantra". D'abord, l'utilisateur doit obtenir une vue d'ensemble des données. Il identifie des structures intéressantes et il se focalise sur une ou plusieurs d&#x2019;entre elles. Pour analyser les structures, l'utilisateur a besoin d&#x2019;accéder aux détails des données.</p><h1><a name="techvis">Les différentes techniques de visualisation</a></h1><p>Il y a un grand nombre de techniques de visualisation de l'information qui ont été développées pendant la dernière décennie pour permettre l'exploration de grands ensembles de données. Actuellement, seulement quelques taxonomies ont été développée par des spécialistes en visualisation de l'information (Shneiderman, 1992, Chi, 2000, North, 1996, Reed et Heller, 1997).</p><p>Keim [1] propose une classification selon trois critères (figure 1) :</p><ol>
      <li>les données à visualiser</li>
      <li>la technique de visualisation</li>
      <li>la technique d'interaction et de déformation utilisée</li>
    </ol><img align="" alt="Classification des techniques de visualisation de l'information" border="1" height="207" src="http://tecfa.unige.ch/staf/staf-j/kapusova/staf18/images/techniques.jpg" width="397"/><p>Figure 1 : Classification des techniques de visualisation de l'information</p><h2>Données à visualiser</h2><p>Les types de données à visualiser peuvent être :</p><ul>
      <li><strong>données unidimensionnelles</strong> (one dimensional data)<br/>Elles ont habituellement une dimension dense.<br/>Exemple : données temporelles de ThemeRiver </li>
      <li><strong>données bidimensionnelles</strong> (two dimensional data)<br/>Elles ont deux dimensions distinctes. Les axes X et Y sont une méthode typique pour montrer des données bidimensionnelles.<br/>Exemple : données géographiques où les deux dimensions sont longitude et latitude. Polaris, MGV</li>
      <li><strong>données multidimensionnelles</strong> (ou multivariables) (multidimensional data)<br/>Beaucoup d&#x2019;ensembles de données se composent de plus de trois attributs et donc, ils ne permettent pas une visualisation simple à deux ou trois dimensions.<br/>Exemple : tables des bases de données relationnelles qui ont souvent des dizaines jusqu&#x2019;au centaines de colonnes (ou attributs). Polaris, Scalable Framework</li>
      <li><strong>texte et hypertexte</strong> (text and hypertext)<br/>Tous les types de données ne peuvent être décrits en termes de dimensionnalité. A l&#x2019;age du web, un type important de données est le texte et l&#x2019;hypertexte ainsi que les contenus des pages web multimédia. Dans la plupart des cas, une transformation de données en des vecteurs descriptifs est d&#x2019;abord nécessaire avant que des techniques de visualisation puissent être utilisées.<br/>Exemple : articles de nouvelles, documents web </li>
      <li><strong>hiérarchies et graphiques</strong> (hierarchies and graphs)<br/>Les enregistrements ont souvent un certain lien avec d'autres informations. Des graphiques sont largement répandus pour représenter de telles interdépendances. Un graphique se compose de l'ensemble d'objets, appelé des noeuds, et les connexions entre ces objets, appelés les bords.<br/>Exemple : corrélations des e-mails entre des personnes, leur comportement d'achats, la structure des fichiers du disque dur, les hyperliens du web. </li>
      <li><strong>algorithmes et logiciels</strong> (algorithms and software)<br/>Le but de la visualisation est de soutenir le développement de logiciel en aidant à comprendre des algorithmes, par exemple en montrant le flux de l'information dans un programme, pour améliorer la compréhension du code écrit, par exemple en représentant la structure des milliers de lignes du code source comme des graphiques, et pour soutenir le programmeur en corrigeant le code, c.-à-d. en visualisant des erreurs.<br/>Exemple: opérations de débogage dans Polaris</li>
    </ul><h2>Technique de visualisation</h2>La technique de visualisation utilisée peut être classifiée dans :<ul>
      <li><strong>affichages standards en 2D/3D</strong> (standard 2D/3D displays)<br/>Exemple: diagrammes à barres, x-y plot, graphiques linéaires</li>
      <li><strong>affichages géométriquement transformés</strong> (geometrically transformed displays)<br/>Ces techniques visent à trouver des transformations « intéressantes » des ensembles de données multidimensionnels.<br/>Techniques : Scatterplots (nuage de points), Landscapes, Projection Pursuit, Prosection Views, Hyperslice, Parallel Coordinates </li>
      <li><strong>affichages basés sur icônes</strong> (icon-based displays)<br/>L'idée est de tracer les valeurs d'attribut d'une donnée multidimensionnelle en forme d'une icône.<br/>Exemple: Chernoff faces, Stick figures, Shape-Coding, Color-icons, TileBars</li>
      <li><strong>affichages denses en pixel</strong> (dense pixel displays)<br/>L&#x2019;idée de base de cette technique est de tracer chaque valeur d&#x2019;une dimension en un pixel coloré et de grouper les pixels appartenant à chaque dimension en des zones adjacents. Puisqu'en général cette technique emploie un pixel par valeur de donnée, elle permet de visualiser la plus grande quantité de données possibles sur le même dispositif.<br/>Technique : Recursive Pattern Technique, Circle Segments Technique, Spiral- &amp; Axes-Techniques</li>
      <li><strong>affichages empilés</strong> (stacked displays)<br/>Ces techniques sont conçus pour présenter des données divisées d&#x2019;une manière hiérarchique.<br/>Technique : Dimensional Stacking, World-within-Worlds, Treemap (<a href="http://www.smartmoney.com/marketmap" target="_BLANK">SmartMoney</a>, Cone Trees, InfoCube</li>
    </ul><h2>Technique d'interaction et de déformation utilisée</h2>Ces techniques sont classifiées dans :<ul>
      <li><strong>projection dynamique</strong> (dynamic projection)<br/>L'idée de base est de changer dynamiquement les projections afin d'explorer un ensemble de données multidimensionnel.<br/>Exemple : Grand-Tour system, XGobi, XLispStat, ExplorN </li>
      <li><strong>filtrage interactif</strong> (interactive filtering)<br/>Il est important de diviser interactivement l&#x2019;ensemble de données dans des segments et de se concentrer sur les sous-ensembles intéressants. Ceci peut être fait en choisissant directement le sous-ensemble désiré (browsing) ou en spécificiant des propriétés du sous-ensemble désiré (querying).<br/>Exemple : MagicLens, Filter/Flow Queries, InfoCrystal</li>
      <li><strong>zoom interactif</strong> (interactive zooming)<br/>Il est important de présenter les données sous une forme fortement comprimée afin de fournir une vue d'ensemble des données, mais en même temps de permettre un affichage de données en résolutions différents.<br/>Exemple : TableLens, MagicLens, <a href="http://www.dbs.informatik.uni-muenchen.de/dbs/projekt/visdb/visdb.html" target="_BLANK">VisDB</a>, PAD++, IVEE/Spotfire, DataSpace </li>
      <li><strong>déformation interactive</strong> (interactive distortion)<br/>L'idée de base est de montrer des parties de données avec un niveau élevé de détail tandis que d'autres sont montrées avec un niveau moindre de détail. Les techniques courantes de déformation sont des déformations hyperboliques et sphériques qui sont souvent employées sur des hiérarchies ou des graphiques.<br/>Exemple : Bifocal Displays, Perspective Wall, TableLens, Graphical Fisheye Views, Hyperbolic Visualization, Hyperbox </li>
      <li><strong>liens interactifs et brossage</strong> (interactive linking and brushing)<br/>L'idée est de combiner des méthodes différentes de visualisation pour surmonter les imperfections des techniques simples. Les nuages de points (scatterplots) des projections différentes, par exemple, peuvent être combinées en colorant et en liant des sous-ensembles de points dans toutes les projections.<br/>Exemple : Polaris, Scalable Framework, S Plus, XGobi, <a href="http://davis.wpi.edu/~xmdv/" target="_BLANK">Xmdv-Tool</a>, DataDesk </li>
    </ul><p>N'importe laquelle de ces techniques de visualisation peut être utilisée en même temps que n'importe laquelle de ces techniques d'interaction aussi bien que n'importe laquelle des techniques de déformation pour n'importe quel type de donnée.</p><br/><h3>Sources</h3><br/>[1] Daniel A. Keim, <a href="http://fusion.cs.uni-magdeburg.de/pubs/TVCG02.pdf">Information Visualization and Visual Data Mining</a>, IEEE Transactions on Visualization and Computer Graphics, Vol. 7, No. 1, January-march 2002<br/>[2] Nahurn Gershon, Stephen G. Eick, <a href="http://www.cs.duke.edu/courses/spring03/cps296.8/papers/GuestEditor'sInfoVisIntroduction.pdf">Information Visualization</a>, IEEE Computer Graphics and Applications, July 1997<br/>[3] Gary Geisler, <a href="http://www.ils.unc.edu/~geisg/info/infovis/paper.html">Making information more accessible: A survey of information visualization applications and techniques</a><br/>[4] Ben Shneiderman, <a href="http://www.cs.ubc.ca/~tmm/courses/cpsc533c-03-spr/readings/shneiderman96eyes.pdf">The Eyes Have It: A Task by Data Type Taxonomy for Information Visualizations</a>, 1996 IEEE Visual Languages<br/>[5] <a href="http://www.nicolas-guillard.com/cybergeography-fr/atlas/atlas.html">Un Atlas des Cyberespaces</a><h1><a name="infoportail">Informations du portail STAF18</a></h1><p>La croissance exponentielle du World Wide Web est une démonstration dramatique de la façon dont l'information peut être rendue plus accessible en incorporant des techniques de visualisation.</p>Quelles sont les informations liées aux différents espaces du portail STAF18 pertinentes à l'étude de la "productivité" d'un utilisateur? Il ne s'agit pas de faire un inventaire complet.<h2>Articles (nouvelles)</h2>Informations:<ul>
      <li>auteur - username</li>
      <li>titre de l'article - texte court</li>
      <li>date et heure de soumission</li>
      <li>sujet - choix dans une liste déroulante</li>
      <li>texte de l'article - texte long</li>
      <li>commentaire d'un article - texte</li>
    </ul>Informtions transformées que je vais pouvoir utiliser:<ul>
      <li>nombre d'articles ou de commentaires soumis par un auteur</li>
      <li>nombre d'articles ou de commentaires soumis par un auteur pendant une certaine période (1 semaine p.ex.)</li>
      <li>taille d'un article ou d'un commentaire en octets</li>
    </ul><h2>Forum</h2>Informations:<ul>
      <li>nom du forum - texte court</li>
      <li>sujet du forum - texte court</li>
      <li>auteur du message - username</li>
      <li>date et heure de soumission</li>
      <li>corps du message - texte long</li>
    </ul>Informations transformées que je vais pouvoir utiliser:<ul>
      <li>nombre de messages postés par un auteur</li>
      <li>nombre de messages postés par un auteur pendant une certaine période (1 semaine p.ex.)</li>
      <li>taille d'un message en octets</li>
    </ul><h2>Blogs (journal)</h2>Informations:<ul>
      <li>nom de l'utilisateur - username</li>
      <li>titre de l'entrée - texte court</li>
      <li>texte de l'entrée - texte long</li>
      <li>date et heure de soumission</li>
      <li>commentaire d'une éntrée - texte long</li>
    </ul>Informations transformées que je vais pouvoir utiliser:<ul>
      <li>nombre d'entrées ou de commentaires par utilisateur</li>
      <li>nombre d'entrées ou de commentaires par utilisateur pendant une certaine période (1 semaine p.ex.)</li>
      <li>taille d'une entrée en octets</li>
    </ul><h2>Liens</h2>Informations:<ul>
      <li>titre du lien - texte court</li>
      <li>URL du lien - http</li>
      <li>catégorie - choix dans une liste déroulante</li>
      <li>description - texte 255 caractères max.</li>
      <li>nom de l'utilisateur</li>
      <li>date d'ajout</li>
      <li>hits (nombre de visites)</li>
      <li>score</li>
      <li>nombre de votes</li>
      <li>commentaire sur le lien</li>
      <li>date et heure du commentaire</li>
    </ul>Informations transformées que je vais pouvoir utiliser:<ul>
      <li>nombre de liens ou commentaires postés par un utilisateur</li>
      <li>nombre de liens ou de commentaires postés par un utilisateur pendant une certaine période (p.ex. 1 semaine)</li>
    </ul>Existe-t-il une demande de visualiser l'info du côté de l'enseignant?<br/>Pas explicitement, mais par rapport aux activités que nous devons faire tout au long de la période 6 pour le cours staf 18, une certaine "productivité" minimale est exigée de chaque étudiant de la vollée Jolan: soumettre X liens, faire X commentaires sur l'article etc. Ainsi, on peut en conclure qu'un dispositif qui visualise toutes cette information sera bienvenue. Mais en plus, comme nous faison partie d'une communauté d'apprentissage, on attend de chaque étudiant qu'il soit proactif et qu'il participe à la création de la "mémoire" collective. Le dispositif permettra donc d'identifier si ce but est atteint. L'étudiant aurait un apperçu sur son productivité/activité, pourrait faire une comparaison par rapport aux autres étudiants et prendre une décision en conséquence.<br/>Donc, le produit final pourrait être un "block" dans le portail (comme celui de Vivian "ePBL projects" qui montre l'avancement des projets) qui montre la productivité des étudiants de la vollée Jolan.<br/>Informations à visualiser par étudiant:<ul>
      <li>nombre d'articles soumis<br/>Activité 1: proposer 2 sujets de recherche ("JOLAN: Idées de projets")<br/>Activité 6: écrire un petit article ("JOLAN Visualization news")</li>
      <li>nombre de commentaires sur les articles<br/>Activité 1: ajouter au moins 3 commentaires<br/>Activité 4 en note: insérer les questions concernant une clarification sur l'activité si nécessaire<br/>Activité 6: commenter au moins 2 articles</li>
      <li>nombre de liens produits<br/>Activité 1: produire 3 liens<br/>Activité 6: insérer 6 liens</li>
      <li>nombre de commentaires sur les liens<br/>Activité 1: commenter 3 liens</li>
      <li>nombre d'entrées dans le blog ou éventuellement le volume (en octets)<br/>Activité 1: faire une entrée réflexive dans le blog<br/>Activité 4: faire une réflexion dans le blog<br/>Activité 5: faire une entrée pour discuter l'activité<br/>Activité 6: faire une réflexion sur l'activité<br/></li>
    </ul><strong>Question</strong>: dans les activités à venir, que sera-t-il demandé aux étudiants à ce que je puisse le prévoir dans mon dispositif?<br/><br/>On peut donc clairement identifier les <strong>domaines de productivité</strong> clairement demandée par l'enseignant:<ul>
      <li>articles</li>
      <li>commentaires sur les articles</li>
      <li>liens</li>
      <li>commentaires sur les liens</li>
      <li>blog<br/></li>
    </ul>Une information supplémentaire à prendre en compte serait la participation au forum.<br/><br/>Techniques à utiliser (qqs idées):<ul>
      <li><strong>color icons</strong> - p.ex. pour identifier l'ajout récent d'un lien par une couleur plus foncée. Plus la date du dernier ajout est éloignée plus la couleur est clair (tâche: ah, il vient de rentrer un lien, faut que j'aille regarder, ou commentaire, faut aller répondre)</li>
      <li><strong>star icons</strong> - chaque pointe de l'étoile pourrait représenter un axe de productivité, plus la pointe est grande, plus la productivité sur cet axe est grande</li>
      <li><strong>axe X-Y</strong> - choisir deux dimensions appropriées, p.ex. sur l'axe verticale le temps et sur l'axe horizontale le domaine de productivité. Peut être combiné p.ex. avec les "shapes"</li>
      <li><strong>shapes</strong> - une figure représentera un étudiant. p.ex. des cercles de tailles différentes qui représentent le volume de production de l'étudiant dans un domaine de productivité.</li>
      <li><strong>treemap</strong> - le treemap sera divisé en domaines de productivité (liens, blog, articles...) et ensuite dans chaque domaine une surface présentera la productivité de l'étudiant en volume (surface plus grande = productivité plus grande)</li>
      <li><strong>browse</strong> - choisir dans une liste déroulante le domaine de productivité et seulement celui-ci s'affichera (ou également le nom d'un étudiant)</li>
      <li><strong>query</strong> - taper le nom d'un étudiant pour povoir "highlighter" les figures qui le représentent dans le dispositif (p.ex. si les étudiants sont représentés par des cercles). Mais comme nous ne sommes que 9 étudiants, pas vraiment nécessaire</li>
      <li><strong>zoom</strong> - pour voir de plus près p.ex. un seul étudiants en cliquant sur la figure qui doit le représenter<br/></li>
    </ul>Voici quelques ressources pour m'inspirer:<br/><a href="http://web.media.mit.edu/%7Efviegas/posthistory/" target="_BLANK">Posthistory</a><br/><a href="http://web.media.mit.edu/~fviegas/authorlines/" target="_BLANK">Newsgroup crowds and authorlines</a><br/><a href="http://www.nicolas-guillard.com/cybergeography-fr/atlas/info_maps.html" target="_BLANK">Atlas des Cyberespaces - Cartes d'espaces informationnels</a>: Webmap, <a href="http://www.smartmoney.com/marketmap" target="_BLANK">Carte du marché</a>, Chat circles<br/><a href="http://www.samuelwan.com/information/archives/000159.html" target="_BLANK">Blog treemap visualizer</a><h1><a name="metaphore">Métaphore de navigation</a></h1>Le dispositif se présentera sous forme d'un "block" du portail. L'information visualisée seront les commentaires sur les articles des étudiants de la vollée Jolan. Le block "Article Comments" est en forme de carré (147 x 147 px). Chaque étudiant Jolan est représenté par un cercle en tant que membre d'une communauté d'apprentissage.<br/><br/>Taille du cercle: nombre de commentaires faits sur les articles. Plus le cercle est grand, plus l'étudiant a fait de commentaires.<br/>Distance du cercle par rapport au centre du dispositif: nombre de commentaires commentés ("Re:"). Plus le cercle est proche du centre, plus l'étudiant répond aux commentaires.<br/>Couleur du cercle: date du commentaire. Plus la couleur est clair, plus le commentaire est récent.<br/><img src="http://tecfa.unige.ch/staf/staf-j/kapusova/staf18/metaphore.jpg"/><br/><br/>En survolant avec la souris un cercle, le nom de l'étudiants apparaît, ainsi que le nombre de commentaires postés, nombre de réponses aux commentaires et la date du dernier commentaire.<br/><img src="http://tecfa.unige.ch/staf/staf-j/kapusova/staf18/metaphore2.jpg"/><h1><a name="svg">SVG</a></h1>SVG - Scalable Vector Graphics - est un langage de description de graphiques bi-dimensionnels en XML. SVG admet trois types d'objets graphiques : des contours graphiques vectoriels (par exemple, des tracés consistant en lignes droites et courbes), des images et du texte. Les objets graphiques peuvent être regroupés, stylés, transformés et composés dans des objets précédemment rendus. L'ensemble de fonctions comprend des transformations imbriquées, des tracés de rognage, des masques basés sur la couche alpha et des objets de gabarit.<br/><br/>Les dessins SVG peuvent être interactifs et dynamiques.<br/><br/>Un contenu SVG peut être rendu interactif (i.e., répondre aux événements initiés par l'utilisateur) en utilisant les possibilités suivantes du langage SVG :<ul>
      <li>Des actions initiées par l'utilisateur, tel que presser le bouton d'un dispositif de pointage (par exemple, une souris), peuvent causer l'exécution d'animations ou de scripts ;</li>
      <li>L'utilisateur peut initier des hyperliens vers de nouvelles pages Web par des actions, comme cliquer sur le bouton d'une souris quand le dispositif de pointage se positionne au-dessus d'éléments graphiques particuliers ;</li>
      <li>Dans de nombreux cas, l'utilisateur peut zoomer dans un contenu SVG ou effectuer un panoramique autour de celui-ci ;</li>
      <li>Les déplacements par l'utilisateur du dispositif de pointage peuvent modifier le curseur qui indique la position courante du dispositif de pointage.</li>
    </ul>Le Web étant un média dynamique, SVG gère la possibilité de changer les graphiques vectoriels dans le temps. On peut animer un contenu SVG des façons suivantes :<ul>
      <li>En utilisant les éléments d'animation de SVG. Les fragments de document SVG peuvent décrire les modifications dans la durée des éléments du document. En utilisant les divers éléments d'animation, on peut définir des tracés de mouvement, des effets de fondu en ouverture ou en fermeture et des objets qui grandissent, retrécissent, tournent ou changent de couleur ;</li>
      <li>En utilisant le DOM de SVG. Le DOM de SVG est conforme aux aspects principaux des spécifications « Modèle Objet du Document, niveau 1 » (DOM1) et « Modèle Objet du Document, niveau 2 (DOM2). Chaque paramétrage d'attribut et de feuille de style est accessible au moyen de scripts et SVG offre un jeu d'interfaces DOM supplémentaire pour la gestion de l'animation au travers de scripts. En conséquence, on peut obtenir virtuellement toute sorte d'animation. Les facilités de synchronisation des langages de script, comme ECMAScript, peuvent être utilisées pour démarrer et contrôler les animations.</li>
      <li>SVG est conçu pour permettre aux versions ultérieures de [SMIL1] d'utiliser un contenu SVG statique ou animé comme composant de média ;</li>
      <li>Pour la suite, il est prévu que les versions ultérieures de SMIL soient modularisées et que des composants SMIL puissent être utilisés en conjonction avec SVG et d'autres grammaires XML pour obtenir des effets d'animation.</li>
    </ul><h2>Structure du document SVG</h2><ol>
      <li>Avant toute chose, SVG étant une application d'XML, il faut commencer un fichier SVG par la déclaration XML:<br/><code>&lt;?xml version="1.0"?&gt;</code></li>
      <li>La deuxième chose à faire est de faire référence à la DTD (Document Type Definition), qui est un document qui regroupe toutes les règles concernant la norme. Cela se traduit de la façon suivante dans le code:<br/><code>&lt;!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"&gt;</code></li>
      <li>Ensuite, il faut déterminer les dimensions de la zone SVG principale, ainsi que sa position. Cela se fera dans la balise <code>&lt;svg&gt;</code>, avec les attributs <code>width</code> et <code>height</code> pour les dimensions, et les attributs <code>x</code> et <code>y</code> pour la position dans le navigateur. Tout le code du graphique svg se trouvera entre les balises d'ouverture et de fermeture <code>&lt;svg&gt;</code>.</li>
    </ol><h2>Les formes</h2>Une fois la zone principale définie, on peut insérer différentes formes, du texte, appliquer des effets sur le contenu... Les différentes formes que l'on peut trouver dans SVG sont les suivantes:<ul>
      <li>Des rectangles : Balise <code>&lt;rect /&gt;</code></li>
      <li>Des cercles : Balise <code>&lt;circle /&gt;</code></li>
      <li>Des ovales : Balise <code>&lt;ellipse /&gt;</code></li>
      <li>Des lignes : Balise <code>&lt;line /&gt;</code></li>
      <li>Des lignes : Balise <code>&lt;polyline /&gt;</code></li>
      <li>Des polygones : Balise <code>&lt;polygon /&gt;</code></li>
      <li>Des tracés : Balise <code>&lt;path /&gt;</code></li>
    </ul><h2>Le texte</h2>La balise utilisée pour insérer du texte est, en toute logique, la balise <code>&lt;text&gt;</code>. Le texte sera inclus entre les balises d'ouverture et de fermeture <code>&lt;text&gt;</code> et <code>&lt;/text&gt;</code>. La balise <code>&lt;text&gt;</code> peut avoir pour enfant la balise <code>&lt;tspan&gt;</code>, par exemple lorsque l'on veut écrire du texte sur plusieurs lignes. Chaque <code>&lt;tspan&gt;</code> correspond à une ligne.<h2>Les groupes</h2>On peut regrouper les balises ayant les mêmes propriétés de stylage, au moyen de la balise <code>&lt;g&gt;</code>. Les propriétés de stylage seront incluses dans la balise <code>&lt;g&gt;</code>, et le stylage s'appliquera à tout ce qui est compris entre <code>&lt;g&gt;</code> et <code>&lt;/g&gt;</code>. La balise <code>&lt;g&gt;</code> peut avoir un attribut <code>id</code>, qui sert à identifer le groupe pour éventuellement y faire appel plus loin, par exemple dans le cas d'une animation.<h2>Le stylage</h2>Les formes et le texte peuvent être remplis de différentes façons, avec des couleurs, des dégradés ou des motifs. Pour compléter la définition des propriétés d'une forme ou de texte, on utilise l'attribut style, qui permet de gérer l'apparence des objets.<h3>Sources</h3>Tutoriel SVG: http://www.esi.umontreal.ca/~moalv/blt6336/tutorielsvg.html<br/>La spécification Graphiques Vectoriels Adaptables (SVG) 1.0: http://www.yoyodesign.org/doc/w3c/svg1/<h1>Test d'usabilité</h1>Adaptations à faire sute au test d'usabilité: le dispositif affiche la production au niveau des commentaires des articles des étudiants Jolan. Pour certains étudiants, ça peut donner l'impression: regardez, moi je commente et pas vous. Donc il peut être intéressant d'introuduire dans le dispositif également D. Schneider et V. Synteta.<h1>Dispositif</h1><h2>Base de données MySQL</h2>Etudiants Jolan: aristide, boucheri, claude, court, diego, genet, hocquet, kapusova, vuilleum<br/>Table: nuke_comments<br/>pn_tid: ID du commentaire (auto increment)<br/>pn_pid: ID du commentaire auquel l'étudiant répond<br/>pn_sid: ID de la nouvelle qui est commentée<br/>pn_date: date du commentaire<br/>pn_name: nom de l'étudiant</state-of-the-art>
  <research-development-questions>
    <question>
      <title>éDe quelle manière peut-on visualiser les informations?</title>
      <description>A partir des données brutes ("raw" data) stockées dans une BD sous forme alphanumérique on passe à une forme graphique. Il s'agit donc d'étudier les différentes techniques de représentation visuelle de l'information et d'en choisir les types de visualisation pertinentes pour le domaine choisi, càd l'activité/la productivité des memebres du portail STAF18.<br/>Plus précisèment, je me pose les questions suivantes :<ul>
          <li>Qu'est-ce que la visualisation de l'information?</li>
          <li>Pourquoi visualiser et quel avantage pour un utilisateur?</li>
          <li>Quelles sont les techniques de visualisation existantes?</li>
          <li>En quoi consiste le principe des différentes techniques et quel but visent-elles à atteindre?</li>
          <li>Quel est le type de donnée que chaque technique exploite?</li>
          <li>Donner un exemple d'outil/de logiciel qui utilise cette technique.</li>
          <li>Quelle technique pourais-je utiliser pour la visualisation de l'information d'un portail? Donner un exemple.</li>
        </ul></description>
    </question>
    <question>
      <title>Dans le portail, quelles sont les informations qui portent sur la participation des utilisateurs et lesquelles vais-je utiliser pour mon dispositif?</title>
      <description>Les utilisateurs font "vivre" le portail en y postant des articles, des liens, des appréciations, en blogant etc. ce qui génère un nombre important d'information. En regardant tout ce système complexe d'informations du point de vue d'un enseignant p.ex., je me poserai la question comment le rendre plus digeste grâce à une représentation graphique. Il s'agit donc de faire un inventaire des informations à visualiser.<br/><ul>
          <li>Quelles sont les informations liées à quel espace du portail?</li>
          <li>Comment peut-on mesurer la productivité d'un utilisateur par rapport à cet espace?</li>
          <li>Quelle est la nature de cette information (nombre, date, texte...)?</li>
          <li>Existe-t-il des données qui sont stockées dans la BD mais qui ne sont pas visibles dans le portail? (p.ex. par qui a été soumis un lien)</li>
          <li>Vais-je pouvoir/devoir appliquer une transformation à cette information avant de l'exploiter? (p.ex. en additionnant, calculant un % etc.)</li>
          <li>Existe-t-il une demande du côté de l'enseignant d'avoir une visualisation d'une certaine information?</li>
          <li>A quelle tâche pourra servire cette information (du côté de l'enseignant, de l'étudiant)?</li>
          <li>Quelles informations vais-je alors utiliser pour mon dispositif?</li>
        </ul></description>
    </question>
    <question>
      <title>Quelle(s) technique(s) vais-je utiliser pour visualiser les informations choisies?</title>
      <description>En se basant sur la lectures faite sur InfoVis, il s'agit de déterminer la technique de visualisation appropriée à la représentation visuelle des iformations choisies (faire des propositions et en choisir une).<br/><ul>
          <li>Quelle technique sera-t-elle appropriée à la visualisation de l'information choisie du portail? Pourquoi?</li>
          <li>Qu'est-ce qu'une métaphore?</li>
          <li>Quelle métaphore de navigation vais-je utiliser et pourquoi?</li>
        </ul></description>
    </question>
    <question>
      <title>Comment développer mon dispositif en partant des données de la BD du portail jusqu'à un graphique en SVG?</title>
      <description>Il est nécessaire de faire l'apprentissage du langage SVG pour pouvoir réaliser le dispositif.<br/><ul>
          <li>Quelle est la structure d'un fichier en SVG?</li>
          <li>Comment accéder avec SVG à la BD MySQL afin de récupérer les données et de générer un graphique?</li>
          <li>Dans quelles tables de MySQL se trouve les données que je vais utiliser pour mon dispositif?</li>
          <li>De quelle façon en SVG puis-je réaliser les figures géometriques de ma métaphore de navigation?</li>
        </ul></description>
    </question>
  </research-development-questions>
  <methodology><ul>
      <li>recherche/documentation sur le web au sujet d'InfoVis et des techniques de visualisation</li>
      <li>exploration du portail STAF18 afin de répertorier les informations portant sur l'acitivé des utilisateurs</li>
      <li>choix de l'information à visualiser et de la technique de visualisation appropriée</li>
      <li>choix de la métaphore de navigation</li>
      <li>apprendre le langage SVG à l'aide d'un tutoriel et d'exemples</li>
      <li>réalisation du dispositif</li>
      <li>faire un test d'usabilité</li>
      <li>rédaction du rapport</li>
    </ul></methodology>
  <workpackages>
    <workpackage>
      <planning>
        <from>19.05.2004</from>
        <to>05.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Recherche théorique sur "InfoVis"</title>
          <description>Lire des articles qui traitent de la visualisation de l'information/données et en faire un résumé. </description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#infoviz</url>
          <title>Introduction à "InfoVis"</title>
          <description>Résumé des articles sur la visualisation de l'information. </description>
        </deliverable>
        <deliverable>
          <url>#techvis</url>
          <title>Les différentes techniques de visualisation</title>
          <description>Résumé sur les différentes techniques</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>05.06.2004</from>
        <to>08.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Etudier les informations du portail STAF18</title>
          <description>Explorer le portail STAF18 et établir une tableau contenant les informations portant sur l'activité d'un utilisateur dans le portail. Préciser le type de données et ce que l'on peut en faire pour le dispositif. Ensuite choisir les informations que je vais utiliser pour mon dispositif.</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#infoportail</url>
          <title>Les informations du portail STAF18</title>
          <description>Tableau de données qui peuvent être utilisées dans mon dispositif.</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>09.06.2004</from>
        <to>16.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Réfléxion sur la métaphore de navigation</title>
          <description>Développer une métaphore pour mon dispositif. Il est important de tenir compte des possibilités et des contraintes temporelles pour choisir une métaphore de navigation faisable.</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#metaphore</url>
          <title>Métaphore de navigation</title>
          <description>Proposition de la métaphore de navigation</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>17.06.2004</from>
        <to>23.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Apprentissage du SVG</title>
          <description>Comprendre la structure du SVG et créer quelques exemples simples. Utiliser un tutoriel et un livre de référence.</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#svg</url>
          <title>Petit tutoriel SVG</title>
          <description>Résumé sur la structure du SVG</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>20.06.2004</from>
        <to>25.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Développement du dispositif en SVG</title>
          <description>Développer le dispositif (programmation).</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#mysql</url>
          <title>Commentaires et MySQL</title>
          <description>Tableau récapitulant les informations nécessaires pour le dispositif et leur emplacement dans la BD MySQL.</description>
        </deliverable>
        <deliverable>
          <url>http://tecfaseed.unige.ch/~kapusova/staf18.php</url>
          <title>Dispositif</title>
          <description>Premier essaie de mon dispositif</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>26.06.2004</from>
        <to>27.06.2004</to>
        <progress>100</progress>
      </planning>
      <objectives>
        <objective>
          <title>Test d'usabilité</title>
          <description>Faire un test d'usabilité et d'écrire l'expérience. Faire des critique du dispositif, apporter éventuellement des modificiations au dispositif.</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url>#usability</url>
          <title>Test d'usabilité</title>
          <description>Remarques sur le dispositif</description>
        </deliverable>
        <deliverable>
          <url>http://tecfaseed.unige.ch/~kapusova/staf18all.php</url>
          <title>Nouveau dispositif</title>
          <description>2ème version du dispositif suite au test d'usabilité</description>
        </deliverable>
      </deliverables>
    </workpackage>
    <workpackage>
      <planning>
        <from>20.06.2004</from>
        <to>27.06.2004</to>
        <progress>90</progress>
      </planning>
      <objectives>
        <objective>
          <title>Rédaction du rapport final</title>
          <description>Ecrire le rapport final</description>
        </objective>
      </objectives>
      <deliverables>
        <deliverable>
          <url></url>
          <title>Rapport</title>
          <description></description>
        </deliverable>
      </deliverables>
    </workpackage>
  </workpackages>
</project>

