RAPPORT

Objectifs personnels et aspects conceptuels :

Pour cet exercice PHP du staf.14, je me suis donné pour but de tenter de coller au maximum aux exigences et contraintes imposées. Je me suis efforcer de mettre en œuvre les méthodes les plus simple et efficaces possibles pour développer un quiz ludique permettant aux gens de tester leur culture cinématographique. J'ai voulu avant tout fournir un feedback assez riche car le but implicite du quiz est de permettre aux testeurs d'en connaître un peu plus sur le cinéma. Dans ce même souci de rendre le feedback assez riche, j'ai contrebalancé le nombre de question de façon à en avoir autant sur le cinéma français que sur le cinéma américain pour permettre aux sujets de savoir dans quel domaine ils excellent le plus.

Mon but premier étant comme à l'habitude de ma familiarisé au maximum avec les technologies à mettre en pratique pour la résolution de l'exercice, j'ai donc fait en sorte de faire le tour de toutes les options à ma portée. J'ai aussi voulu créer un design qui soit ergonomique et esthétique, sans rien perdre de sa sobriété. Pour finir je préciserais ici que j'ai avant tout mis le contenu au service de la forme. Ce qui m'a semblé important n'était pas le choix du sujet pour le questionnaire mais la manière de le construire et le rendre efficace, ludique.

Avant de commencer le développement de mon quiz, j'ai pris le temps de choisir un sujet qui me permettrait de me focaliser avant tout sur la forme et pas trop sur le contenu. Etant un passionné de Cinéma, je me suis dit que le développement d'un questionnaire sur le Cinéma me permettrait d'arriver à mes fins dans les meilleures conditions. Je me suis donc mis en tête de développer un questionnaire sur papier. J'ai élaboré 20 questions de difficulté variable donc 10 portaient sur le cinéma français et 10 sur le cinéma américain. J'ai aussi tenté de mélanger des questions sur des vieux classiques autant que sur les nouvelles productions. Par la suite, suites aux contraintes temporelles et la richesse des feedbacks que j'ai choisi, j'ai décidé de m'abstenir à 16 questions.

Une fois les questions trouvées, je me suis attelé à la tâche de la construction des réponses possibles, ainsi que les feedbacks associés. Pour l'élaboration des réponses et des questions, je me suis basé sur les conseils prodigué par le prof. Dillembourg dans son polycopié du staf 12 [1]. Malgré les recommandations, j'ai tout de même utilisé des questions a formulations négatives mais j'ai pris soins de les mettre en évidence en les soulignant. J'ai aussi fait en sorte d'avoir un nombre de réponses possibles suffisamment élevées pour éviter l'occurrence de réponses hasardeuses justes. 4 réponses par question m'a semblé pertinent comme nombre. Pour ce qui est du nombres de réponses possible dans les questions du types " check box ", j'ai fait en sorte de ne jamais indiqué le nombre de réponses possibles. De plus j'ai fait en sorte d'enlever un point si une fausse réponse est cochée de manière à dissuader les utilisateurs de répondre quand ils ne savent pas. J'ai aussi porté une attention particulière à ne pas faire en sorte que la réponse correcte soi toujours positionnée même endroit dans les questions successives. Les distracteurs ont été choisi de façon pertinente pour éviter que des réponses possibles soient écartées facilement car elles étaient trop évidentes. Pour les questions à entrée texte qui étaient particulièrement difficile, pour éviter que les sujets n'entre des réponses trop fantaisistes, j'ai prévu la taille des zones de réponses en conséquence. Par exemple pour les questions demandant d'entrer une date, j'ai prévu 19 devant le chiffre de façon à ce que les utilisateurs n'aient plus qu'à entrer les 2 chiffres qui restent.

Aspects techniques :

J'ai utilisé un formulaire HTML pour l'élaboration du questionnaire et un script PHP pour la résolution et la génération d'une page de feedbacks en html. J'ai aussi fait en sorte d'exploiter tous les types d'éléments d'un fonctionnaire. Comme vu plus haut, le questionnaire se compose de 16 questions avec 4 questions avec réponses en menu déroulant, 4 questions types " radio ", 4 questions du type " check box " à réponses multiples et 4 questions à réponses " entrée de texte ". En ce qui concerne le design, j'ai prévu une feuille de style CSS. N'aimant pas toujours les fonds en couleur unie, j'ai décidé de mettre un petit fichier .GIF bicolore et strié qui donne un effet de texture intéressant au background. J'ai aussi fait en sorte à ce que les couleurs de texte et celle du fond soient les plus contrastées possibles.

En ce qui concerne le script, j'ai opté pour une simple incrémentation de variables au fur et à mesure des réponses. Ce qui selon moi est une solution intéressante pour éviter de devoir déclaré un trop grand nombre de variables inutiles. Il y a donc 2 variables, une pour les questions sur le cinéma français et une pour les questions sur le cinéma américain, qui s'incrémentent ou pas selon la réponse du sujet. Pour avoir le score final, il ne suffit plus que d'additionner les 2 scores. Pour ce qui est du feedback sur les préférences en matière de type de cinéma, il suffit de comparer les 2 variables et donner un feedback en conséquence.

Conclusions :

Je suis dans l'ensemble assez satisfait du travail malgré quelques détails que j'aurais aimé changer mais que je n'ai pu faire faute de temps. Les principales critiques que je me fais sont au niveau de l'élégance du code. Pour plusieurs détails, j'aurais pu choisir une solution plus élégante. Par exemple pour ce qui est de l'affichage des réponses des sujets pour les questions comportant plusieurs choix possible. Comme indiqué dans le polycopié, il existe des solutions d'incrémentation pour pouvoir le faire. J'ai opté pour une solution qui consiste à vérifier à chaque fois si le sujet à cliqué sur une case ou pas. Avant tout cela me facilitait le travail pour l'affichage du feedback car je voulais que le sujet sache lesquelles de ses réponses sont fausses et lesquelles justes sans avoir à lire le feedback textuel.

Je n'ai pas rencontré de difficultés particulières pour la résolution de cet exercice. J'avais déjà une petite expérience en programmation Pascal et un peu de C. Je relève tout de même un petit problème que j'ai eu par rapport aux questions à plusieurs réponses possibles. Lors des tests pour donner le feedback adéquat selon si le sujet a tout réussi ou non, j'ai remarqué que si le sujet avait fait tout juste, le programme ne donnait pourtant qu'un feedback modéré. Je pense que cela est du au fait que le script n'effectuait pas la dernière incrémentation mais je ne saurais dire pourquoi.

références :

copyright TECFA, Mirweis SANGIN, 03.03.03