CS-116 / 4 crédits

Enseignant: Rougemont Jacques

Langue: Français

Remarque: Cours partiellement en anglais


Résumé

On présente et on met en pratique les principes de développement en équipe d'un projet logiciel complexe en C++ à l'aide d'outils utilisés dans l'industrie. Des exemples issus des sciences de la vie sont proposés et les étudiants développent une solution et font évoluer le projet durant le semestre

Contenu

Mots-clés

C++, programmation orientée objet, algorithmique, projet de développement

Compétences requises

Cours prérequis obligatoires

ICC, programmation orientée objet

Concepts importants à maîtriser

Pratique du C++

Concepts fondamentaux de la programmation orientée-objet en C++

Acquis de formation

A la fin de ce cours l'étudiant doit être capable de:

  • Evaluer le coût d'un algorithme en temps et en espace
  • Analyser l'apport de techniques algorithmiques connues
  • Concevoir une application répondant à des spécifications données
  • Tester l'adéquation du résultat d'un programme par rapport aux fonctionnalités visées
  • Réaliser de façon autonome une application de taille moyenne au moyen du langage C++
  • Utiliser des outils dédiés à la réalisation de projets (gestion de version, debuggage)
  • Utiliser de façon autonome des librairies connues
  • Choisir ou sélectionner et interpéter la documentation informatique en ligne

Compétences transversales

  • Gérer ses priorités.
  • Recevoir du feedback (une critique) et y répondre de manière appropriée.
  • Planifier des actions et les mener à bien de façon à faire un usage optimal du temps et des ressources à disposition.
  • Utiliser une méthodologie de travail appropriée, organiser un/son travail.
  • Utiliser les outils informatiques courants ainsi que ceux spécifiques à leur discipline.
  • Identifier les différents rôles qui caractérisent les équipes performantes et tenir différents rôles dont un rôle de coordinateur.
  • Résoudre des conflits de façon productive pour la tâche et les personnes concernées.

Méthode d'enseignement

Ex cathedra, travaux pratiques sur ordinateurs, réalisation de deux projets notés pendant 13 semaines.

Travail attendu

Participation au cours. Réalisation des projets en séances d'exercices et travail individuel durant la semaine.

Méthode d'évaluation

La note finale est un combinaison de 3 evaluations: travaux intermédiaires individuels dans le cadre du premier projet (50%), évaluation du deuxième projet réalisé en équipe (25%), contribution individuelle au travail d'équipe (25%). 

Dans le travail en équipe, des tâches de programmation sont définie collaborativement et des points de difficulté leur sont attribués. La contribution individuelle est calculée par le nombre de points accumulés par l'étudiant durant le projet (en réalisant les tâches correspondantes).

Les critères d'évaluation des projets finaux tient compte de:

  • historique complet sur git
  • intégration et exhaustivité des tests
  • qualité de la documentation, clarté du code
  • qualité du code, performance du programme
  • compréhension des algorithmes

Encadrement

Office hours Non
Assistants Oui
Forum électronique Oui

Préparation pour

Programmation bio-mathématique

Dans les plans d'études

  • Semestre: Automne
  • Forme de l'examen: Pendant le semestre (session d'hiver)
  • Matière examinée: Projets en informatique (pour SV)
  • Cours: 2 Heure(s) hebdo x 14 semaines
  • Exercices: 2 Heure(s) hebdo x 14 semaines

Semaine de référence

 LuMaMeJeVe
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22