Accéder au contenu principal

Mon cours Introduction au Génie Logiciel

Ce cours intitulé "Introduction au Génie Logiciel" est dispensé aux étudiants inscrits en deuxième année de la filière IWIM de l'ENSIAS. Le cours se déroule sur sept semaines à raison d'une séance de 3 heures par semaine. Les deux premières séances seront assurées totalement par le professeur. Lors de la première séance, des ateliers pratiques seront proposés aux étudiants à réaliser en binôme et qui sont consacrés à différentes thématiques qui relèvent des aspects pratiques du génie logiciel. Chaque atelier consiste à élaborer une présentation ppt de la thématique suivie d'un Tp animé par les étudiants concernés qui revient sur le processus d'installation ou de configuration de la technologie faisant l'objet de l'atelier ainsi qu'un mini projet pour pouvoir pratiquer et toucher aux aspects importants de la dite technologie. Les ateliers commencent à partir de la troisième séance du cours, toujours après la pause et peuvent s'étaler sur le reste de la séance en fonction de l'importance et la complexité de l'atelier.

Pour ce qui est du cours, nous allons voir essentiellement tous les aspects importants de la discipline du génie logiciel à savoir la problématique, l'historique et la définition, la notion du produit et du processus, et les modèles de cycle de vie. Ce cours, je rappelle est l'un des cours fondamentaux pour bien comprendre l'écosystème lié à la réalisation d'un logiciel.
En gros, on peut dire que ce cours est réparti en deux volets : théorique et pratique. La partie théorique va être assurée par le professeur tandis que la partie pratique elle va être assurée par les étudiants eux mêmes sous la supervision du professeur. Ce cours est une occasion à saisir par les étudiants pour renforcer leurs habiletés techniques, de communication et de collaboration, sachant que le développement d'un logiciel se pratique en équipe.
Pour ce qui est des thématiques proposées, elles couvrent tout le cycle de développement d'un logiciel, telles que la gestion de la documentation, la gestion des versions, la gestion des bugs, la gestion des projets, etc. Je vous propose ci après une liste non exhaustive de ces thématiques : Docbook, Ganttproject, Dotproject, Trello, Bugzilla, Cvs, Svn, Git, Bitbucket, Selenuim, Junit, Jenkins, etc.
Soyons tous au rendez-vous alors et bonne chance pour tout le monde.

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…