This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
2019_2020:lp:dam:start [2019/12/04 19:12] blay [Sujet de projet] |
2019_2020:lp:dam:start [2019/12/05 11:41] blay [Propriétés attendues du logiciel] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Sujet de projet ====== | + | ====== Quizz adaptés en fonction du handicap ====== |
- | Projet basé sur les travaux du projet CHAMPLAIN entre l'UCA | + | Projet basé sur les travaux du projet CHAMPLAIN entre l’Université Nice - Sophia Antipolis (UNS) et l’Université du Québec à Montréal (UQAM), en visant plus particulièrement le développement d’applications logicielles en support à la population vieillissante. |
+ | |||
+ | |||
+ | |||
+ | ===== Mise en contexte extraite du projet ===== | ||
+ | Le génie logiciel est un sous-domaine de l’informatique, qui a pour vocation d’étudier la construction de logiciels, en analysant les bonnes pratiques des développeurs de logiciels. Il est ainsi crucial de former aux bonnes pratiques de développement la relève à venir, considérant la place prépondérante des logiciels dans la vie de tous les jours, tout particulièrement au sein de la population vieillissante où le manque de logiciels adaptés est criant... Ici, la prise en compte de l’utilisateur ainsi que l’adaptation des logiciels à leur contexte d’exécution (p. ex, patient, soignant, aidant) sont cruciales et mobilisent des compétences de plusieurs sous-domaines de l’informatique. l’UNS a par exemple déjà collaboré avec des acteurs socio-économiques dans le cadre du projet STM3, visant à l’adaptation des logiciels de maintenance et de réglage d’implants cochléaires. | ||
+ | ... Mais pour prendre en compte un utilisateur tel qu’une personne atteinte de la maladie d'Alzheimer, il est nécessaire d’utiliser des compétences spécifiques d’ergonomie (basée sur des capacités de mémoire à court terme disparaissantes et à long terme amplifiées) pour le développement de ces applications. De même, il est nécessaire d’intégrer à ce développement une prise en compte des soignants, de la famille du patient, en plus du patient lui-même. En considérant le seul problème de la maladie d’Alzheimer (parmi les autres problèmes cognitifs reconnus dans le cadre d’une population vieillissante), la société Alzheimer Canada recense 564,000 patients diagnostiqués en 2018 et anticipe un doublement de cette population d’ici 15 ans. | ||
+ | Il n’existe pas à notre connaissance de programme de formation en informatique (au 1er et 2ème cycle) qui prennent en compte comme une préoccupation de première importance ce type de population. Nous défendons qu’il est nécessaire de sensibiliser les étudiants (aux trois cycles) à la prise en compte du vieillissement de la population, par la définition de modules de cours réutilisables qui pourront être utilisés au sein de l’UNS, de l’UQAM, mais aussi d’autres établissements universitaires. Cette proposition de projet s’appuie sur les expertises de recherche et d’enseignement des professeurs de l’UQAM en intelligence artificielle et en systèmes logiciels, couplé à l’expertise en enseignement de la prise en compte du handicap (visuel et cognitif) développée depuis 15 ans au sein d’UNS. | ||
- | SLACK | ||
- | Personnes impliquées sur ce sujet : | + | ===== Sujet du projet pour les LP DAM et IOTIA ===== |
- | - AM | + | //Ce sujet est inspiré d'un TD préparé par AM Pinna-Dery (Polytech) et S. Mosser (UQAM)// |
- | - SM | + | |
+ | <note>Les meilleurs projets pourront peut-être être présentés lors de journées Polytech en juin.</note> | ||
- | D'un point de vue ''Joueur'', | + | Votre objectif est de définir un jeu sur le web qui permet de créer et de jouer à des quizz. |
- | * il peut préciser son handicap; | + | Certains joueurs sont handicapés. Des aidants ont alors la responsabilité d'adapter l'outil. Voici nos attentes.\\ |
- | * il veut pouvoir répondre à des questions et avoir la réponse; | + | |
- | * il peut avoir de l'aide. | + | |
- | D'un point de vue ''Aidant'', | + | |
- | * il peut ajouter des questions à un quizz, | + | |
- | * il peut modifier le profil d'un joueur, | + | |
- | * il peut inscrire un joueur. | + | |
- | Exemples de handicaps : | + | Un Joueur doit pouvoir répondre à des questions et avoir la réponse (par exemple "bravo" ou bien "non, voici la réponse") et il peut obtenir des explications sur une question. \\ |
+ | Un Aidant peut créer des quizz, créer des questions et éventuellement les ajouter à un quizz, ajouter des questions à un quizz, inscrire un joueur ce qui impose de modifier le profil d'un joueur, modifier le profil d'un joueur. Il peut ajouter des questions basées sur des images, des extraits de musiques ou sur des questions textuelles. | ||
+ | |||
+ | Voici des exemples de handicaps : | ||
- Les problèmes de vision : DMLA maladie évolutive qui impacte la vue | - Les problèmes de vision : DMLA maladie évolutive qui impacte la vue | ||
- Les problèmes de mémoire qui peuvent être évolutifs (cas de la maladie d’Alzheimer) | - Les problèmes de mémoire qui peuvent être évolutifs (cas de la maladie d’Alzheimer) | ||
- Les problèmes moteurs : tremblements – précisions (cas de la maladie de Parkinson) | - Les problèmes moteurs : tremblements – précisions (cas de la maladie de Parkinson) | ||
- | + | Le système doit être adapté au handicap du joueur, **par exemple,** | |
- | + | ||
- | Le système est adapté à son handicap, par exemple, | + | |
* en cas de handicap visuel fort, | * en cas de handicap visuel fort, | ||
- | * ne pas poser de questions sur le contenu d'une image, | + | * ne pas poser de questions sur le contenu d'une image; |
* si DMLA, | * si DMLA, | ||
* augmenter la fonte | * augmenter la fonte | ||
* augmenter le contraste | * augmenter le contraste | ||
* augmenter la zone de saisie | * augmenter la zone de saisie | ||
- | * ne pas proposer de raisonner sur une image trop grande | + | * ne pas proposer de raisonner sur une image trop grande; |
- | * en cas de perte de mémoire, | + | * si Alzheimer |
- | * le système supprime des possibilités de réponses au quiz, si le joueur se trompe; | + | * supprimer des possibilités de réponses au quiz, si le joueur se trompe, |
- | * le système autorise plusieurs fois la même question mais alors en la simplifiant; | + | * autoriser plusieurs fois la même question mais alors en la simplifiant, |
- | * ajouter des explications | + | * ajouter des explications; |
+ | * sélectionner des musiques qui correspondent à un temps plus lointain (forte capacité de la musique pour se remémorer des émotions) | ||
* en cas de problèmes d'attention | * en cas de problèmes d'attention | ||
- | * le système ne propose que des questions dans le centre d'intérêt du patient. | + | * ne proposer que des questions dans le centre d'intérêt du patient. |
- | * Vous pouvez ajouter d'autres formes de handicaps et donc de règles en fonction de vos connaissances. | + | * Vous pouvez ajouter d'autres formes de handicaps et donc de règles en fonction de vos connaissances. |
Line 46: | Line 47: | ||
chaque groupe choisit un unique type de handicap pour lequel il proposera une implémentation du système. | chaque groupe choisit un unique type de handicap pour lequel il proposera une implémentation du système. | ||
+ | **Exemple de scénarios :**\\ | ||
+ | Mathieu, soignant dans un EPHAD, demande à créer une question basée sur une image. Il charge l'image, saisit le question : "Combien voyez-vous d'enfants sur cette image?", il saisit les réponses possibles : 1-false, puis 2-true, puis 3-false, puis 4-false. | ||
+ | Le système vérifie qu'une seule réponse est vraie. | ||
+ | Le système demande à Mathieu s'il doit enregistrer la question dans la base commune ou l'associer à un quizz spécifique. | ||
+ | Mathieu choisit de l'enregistrer dans la base commune. Il l'intitule : "Enfants montant dans un bus". | ||
+ | Le système enregistre sa question. | ||
- | Dans la version V0, à rendre pour le WW : | + | Bob, joueur atteint de DMLA, demande à jouer. Le système crée automatiquement un quizz composée de 4 questions prises dans la base commune qui sont adaptées à son profil, et lui propose de jouer. |
- | - un Aidant peut saisir une question de quizz. | + | |
- | - Une question de quizz est composée d'une question (e.g. "quel est ce monument?"), d'un élément additionnel éventuel (e.g. une image de la tour Eiffel), et de réponses avec leur validité (e.g. ("Tour Eiffel", true), ("Elysée", false) ) . | + | |
- | - un Joueur peut répondre à une question du quizz en sélectionnant une réponse. Le système lui dit s'il a bien répondu ou non. | + | |
- | Dans la version V1 : | + | Pour les étudiants plus avancés, le système enregistra les actions du joueur (clicks, réponses, ...) pour pouvoir apprendre et proposer plus tard un profilage et une aide plus avancée probablement basée sur de l'apprentissage automatique. Ce dernier point (apprentissage automatique) n'entre pas dans le cadre de ce projet. |
- | - Chaque groupe précise en semaine WW + 1 semaine qu'elles sont les fonctionnalités qu'il ajoutera et pourquoi. | + | |
- | - Elles doivent être validées par l'enseignant | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | Pour les étudiants plus avancés, le système enregistra les actions du joueur (clicks, réponses, ...) pour pouvoir apprendre et proposer plus tard un profilage et une aide plus avancée probablement basée sur de l'apprentissage automatique. Ce dernier point n'entre pas dans le cadre de ce projet. | + | |
**Limites** | **Limites** | ||
- | * Nous ne prévoyons pas dans cette version du projet les adaptations de l'environnement par le joueur ou l'aidant, si ce n'est dans ce dernier cas en réaction du système au profilage du joueur. Ainsi si l'aidant déclare qu'un patient est atteint de "Presbytie", le système pourra automatiquement utiliser une fonte plus grosse. | + | * Nous ne prévoyons pas dans cette version du projet les adaptations de l'environnement par le joueur ou l'aidant, si ce n'est dans ce dernier cas en réaction du système au profilage du joueur. Ainsi si l'aidant déclare qu'un patient est atteint de "DMLA", le système pourra automatiquement utiliser une fonte plus grosse. |
- | * De tels projets doivent absolument être testés avec de vrais utilisateurs. Nous bénéficions de quelques retours que nous utilisons ici. MAIS, si les étudiants ont les moyens de faire tester leur application par des personnes en situation de handicap alors évidemment qu'ils doivent le faire, même s'ils ne peuvent pas mette à jour leur logiciel, il sera intéressant qu'ils nous fassent aprt de ces retours. Cependant L’utilisateur ne peut pas être trop sollicité (génère du stress et peut entrainer des refus), il convient donc d'avoir une démarche centrée utilisateur avec les Aidant qui peuvent déjà éliminer un grand nombre de pièges. | + | * De tels projets doivent absolument être testés avec de vrais utilisateurs. Nous bénéficions de quelques retours que nous utilisons ici. |
+ | MAIS, si les étudiants ont les moyens de faire tester leur application par des personnes en situation de handicap alors évidemment qu'ils doivent le faire, même s'ils ne peuvent pas mette à jour leur logiciel, il sera intéressant qu'ils nous fassent part de ces retours. | ||
+ | Cependant L’utilisateur ne peut pas être trop sollicité (car cela génère du stress et peut entrainer des refus), il convient donc d'avoir une démarche centrée utilisateur avec les Aidants qui peuvent déjà éliminer un grand nombre de pièges. | ||
- | Les meilleurs projets pourront peut-être être présentés lors de journées Polytech en juin. | ||
+ | ==== Déroulement du projet ==== | ||
+ | Dans la version V0, à rendre pour le WW : | ||
+ | - un Aidant peut saisir une question de quizz. | ||
+ | - Une question de quizz est composée d'une question (e.g. "quel est ce monument?"), d'un élément additionnel éventuel (e.g. une image de la tour Eiffel), et de réponses avec leur validité (e.g. ("Tour Eiffel"- true), ("Elysée" - false) ). | ||
+ | - un Joueur peut répondre à une question du quizz en sélectionnant une réponse. Le système lui dit s'il a bien répondu ou non. | ||
+ | Dans la version V1 : | ||
+ | - Chaque groupe précise en semaine WW + 1 semaine qu'elles sont les fonctionnalités qu'il ajoutera et pourquoi. | ||
+ | - Elles doivent être validées par l'enseignant. | ||
- | Les ordonnateurs ne sont pas des spécialistes du handicap. | + | SLACK |
- | Ils attendent donc de vous de vérifier automatiquement certaines propriétés liées au handicap dans la définition des questions du Quizz. | + | |
- | Une architecture 3 Tiers | ||
- | + | ===== Exigences sur le projet ===== | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ===== Exigences ===== | + | |
* Le projet sera écrit en utilisant les langages java, php, html, ... | * Le projet sera écrit en utilisant les langages java, php, html, ... | ||
* Les tests unitaires sont exigés avec Junit ou phpUnit... | * Les tests unitaires sont exigés avec Junit ou phpUnit... | ||
+ | * Les interactions passent par [[https://join.slack.com/t/depinfoiutnic-voq7258/shared_invite/enQtODYwOTU3ODUwNjQwLTUyMzliODFlNmFiNjA3MzQyOWY1YjVkMjJjY2IxMjlhYjkwZjZiZWY4Y2VhZmRiNzI0Mjg3NzAwNDg4NWJmM2U|Slack DEP-INFO-IUT-NICE-19-20]] sur le canal #lp-gl sur lequel tous les étudiants doivent s'inscrire. | ||
==== Propriétés attendues du logiciel ==== | ==== Propriétés attendues du logiciel ==== | ||
- | * **E-1** Adaptabilité dynamique : quelque soit la variante du logiciel on attend que vous proposiez une adaptation dynamique du logiciel en fonction du handicap (e.g. possibilité de grossir les caractères, modification de la complexité des questions en retirant des réponses fausses par exemple, ...) | + | * **E-1** **Adaptabilité dynamique** : quelque soit la variante du logiciel on attend que vous proposiez une adaptation dynamique du logiciel en fonction du handicap (e.g. choix de la fonte, modification de la complexité des questions en retirant des réponses fausses, ...) |
+ | * **E-2** Handicap comme une exigence première : quelque soit la variante du logiciel on attend que vous preniez en compte le handicap à tous les niveaux par exemple | ||
+ | * métier, e.g.: | ||
+ | * globalement ne pas proposer d'images à un déficient visuel peut impacter la définition des quizz par des aidants, la définition des règles de choix de quizz, de questions, ... | ||
+ | * question relativement à un handicap : e.g. déterminer la complexité d'une question, la visibilité, ... | ||
+ | * Quiz : e.g. manière de poser questions, de les répéter; | ||
+ | * interface : adaptation de l'interface en fonction du handicap | ||
+ | * architecture : | ||
+ | * en cas de handicap lié à la mémoire les temps de réponses ont beaucoup d'importance, il convient donc de prévoir des palliatifs à un réseau faible par des téléchargements par exemple sur le téléphone. | ||
+ | * le stockage des clicks quoique indispensable pour favoriser une amélioration des interfaces pose des question de vie privé, de charge, ... | ||
==== Propriétés attendues du code ==== | ==== Propriétés attendues du code ==== | ||
* **C-1** des tests automatiques liés à l'accessibilité | * **C-1** des tests automatiques liés à l'accessibilité | ||
Line 100: | Line 106: | ||
* Vérifier automatiquement que certaines propriétés par exemple "A toute question mémorisée est associée un niveau", "ne contient pas de mots "compliqués"" (à vous de décider comment vous gérez cette notion) etc. | * Vérifier automatiquement que certaines propriétés par exemple "A toute question mémorisée est associée un niveau", "ne contient pas de mots "compliqués"" (à vous de décider comment vous gérez cette notion) etc. | ||
- | ===== Structuration du dépôt ===== | + | ==== Structuration du dépôt (A déplacer dans le TD...) ==== |
* Un répertoire dédié à la **conception** contenant | * Un répertoire dédié à la **conception** contenant |