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…

Rédaction d'un document Cahier des Charges

Comment rédiger un Cahier des Charges Pour rédiger un document cahier des charges d'un projet logiciel ou autre, nous proposons cette template qui pourrait servir éventuellement comme guide. Il s'agit de définir successivement les points suivants : Contexte et définition du projet, Objectifs, Scope, Parties Prenantes, Description des besoins à répartir entre les besoins fonctionnels et non fonctionnels.
Contexte et définition du problème Dans cette rubrique, vous allez définir le problème pour bien clarifier la finalité du travail.
Il est important de souligner aussi les besoins ainsi que les contraintes et ce de manière
très sommaire. Par exemple, vous pouvez exposer la situation actuelle ou futur de votre
système tout en mettant l’accent sur les problèmes auxquels vous voulez faire face.
Objectifs Après avoir exposé le problème dans la première partie, ici vous allez exprimer quelles
sont les attentes et les résultats escomptés. Normalement ces attentes et résultats
(objectif…

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…