[ proj11 ] Les CollaboraCubes du Ouaibe

Un project Staf-18 (promotion EVA 1998/2000).

Début du projet:03/ 06/ 1999.
Fin du projet:05/ 07/ 1999.
Estimation du travail:30 jours
Avancement:95%.

1. Participants

Participant

Prénom et Nom:Karine - Delhom
LDAP:uid=delhom,ou=staf,o=tecfa.unige.ch
Email:staldelh@club-internet.fr
URLs:home - work

2. Specification

But principal: Utilisation/échange de "trucs" et communication entre utilisateurs, regroupés par pièce thématique

Le but principal de ce "monde" sera donc de permettre à des étudiants (ou à quiconque ayant envie de se former) d'avoir, d'une part, accès aux cours, aux exemples, etc, et d'autre part, de pouvoir discuter avec les personnes qui se trouvent dans la même pièce et d'éventuellement s'entraider, puisque par définition, elles sont en train de rechercher des informations sur le même thème que soi.


Enseignant:
07/ 06/ 1999

Motivation et titre ?

Je choisirais un titre plus "sexy" (et mettre le titre en bas) et rajouterai un petite ligne qui donne la motivation (pédagogique ou autre)
Etudiant:
14/ 06/ 1999

mettre le titre en bas ??? comprends pas...


Enseignant:
/ 06/ 1999

