Accéder au contenu principal

Etudiant acteur de son apprentissage

Le cours de génie logiciel que je donne se déroule classiquement sous formes de présentations et discussions sur la base des slides et une bonne partie est réservée aux étudiants à travers la préparation des ateliers que je leur donne. Le cours génie logiciel étant un cours qui est beaucoup plus introductif touche à un certain nombre de disciplines (gestion projet, gestion des versions, qualité, test, gestion documentation, gestion des bogues et autre), d'où l'idée de proposer des ateliers pratiques qui couvrent pratiquement tous les domaines du génie logiciel dont une partie est citée ci haut. Les ateliers doivent tourner sur la plateforme Linux, distribution Ubuntu et sont tous considérés comme logiciels libres, en vue d'encourager et de supporter cette catégorie de logiciels. Dans l'affiche cette année, j'ai proposé les ateliers suivants : Robodoc, Docbook (gestion documentation), Macao (modélisation), Ganttproject, Dotproject (gestion projet), Bugzilla (gestion bogues), Cocomo et metrics (mesures des logiciels), SonarQube (qualité code), Junit, Jmeter (test logiciel), CVS, SVN et GIT (gestion des versions). Les étudiants, répartis en binôme, ont l'obligation de préparer les ateliers selon le scénario suivant :

  1. Faire une Présentation orale en utilisant les slides qui dure environ 10 minutes
  2. Animer le TP pendant à peu près 40 minutes
La présentation doit expliquer l'intérêt de l'outil et le situer par rapport au contexte du génie logiciel, tandis que dans le TP on met l'accent sur la démarche d'installation (sous Linux) et puis éventuellement un petit projet est préparé pour le conduire avec la classe, le groupe chargé du TP va assurer tout seul l'animation de la séance du TP. 

Les ateliers sont données dans une perspective d'engager les étudiants par rapport à leurs apprentissage, leur montrer que franchir des sujets difficiles n'est pas impossible, que travailler sur de nouveaux environnements est une chose agréable surtout pour de jeunes informaticiens, que développer l'habileté de travailler en équipe est indispensable et qu'entamer une culture de partage avec la communauté s'impose.

Cette démarche basée sur l'appropriation des ateliers par les étudiants a toujours donné satisfaction  , d'autant plus que les étudiants deviennent acteurs de leurs apprentissages et développent par l'occasion d'autres habiletés qu'on peut associer aux habiletés du 21ème siècle tels que la communication, la collaboration et la pensée critique.

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…