Accéder au contenu principal

Le génie logiciel assisté par AngryBirds

Le cours : génie logiciel


Le génie logiciel est le cours préféré parmi mes cours. Il traite de la problématique du logiciel et des modèles de processus logiciels. D'autre part, il présente une coloration artistique et nécessite une intervention pédagogique adaptée. Parmi les actes pédagogiques innovants à quoi on peut penser, je cite l'apprentissage à base de jeu (Game Based Learning), la Gamification, les classes inversées (Flipped Cassroom), les classes BYOD (Bring Your Own Device) et les Jeux Sérieux. J'ai pensé alors à puiser dans ces approches pour essayer de tirer le meilleur avec comme objectif principal de véhiculer le contenu du génie logiciel avec une technologie appropriée et une pédagogie adaptée pour captiver l'extrême attention des étudiants.

Travail collaboratif


La démarche pédagogique


Le jeu de manière générale reste toujours un outil d'attraction. Les étudiants aussi sont très actifs lorsqu'il s'agit de jouer. Introduire alors le jeu en classe ouvre la voie à un apprentissage fluide où les apprenants ne compteront plus le temps passé en classe. Plusieurs possibilités sont offertes quant à la manière d'investir le jeu en classe. En effet, certains adoptent les jeux sérieux comme stratégie d'apprentissage, d'autres utilisent la gamification. Personnellement, pour le cours du génie logiciel, j'ai opté pour une autre démarche qui se situe entre le jeu sérieux et l'apprentissage à base de jeu. J'ai découpé mon scénario pédagogique en trois étapes, à savoir : compétences, problème de dépassement de temps et réalisation. Chacune de ces étapes comprend quatre activités : jeu, mise en situation, feedback et analyse. La partie de mon cours que je vais aborder, dont le matériel est déjà distribué,  consiste à savoir les différentes compétences requises dans le génie logiciel, analyser l'origine du problème de dépassement de temps et inciter les étudiants à pousser la réflexion quant aux différentes questions liées à la réalisation d'un nouveau produit logiciel.

Première étape : Compétences 


Le jeu AngryBirds

Dans cette étape, les étudiants vont se répartir en des groupes de quatre personnes. Ils vont ensuite exploiter leur téléphones ou ordinateurs portables pour jouer au jeu mobile AngryBirds. Le choix du jeu n'est pas arbitraire. En effet, AngryBirds est un jeu mobile très populaire et l'utiliser en classe va rendre les étudiants plus motivés. En jouant, chaque groupe est censé identifier les différents profils et compétences requises pour élaborer ce type de jeu.

Mise en situation

A la fin de cette première étape, nous avons effectué une séance de brainstorming afin de relever les différentes propositions, les filtrer et les classer par après. Une discussion a eu lieu pour expliciter chaque compétence et montrer son intérêt par rapport au cycle du développement.

Feedback

Deuxième étape : Problème de dépassement de temps

Lors de cette étape, les différents groupes ont commencé à jouer AngryBirds dans une perspective de l'analyser et de le reproduire. Après, le manager les avise comme quoi le projet de réalisation enregistre un retard et leur demande ainsi de réaliser un dossier dans lequel ils doivent mentionner tous les problèmes potentiels ayant induit le retard. Les différentes propositions, affichées au tableau, ont fait l'objet de discussions. A ce niveau, et par rapport à l'ingénierie logicielle, les choix ont portés sur des problèmes d'ordre général tel que les conflits entre équipes, insuffisance du budget, etc. Il fallait encore pousser la réflexion pour cibler les problèmes spécifiques au jeu AngryBirds.

Analyse

Troisième étape : Mise en oeuvre

Dans cette étape, les différents groupes sont maintenant invités à réaliser le jeu AngryBirds. Pour ce faire, ils doivent poser toutes les questions possibles au porteur du projet. Cette activité va permettre aux étudiants d'appréhender la phase de communication avec le client et d'en tirer profit. Les différentes questions sont affichées sur le tableau et ont fait l'objet de discussions et épurations.

Restitution

Conclusion


Animer le cours génie logiciel en plaçant au centre de l'activité pédagogique le jeu AngryBirds ne peut que renforcer l'apprentissage et pousser la motivation à l'extrême. La séance a été très appréciée par les étudiants. Le challenge devient important, l'aspiration des étudiants quant à la suite des événements pédagogiques est maintenant au top.

Posts les plus consultés de ce blog

Les cartes CRC pour l'analyse des classes UML

Les cartes CRC Un système Orienté Objet (OO), est un système constitué par un ensemble d'objets qui collaborent et communiquent par envoi de messages. Lorsqu'un objet envoie un message à un autre objet, c'est que en réalité il demande un service à cet objet, ce dernier doit rendre son service public et faire en sorte de l'offrir à ses collaborateurs. Plusieurs services sont définis et offerts par le système OO.
La collaboration s'avère alors comme un principe fondamental des systèmes OO. UML, étant un langage de modélisation des systèmes OO, offre un outil qui permet la modélisation de la Collaboration. Cet outil portant le nom de Collaboration est représenté pare une ellipse en pointillées.

Lors de l'Analyse d'un Système d'Information, il est important de relever toutes les entités "Classes" potentielles dans un premier temps. On peut dans ce cas utiliser une heuristique très simple qui consiste à identifier les noms communs (Classes) ou les…

Atelier JSF Facelets et Internationalisation I18n

Introduction
Dans cet atelier nous allons aborder deux thèmes importants du Framework JSF qui sont la technologie des Facelets et celle de l'Internationalisation connu par I18n (entre le caractère 'I' et le caractère 'n' on trouve 18 caractères). Il faut savoir que JSF au niveau de la version 1 utilisait JSP comme technologie de présentation, il se trouve que JSP et JSF ont deux cycles de vie différents, c'est pourquoi on a pensé à produire une nouvelle technologie de présentation qui soit totalement compatible avec JSF, il s'agit bien de la technologie des Facelets et ce depuis la version 2.0. L'internationalisation quant à elle s'avère être très importante aussi surtout lorsque l'objectif d'une application web est de prévoir plusieurs langues différentes pour la clientèle. L'idée est de ne pas produire une page par langue, mais plutôt traiter la chose de manière intelligente, c'est-à-dire le même contenu mais avec des affichages de…

Scope d'un projet

Comment définir le Scope d'un projet Le Scope ou Périmètre d'un projet est un point clé pour la réussite du dit projet. Il doit figurer parmi les éléments d'un document cahier des charges et partagé avec le Manager du projet, le Client ainsi que les parties prenantes.

Pour bien définir le Scope d’un projet, il est opportun de définir les points suivants :

Les objectifs du projetLes buts ou finalités (goals) à atteindreLes sous-phases ou étapesLes tâchesLes ressourcesLe budgetLa planning
Bien sûr pour pouvoir ce faire, il est nécessaire d'élaborer une étude approfondie de la finalité du projet en concertation avec d’une part le client et d’autre part avec les parties-prenantes. Une fois ces points sont détaillés, il y a lieu après de clarifier les limitations du projet à savoir les points à inclure dans le projet et ceux à ne pas inclure.
Il est à rappeler également que les objectifs du projet doivent respecter les critères SMART.