Moi non plus :(

J'ai oublié ce que je voulais dire, désolé... ceci dit ton nouveau titre me plait mieux :)

Objectifs et/ou questions de recherche (objectives)

ButCréer une sorte de communauté d'information dans différents "cubes de connaissances"
détails:

permettre aux utilisateurs d'avoir accès a une information commune, et favoriser l'échange de données entres eux (en laissant une trace persistante dans l'environnement)


Enseignant:
07/ 06/ 1999

OK

ButPermettre un accès FACILE aux ressources, en standardisant un maximum
détails:

Dans chaque cube, il faut que les informations soient classées de la même manière, afin que celui qui cherche de l'information ne soit pas perdu à chaque fois qu'il change de cube. La 3D permet en effet de hiérarchiser les choses d'une manière qui peut être beaucoup plus près d'un environnement familier qu'une page HTML... Il faut par contre prévoir d'ouvrir les pages d'exemples dans une autre fenêtre, ou les contenus du cours dans une frame...

ButHiérarchiser les cubes eux-mêmes en fonction des thèmes qu'il représente
détails:

Là aussi, la 3D est un plus pour l'organisation spatiale des éléments thématiques: il faut donc que la manière dont les cubes sont placés les uns par rapport aux autres soit cohérente, c'est-à-dire qu'il faut connecter entre eux les cubes qui touchent à des thèmes apparentés, et prévoir des "étages" de connaissances (les thèmes nécéssitant le plus de connaissances au-dessus des autres, et si possible, au-dessus du cube traitant des connaissances prérequises. Cela permet aux utilisateurs, lorsqu'il ne trouvent pas une réponse, d'aller demander aux "voisins du dessus", qui sont supposés être plus experts que lui en le domaine.

ButFavoriser une navigation facile, pour permettre aux étudiants de se concentrer seulement sur leur travail
détails:

En limitant au maximum le nombre de déplacements "autonomes" (par opposition aux déplacements par ViewPoints ou par liens sur les objets), je pense qu'on permet de se détacher d'une grande partie des difficultés que l'on rencontre habituellement dans VRML. Cela permet donc d'utiliser l'espace collaboratif dès l'arrivée de l'étudiant, et non une fois qu'il a appris à se servir de VRML...

Commentaire de l'enseignant sur les objectifs


Enseignant:
07/ 06/ 1999

Plus d'objectifs STP

.. par exemple mentionner le 3D (technique de l'avenir qu'il faut tester)... en gros tout ce que toi tu veux en tirer et ce que le dispositif devrait faire ...

Enseignant:
15/ 06/ 1999

Bonnes idées!

Même si tu n'arrives pas à implémenter tout, il faut développer un peu ces points (et au moins fournir 2-3 scènes qui illustrent ce principe. Enfin à toi de décider sur quoi tu veux mettre la priorité (problème techniques liées à l'insertion d'objets ou le design d'un espace d'information)

Etudiant:
16/ 06/ 1999

Je choisis... les deux !

... comme je fais les deux en parallèle, je met l'accent à la fois sur l'espace d'information (la partie VRML "pur" est finie), et sur la manière d'insérer ces objets dans la scène (puisque c'est, finalement, le but de l'histoire...)

Contexte

Workpackages

WP Rassembler des liens sur les themes qui seront traites dans les pieces [ ]
Planning: Start: 03/ 06/ 1999. End: 04/ 06/ 1999. Estimation du travail: 01 jours. Avancement: 100%.
A faire:
  • browser le web un p'tit moment
Infos diverses:Va certainement se poursuivre en paralelle du reste !...
Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

WP Construction du monde VRML [ ]
Planning: Start: 04/ 06/ 1999. End: 09/ 06/ 1999. Estimation du travail: 05 jours. Avancement: 100%.
A faire:
  • reviser la syntaxe VRML et construire l'environnement
Infos diverses:Normallement, c'est la partie la plus courte...
Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

OK

A la limite il faut minimaliser cette tâche. Si ton truc marche, tu pourras tjrs faire mieux
WP Comprendre quelque chose sur DeepMatrix [ ]
Planning: Start: 09/ 06/ 1999. End: 16/ 06/ 1999. Estimation du travail: 07 jours. Avancement: 100%.
A faire:
  • regarder le tutoriel propose par TECFA, ou bien en trouver d'autres
  • interroger Sylvere et Dao
Infos diverses:
Auto Critique:
  • ca, par contre, ca doit etre une grosse partie
Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

Pas assez clair

Que veux-tu comprendre ? Quel tutoriel ?

Etudiant:
14/ 06/ 1999

ben...

ben... je veux comprendre ce que je dois rajouter dans la syntaxe de mon monde VRML pour qu'il devienne un monde multi-utilisateur. Mes réponses sont à peu près toutes là: http://dmdist.geometrek.com/test/docs/matrix_1.html (mais effectivement, à Tecfa, y a keupouic...Bon finalement, il semble que ce soit en fait la plus petite partie de travail. Juste quelques copier-coller à faire...
WP Trouver un moyen de deposer (uploader) des "tips" que les autres puissent voir [ ]
Planning: Start: 16/ 06/ 1999. End: 29/ 06/ 1999. Estimation du travail: 13 jours. Avancement: 90%.
A faire:
  • interroger Dao et Sylvere, et trouver des exemples sur le web
Infos diverses:Voici la partie la plus compliquee de toute l'histoire... :(
Auto Critique:

je n'en démords pas, après coup : c'est vraiment la partie la plus longue. Gros dilemne sur la méthode pour y parvenir -> php is the answer ?

Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

Oui !

Exactement, il il faut se concentrer sur cela. Ce WP est lié au précédent. Il faut demander de l'aide à Sylvère. A part cela il faut distinguer 2 problèmes: (a) comment insérer un objet dans une scène VRML et (b) comment le stocker de façon permanent.

Enseignant:
15/ 06/ 1999

Pour commencer en douceur ....

Il faudrait effectivement faire un minimum de choses. Voici quelques suggestions à discuter:
  1. Faire des formulaires HTML + php qui génèrent / modifient un fichier VRML. Desavantages: C'est en dehors de la scène VRML, il faut recharger la scène. Variante utiliser MySQL pour stocker les éléments d'une scène VRML (et utiliser PHP pour l'update et la génération de la scène)
  2. Faire des "boutons" VRML qui insèrent des objets VRML. Desavantage: Absense de contenu (texte), rien n'est sauvé après la session
  3. (suite) écrire un bout de code en Java (tu peux demander de l'aide) qui insère l'objet soit dans un fichier, soit dans une base de données (mieux)
  4. La seule solution intelligente serait d'apprende l'EAI (mais à mon avis ce n'est pas réaliste) .... à discuter avec Sylvère aussi

Etudiant:
16/ 06/ 1999

Le 1 me paraît le seul "accessible" à mon niveau !

Pour l'instant, j'ai donc opté pour la solution PHP/VRML, mais si il s'avère qu'il y a moyen de rajouter des objets sans avoir à avaler 35 tutoriels, je suis preneuse. Donc, j'va quand même en toucher 2-3 mots à Sylvere ;-)
WP Appliquer (enfin) le multi-user au monde VRML crée au debut [ ]
Planning: Start: 29/ 06/ 1999. End: 2/ 07/ 1999. Estimation du travail: 4 jours. Avancement: 70%.
A faire:
  • interroger Dao et Sylvere, et trouver des exemples sur le web
Infos diverses:moment ou je peux enfin voir si j'ai tout bien compris...
Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

OK

WP Rediger le rapport [ ]
Planning: Start: 3/ 07/ 1999. End: 4/ 07/ 1999. Estimation du travail: 01 jours. Avancement: 70%.
A faire:

profiter que c'est encore frais dans ma tete pour faire le rapport d'un coup !

Infos diverses:y aura aussi la liste des bugs, a faire
Commentaires de l'enseignant et répliques

Enseignant:
07/ 06/ 1999

OK

Ceci dit il suffit de remplir les champs "after-thoughts" dans de cette page

Etudiant:
14/ 06/ 1999

Alors ce sera certainement encore plus rapide que prévu !


Enseignant:
07/ 06/ 1999

Un projet ambitieux !

... bonne chance :)

Récits (stories)

recherche d'information dans les cubes

L'utilisateur se deplace dans des boyaux, qui parfois se rejoignent dans des grosses piece (des cubes de connaissances, reconnaissables à leur couleur qui correspondent chacune à un thème). Le plan vu de l'extérieur lui permet de s'orienter assez facilement entre les pièces.

Lorsqu'il est entré dans le cube qui concerne le thème qui l'intéresse, il peut ouvrir des exemples on-line, en cherchant la ressource qu'il veut sur les murs. Lorsqu'il l'a trouvé, un clic suffit pour ouvrir l'exemple dans une nouvelle fenêtre. De la même manière, il peut avoir accès à un certains nombres d'outils et de tutoriels sur le thème. S'il ne trouve toujours pas l'information, les autres utilisateurs qui se trouvent dans la même pièce, planchant sur le même sujet que lui, peuvent peut-être l'aider. Dans ce cas, il n'a qu'a les contacter via la fenêtre de chat...

Enfin, si son problème est vraiment insoluble, ou s'il n'y a personne d'autres dans la pièce où il se trouve, il a toujours la possibilité de "monter d'un étage", pour interroger ceux qui s'y trouvent, certainement plus experts que lui (à condition évidemment de ne pas se trouver déjà au dernier étage, évidemment !)


Enseignant:
07/ 06/ 1999

Ca ressemble trop à une spécification

J'aimerai voir des vrais récits avec acteurs et scénario

liens utilisables dans la bulle

ajout d'un "tips"

Par exmple, si quelqu'un à l'impression de répondre toujours à la même question aux autres utilisateurs, il peut en conclure que 1) l'information est utile, et que 2) elle n'est pas évidente à trouver. Il a alors la possibilité d'afficher la réponse sur le tableau, afin de permettre à tous les utilisateurs d'en disposer de façon permanente...

Commentaire de l'enseignant sur l'ensemble des récits


Enseignant:
07/ 06/ 1999

+/- ok

... mais comment déjà mentionné, il manque le côté "récit" au sens propre du terme ....

Etudiant:
14/ 06/ 1999

j'y travaille, j'y travaille...

Choses promises (deliverables)

Itemun espace 3D multi-utilisateur dédié à différents langages utilisés sur le web
Précisions:

c'est la base, donc cela forcément partie du produit fini... Cela sous-entends donc que les gens peuvent se voir et communiquer en temps réel. Le nombre de cubes sera probablement réduit à 8.

ItemUn endroit où les utilisateurs pourront déposer de l'info de manière permanente (et visible par les autres)
Précisions:

que ce soit à l'intérieur du monde VRML (dans le meilleur des cas) ou dans une frame listant ce qui a déjà été déposé (dans le pire...).

ItemUn monde hiérarchisé dans lequel il est facile de trouver une information, sans avoir besoin d'être un pro de VRML
Précisions:

Vu les difficultés qu'ont les gens (en général) à naviguer dans un environnement 3D avec une console, il vaut mieux essayer de leur simplifier ce travail. Libre à eux d'en apprendre plus dans le cube d'entrée (justement dédié à VRML) s'ils le souhaitent.

ItemPour les autres choses: hin-châ-la!
Précisions:

Du point de vue de la qualité et de la quantité des liens, on verra ce qui arrivera (en fonction des solutions que j'ai trouvé aux autres problèmes) !

Problèmes avec la spécification


Problème: open
Mod: 7/ 06/ 1999
Comment rajouter un "tips" sur une paroi que les autres puissent voir ensuite ????
Précisions:

que ce soit pour rajouter du texte sur le mur et le rendre visible, soit pour le fait de le rajouter "tout de suite" (c'est-a-dire sans reload), je ne vois d'avance que des problemes...

Solution:
  • idee 1: generer le fichier VRML par PHP, afin de pouvoir faire du proto string (texte que l'utilisateur rentre) une variable. Ainsi l'utilisateur entrerait son texte, celui-ci serait stocke (et ajoute aux autre) dans un fichier externe par PHP, puis renvoye a l'interieur de la string de la paroi - inconvenien: le nouveau tips ne s'affichera que pour les utilisateurs suivants ou en faisant un reload
  • idee 2: il semblerait qu'il y ait moyen d'afficher directement le nouveau tips sur la paroi de la bulle, mais j'ai rien compris du tout a l'explication...
  • idee 3: supplier a genous Dao et Sylvere de m'aider... ca peut marcher ;-)
  • idee 4: si vraiment c'est la panique et que je n'arrive pas a afficher ces "tips" dans le monde VRML, les faire s'afficher grace à un lien dans une frame... Mais si vraiment je craque...
Auto Critique:

Résultat: il s'affichent dans la frame de gauche gràce à PHP... j'ai laissé tomber l'idée de les afficher dans VRML (voir pourquoi dans les résutats)


Enseignant:
07/ 06/ 1999

Il faut avoir un stratégie à but variable

Si tu arrives déjà à faire un truc qui permet aux gens de rajouter des objets dans la scene de façon volatile (avec l'EAI) ou encore une solution via HTML-frame que l'on voit lors de la prochaine fois ce serait un bon début ....

Problème: open
Mod: 7/ 06/ 1999
Faire des tuyaux courbes, et obliger l'utilisateur a passer dedans...
Précisions:

Je pensais au depart qu'il y avait moyen de faire des tuyaux dont les parois sont "intraversables", mais les ViewPoints ont l'outrecuidance de traverser meme ou c'est interdit, donc je suis tres embettee...Aparament, c'est pas une mince affaire... il faudrait d'apres Dao, que j'utilise MySQL pour predefinir tous les trajets, et apprendre MySQL en meme temps qu'a me servir de DeepMatrix, ca va rajouter 10 jours sur mon planning ! Bref: je veux bien, mais alors je fais ca pendant l'ete !

Solution:
  • Faire des tuyaux tout droits, et obliger l'utilisateur et naviguer grace aux ViewPoints.
Auto Critique:

OK, c'est ce que j'ai finalement fait !


Problème: open
Mod: 7/ 06/ 1999
Faire de ce monde un monde MULTI-UTLISATEURS
Précisions:

Je crois que le titre espose bien le probleme...

Solution:

me plonger dans DeepMatrix, et prier pour que j'y comprenne quelque chose...

Auto Critique:

Finalement, à part un petit problème (qui a pris une journee) de nom de fichier, ce n'était pas le plus compliqué !!!


Enseignant:
14/ 06/ 1999

Pas de panique

Il s'agit ici d'un problème moins difficile que le reste (modificiation permanente d'une scène)

Problème: open
Mod: 14/ 06/ 1999
NEW: problème de mixage Frames/VRML
Précisions:

J'essaie de faire en sorte que lorsque on arrive dans un cube (c-a-d à des coordonnées TRES précises), cela fasse changer la page HTML qui se trouve dans la frame de gauche. Mais je ne trouve pas moyen de faire ça.

Solution:

Je peux éventuellement faire un objet transparent avec un "Anchor" dessus à l'endroit où je veux que cela fasse changer la frange de gauche, mais comment faire pour que cela la fasse changer sans cliquer ?


Problème: open
Mod: 14/ 06/ 1999
NEW: problème de mixage Frames/VRML 2 (Zeu Come-Back)
Précisions:

Comment faire pour que lorsqu'on clique sur un lien dans la frame de gauche (HTML), cela fasse changer de ViewPoint dans la scène VRML qui est à côté ? (sans recharger, bien sûr !). Ca doit bien être faisable, non ???

Solution:

Je vois pas... il n'y a que dans l'autre sens (de VRML vers la frame HTML) que j'y arrive... grmmbl !

Les commentaires de l'enseignant sur la spécification


Enseignant:
07/ 06/ 1999

Bien comme "draft"

Ceci dit: le projet reste ambitieux il va falloir indiquer dans les deliverables ce que tu pense vraiment pouvoir fornir dans le pire et le meilleurs des cas

Ressources générales

ItemLes pages VRML et DeepMatrix de Tecfa
Précisions:

cela me parait un bon depart:

Auto Critique:

Finallement, je m'en suis assez peu servie (à part pour trouver des liens vers d'autres pages traitant de VRML)

ItemLe campus 3D
Précisions:

cela me parait un bon exemple, et en plus je l'ai sous la main ;-)

Auto Critique:

C'était en effet un bon exemple, mais bien trop compliqué pour que je puisse en tirer quelque chose ;-) Par contre, les pages VRML générées par PHP de Dao m'ont été d'un grand secours (bine que finallement, aucune des pages VRML du travail final n'est générées par PHP)...

3. Résultats

Si je décide de modifier ces "Collaboracubes" cet été, ce sera essentiellement 1. pour trouver une meilleure façon de représenter les liens, et leur position dans la pièce 2. pour rajouter des liens 3. pour trouver une idée un peu originale pour la pièce "détente" qui, pour moment, est complètement vide...

RésultatLe dispositif
Précisions:On peux accéder aux "Collaboracubes" par l'adresse suivante:tecfa.unige.ch/staf/staf-e/delhom/staf18/welcome.html
Résultat1ère impression...
Précisions:

Pour commencer, je tiens à dire que je n'aime pas vraiment beaucoup le résultat de ce projet, avant tout parce que finallement, je crois que sortir d'une interface un peu "Blanche-Neige" pose des problèmes à l'utilisateur moyen. Il est en effet très difficile de trouver des moyens abstraits de représenter des connaissances (comme des liens vers des tutoriels ou vers des exemples), et je pense qu'à l'arrivée, le monde perd toute sa convivialité...

Auto Critique:

En partant d'une interface plus proche du monde réel, je me serais certainement heurtée à beaucoup moins de "petits" problèmes de navigation, et je pense qu'on ressentirait moins l'impression d'être étouffé par le monde...

RésultatCe qui est finalement sur le réseau
Précisions:

La version que j'ai finalement gardée est une version dans la quelle la 3D n'apporte pas grand chose, puisqu'elle fait pratiquement double emploi avec les pages HTML qui se trouvent dans la frame de gauche. Son seul avantage est le fait qu'elle soit multi-utilisateur, et qu'elle donne donc accès à une fenêtre de chat graâce à laquelle les utilisateurs du monde peuvent communiquer entres eux. Les pièces contiennent des liens vers des tutoriels, des liens vers des exemples, et une possibilité d'ajouter des "tips". Le fait de cliquer sur les portes des cubes permet de naviguer facilement d'un lieu à l'autre.

Auto Critique:

Pour que cet environnement 3D ne fasse pas complètemtent double-emploi avec la partie HTML, il aurait fallut que je trouve un moyen vraiment clair de représenter abstraitement les différents liens. Malheureusement, après divers tentatives (en codant par forme, ou par couleurs), je n'ai pas trouvé quelque chose qui aurait été clair pour les utilisateurs...

RésultatA propos des "tips"
Précisions:

L'enregistrement des tips se fait finalement uniquement dans la partie PHP qui se trouve dans la frame de gauche. L'utilisateur peut cliquer sur un bouton dans VRML qui charge dans l'autre frame le formulaire d'ajout de tips. Après avoir rentré son tip, celui-ci est enregistré dans un fichier data, puis "recraché" dans un tableau PHP qui liste tous les tips déjà déposés.

Auto Critique:

J'avais finalement réussi à trouver comment faire afficher mes tips dans VRML à l'aide de PHP: puisque tous les tips étaient de toutes les façons enregistré sous forme de variable dans PHP, et que les protos VRML étaient facilement regénérable par PHP (avec des simples écho), il était en fait assez facile d'afficher un tableau dans la pièce. Mais je me suis alors heurtée à un autre problème bien plus ennuyeux -> celui du positionnement de ces objets dans la pièce. Car si le premier était facile à afficher, en employant cette méthode, tous les autres tips seraient venus se superposer sur le premier... Il fallait donc trouver un moyen de lui dire qu'à partir du 2ème tableau, il fallait changer la position de 0 sur les x, 30 sur les y et 0 sur les z (par rapport à la position précédente), et, bien sûr, qu'une fois en haut du mur, il redescende, se décale de 50 sur les x et recommence à monter de 30 sur les y à chaque nouveau tip... J'ai renoncé.

RésultatLa navigation dans les Collaboracubes
Précisions:

Comme prévu, j'ai bloqué la navigation entre les cubes sur les ViewPoints, c'est-à-dire qu'on ne peut se déplacer qu'en cliquant sur les portes (on ne peut pas traverser celles-ci par déplacement normal). En outre, la navigation reste quand même très fluide, dans la mesure où j'ai essayé de réduire au maximum le nombre de faces de tous les objets dans VRML.

Résultat2 versions...
Précisions:

J'ai du faire finallement 2 versions: une mono-utilisateur, et une multi-utilisateurs, car certaines personnes (comme moi à la maison) n'arrivent pas forcément à trouver du premier coup la bonne version de java à mettre dans Netscape !!! Et puis, c'est quand même plus pratique pour reloader, quand on fait des modifications

Auto Critique:

En plus, ça peut toujours servir à ceux qui ne veulent que "faire un saut" dans le monde pour voir à quoi il ressemble...

4. Les commentaires de l'enseignant sur l'ensemble


Enseignant:
07/ 06/ 1999

Evaluation:

Travail bien réussi

Un des buts de STAF-18 était de d'apprendre à gérer un projet. Même si le projet était trop amibieux et que les résultats ne correspondent pas à tes souhaits, tu as bien compris les principes et fait une première maquette d'une librarie virtuelle multi-utilisateurs en 3D. Pour faire qc de mieux il faudra (au moins) quelques mois :)

En restant dans le cadre de ce que tu as réussi de faire: A mon avis l'aspect navigation/représentation VRML peut être amélioré.

Note =


Enseignant:
12/ 07/ 1999

Les remarques de Sylvère - Projet 11 - Construction: VRML - Deep Matrix

L'analyse de faisabilité, les spécifications, le projet et le rapport sont présents.

Le travail effectué correspond aux spécifications préalables.

A part quelques problèmes pour la construction d'un récit, le travail collaboratif réalisé avec l'enseignant (Daniel) sur le suivi de projet a apparemment aidé à une convergence rapide entre les spécifications et le produit fini. Même si, comme tu le note, la fonctionnalité de l'outil que tu as produit est discutable, tu as parfaitement réalisée ton projet… en respectant tes spécifications.