Skip to content

ace-lectures/H19-INF-5153

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

INF5153 - Génie logiciel: Conception

Informations Générales

  • Équipe :
    • Professeur : Sébastien Mosser
    • Démonstratrice : Charline David
    • Correcteur: a définir
  • Horaire du groupe 030, session d'hiver 2019:
    • Cours : Mercredi, 18h - 21h, local PK-R605
    • Atelier : Jeudi, 18h - 20h, local PK-S1555
  • Communication :

Description du cours

Sensibiliser l'étudiant aux difficultés de la conception et lui permettre d'élaborer des solutions réutilisables, maintenables et extensibles. Problématique du processus de conception. Critères et architecture. Conception comme activité créatrice. Outils d'aide à la conception. Intégration et essais système. Conception orientée objet. Cadres d'application et patrons de conception. Documentation de conception. Rétro ingénierie.

  • Préalables académiques
    • INF-5151, Génie logiciel: analyse et modélisation ;
    • INF-3135, Construction et maintenance de logiciels.

Évaluation & Planning de rendus

Date(s) Travail à rendre Objectif Poids
16.01 ➝ 10.02 TP1 Conception guidée, en lien avec l'implémentation 10%
20.02 📓 Examen intra (PK-1350) Principes fondamentaux de la conception 20%
28.02 ➝ 24.03 TP2 - PMV Concevoir et développer un produit minimal & viable 10%
25.03 ➝ 28.04 TP2 - Complet Corriger une conception, intégrer des évolutions 20%
24.04 📓 Examen final (PK-1705) Principes fondamentaux & avancés de la conception 40%

Pour les Travaux Pratiques, le rendu se fait à travers la plateforme GitHub Classroom. Les TPs sont a réaliser par équipe. Les dépôts de code seront clonés automatiquement par un script, et tout travail non rendu via ce biais ou hors délais ne sera pas évalué. La couverture fonctionelle de vos TPs est automatiquement vérifiée par la bonne exécution de scénarios Cucumber.

Les dates de remise s'entendent en Heure de l'Est, à 23:50 le jour de la date de remise.

L'examen intra portera sur les séances des semaines #2 à #7. L'examen final portera sur les séances des semaines #2 à #15. La séance de la semaine #16 est une ouverture pour votre culture générale. Pour les examens, vous avez le droit à une feuille de notes manuscrites (format Letter, recto-verso, écrite à la main et non photocopiée), et à la cheatsheet UML donnée sur cette page.

Agenda des séances

En régime régulier, les cours ont lieu le mercredi et les ateliers le jeudi. Les exceptions à la règle sont listées ci-dessous :

  • Semaine #6 : Déplacement pro (conférence). Le cours est remplacé par un atelier (local & horaire à définir).
  • Semaine #7 : L'atelier est remplacé par un cours pour rattraper la semaine 6 (local & horaire à définir)
#Semaine Cours (Mercredi, 3h) Ateliers (Jeudi, 2h)
#2 Introduction: Socle Technique & Principes de COO
#3 Rappels sur UML, Pictionary (A1) Boite à outils
#4 Responsabilisation (GRASP & SOLID) (A1) suite
#5 Architecture & Conception détaillée (A2) Conception & Implémentation
#6 (A2) suite (A2) suite
#7 ⛄ Tempête de Neige ⛄ Patrons de conceptions & Révisions (PK-1620)
#8 Examen intra (PK-1350)
#9 Semaine de relâche
#10 Correction Intra & Tests d'acceptation (TP2)
#11 Patrons de conceptions GoF (padawan) (TP2)
#12 Patrons de conceptions GoF (chevalier) (TP2)
#13 Étude de cas JUnit (live coding) (A3)
#14 Métriques, Visualisations & Anti-patrons (A3)
#15 Ré-usinage & Mauvaises odeurs (TP2)
#16 Étude de cas de révision (TP2)
#17 Examen final (PK-1705)

Materiel supplémentaire :

Travaux

Ateliers (encadrés)

  • A1 : Micro-brasserie interactive
    • Objectifs : Maitriser l'outillage de base (GitHub classroom, travis-CI, maven, git, junit, visual paradigm & cucumber).
  • A2 : Le jeu de Poker
    • Objectifs : Concevoir et développer une application orientée objet.
  • A3 : Analyse qualité
    • Objectif : Initiation à la rétro-ingénierie des applications objets.

Travaux pratiques (à rendre)

Les travaux pratiques sont a faire en équipe de 3 à 4 étudiants. Vous êtes fortement encouragés à utiliser Slack et les disponibilités sans rendez vous pour obtenir des retours sur vos travaux pratiques avant les livraisons finales.

Il est possible d'obtenir des créneaux de rendez-vous pendant les temps d'atelier avec le professeur pour discuter des Travaux Pratiques à rendre si vous êtes en situation d'emploi et ne pouvez pas venir sur le créneau sans rendez-vous précédant le cours.

Barème

Le cours utilise la grille d'évaluation standard de l'UQAM définie dans RESULTATS. La note de passage est de 50%, et il n'y a pas de double seuil TP/examens.

echelle de notes

Bibliographie

  • UML@Classroom, Springer Verlag, 2015.
    • Martina Seidl, Marion Scholz, Christian Huemer & Gerti Kappel.
  • Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives, Addison Wesley, 2011.
    • Nick Rozanski & Eoin (pronounced “Owen”) Woods.
  • Implementing Domain-Driven Design, Addison-Wesley Professional, 2013.
    • Vaughn Vernon
  • Design Patterns: Elements of Reusable Object-Oriented Software, Addison Wesley, 1994.
    • Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides.
  • Refactoring: Improving the Design of Existing Code, Addison Wesley, 2018 (2nd edition)
    • Martin Fowler.

About

Cours INF5153 à l'UQAM, session d'Hiver 2019

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published