Note du 29 juin 2020
Sans connaitre encore le temps que dureront les mesures de distances sociales liées à la pandémie de Covid-19, et quels que soient les changements qui ont dû être opérés dans l’évaluation de la session de juin 2020 par rapport à ce que prévoit la présente fiche descriptive, de nouvelles modalités d’évaluation des unités d’enseignement peuvent encore être adoptées par l’enseignant ; des précisions sur ces modalités ont été -ou seront-communiquées par les enseignant·es aux étudiant·es dans les plus brefs délais.
Sans connaitre encore le temps que dureront les mesures de distances sociales liées à la pandémie de Covid-19, et quels que soient les changements qui ont dû être opérés dans l’évaluation de la session de juin 2020 par rapport à ce que prévoit la présente fiche descriptive, de nouvelles modalités d’évaluation des unités d’enseignement peuvent encore être adoptées par l’enseignant ; des précisions sur ces modalités ont été -ou seront-communiquées par les enseignant·es aux étudiant·es dans les plus brefs délais.
6 crédits
30.0 h + 30.0 h
Q1
Enseignants
Mens Kim;
Langue
d'enseignement
d'enseignement
Anglais
Préalables
Ce cours n’a pas de préalables explicites mais suppose des compétences acquis en BAC SINF, ou BAC FSA orientation info, dans les cours suivants :
- LINFO1101 ou LEPL1401 (informatique 1)
- LINFO1225 (conception orientée objet et gestion de données),
- LEPL1402 (informatique 2),
- LEPL1509 (projet en informatique)
En particulier, ce cours suppose une bonne connaissance préalable de et expérience avec les concepts de la programmation orientée objet, les algorithmes et les structures de données; ainsi qu'avoir participé préalablement à l'élaboration d'un système logiciel de petite à moyenne échelle.
Thèmes abordés
En général, la meilleure façon pour les étudiants de se renseigner sur le génie logiciel est en participant à un projet. Un tel projet devrait exiger que les étudiants travaillent en équipe pour développer un système de logiciel à travers autant de son cycle de vie que possible. Une grande partie du génie logiciel est consacré à la communication efficace entre les membres de l'équipe et les parties prenantes. En utilisant des équipes de projet, les projets peuvent être suffisamment difficile d'obliger les étudiants à utiliser des techniques de génie logiciel efficaces et de développer et de mettre en pratique leurs compétences en communication. La meilleure façon d'apprendre à appliquer la théorie du génie logiciel et de la connaissance est dans l'environnement pratique d'un projet.
Le projet pratique sera accompagné par quelques séances théoriques où les étudiants vont se familiariser avec:
- des modèles de développement logiciel (par exemple, cascade, incrémentelle, agile) et les activités au sein de cycles de vie des logiciels;
- des approches pratiques d'ingénierie des exigences;
- l'analyse et la conception de logiciels techniques et leurs notations;
- la description des données du système en utilisant, par exemple, la modélisation objet rôle ou diagrammes entité-relation;
- la gestion de projet et les techniques de planification.
Acquis
d'apprentissage
d'apprentissage
A la fin de cette unité d’enseignement, l’étudiant est capable de : | |
1 | Eu égard au référentiel du programme « Master ingénieur civil en informatique », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
|
La contribution de cette UE au développement et à la maîtrise des compétences et acquis du (des) programme(s) est accessible à la fin de cette fiche, dans la partie « Programmes/formations proposant cette unité d’enseignement (UE) ».
Contenu
Ce projet de génie logiciel consiste en le développement (analyse, conception, implémentation, validation, documentation, intégration et déploiement) d'une application logicielle réaliste et non-triviale, si possible proposée par et avec la participation d'un client réel, dans des conditions de travail semi-professionnelles.
Le sujet de l'application à construire est proposé par un partenaire industriel ou une organisation à but non lucratif qui participe à l'organisation de ce cours.
Des équipes de 6 à 8 étudiants (nécessaires pour réaliser un grand projet), collaboreront, supervisées par un chef de projet.
Des réunions hebdomadaires auront lieu avec le chef de projet (un assistant ou tuteur) pour présenter le progrès et les difficultés rencontrées, pour évaluer les alternatives, et discuter de la distribution et de la planification du travail au sein de l'équipe.
L'application à développer sera très probablement une application web, mais le choix du langage de programmation, de l'environnement, le cadre d'application et des outils de développement dépendront des exigences du client du projet.
Le sujet de l'application à construire est proposé par un partenaire industriel ou une organisation à but non lucratif qui participe à l'organisation de ce cours.
Des équipes de 6 à 8 étudiants (nécessaires pour réaliser un grand projet), collaboreront, supervisées par un chef de projet.
Des réunions hebdomadaires auront lieu avec le chef de projet (un assistant ou tuteur) pour présenter le progrès et les difficultés rencontrées, pour évaluer les alternatives, et discuter de la distribution et de la planification du travail au sein de l'équipe.
L'application à développer sera très probablement une application web, mais le choix du langage de programmation, de l'environnement, le cadre d'application et des outils de développement dépendront des exigences du client du projet.
Méthodes d'enseignement
Développement (analyse, conception, implémentation, validation, documentation, intégration et déploiement) d'un grand logiciel pour un client, en equipe de 6 à 8 étudiants supervisées par un chef de projet. Des réunions hebdomadaires auront lieu avec le chef de projet, et différents prototypes et rapports doivent être produits en cours du projet.
Modes d'évaluation
des acquis des étudiants
des acquis des étudiants
L'évaluation du cours sera basée sur:
- La participation individuelle aux travail de groupe et aux réunions de groupe hebdomadaires avec les tuteurs de cours;
- La réalisation de trois prototypes intermédiaires avec rapports techniques correspondants;
- Le rapport final, le système livré et sa documentation, ainsi que la présentation et la démonstration du produit final devant le client.
Autres infos
Préalables:
- Avoir une bonne connaissance et expérience avec les concepts de la programmation orientée objet, les algorithmes et les structures de données.
- Avoir participé à l'élaboration d'un système logiciel de petite à moyenne échelle.
Ressources
en ligne
en ligne
Bibliographie
French
Des lectures supplémentaires seront suggérées dans le plan de cours qui décrit les produits livrables et l'organisation du projet. Les supports de cours pertinents, des slides et des informations pratiques seront accessibles sur Moodle, qui sera également le principal moyen de communication entre l'enseignant et les étudiants.
English Additional reading material will be suggested in the course plan which describes the deliverables and organisation of the project. All relevant course material, slides and practical information will be available on Moodle, which will also be the main means of communication between the teacher and the students.
Des lectures supplémentaires seront suggérées dans le plan de cours qui décrit les produits livrables et l'organisation du projet. Les supports de cours pertinents, des slides et des informations pratiques seront accessibles sur Moodle, qui sera également le principal moyen de communication entre l'enseignant et les étudiants.
English Additional reading material will be suggested in the course plan which describes the deliverables and organisation of the project. All relevant course material, slides and practical information will be available on Moodle, which will also be the main means of communication between the teacher and the students.
Faculté ou entité
en charge
en charge
INFO