Université du Québec en Outaouais Département d'informatique et d'ingénierie
Sigle : GEN1423  Gr. 01
Titre : Génie logiciel
Session : Hiver 2016  Horaire et local
Professeur : Baaziz, Nadia
1. Description du cours paraissant à l'annuaire :

Objectifs

Au terme de cette activité, l'étudiant(e) sera en mesure : d'appliquer les principes fondamentaux du génie logiciel pour développer des produits de qualité.

Contenu

Caractéristiques du produit logiciel. Processus de développement logiciel et modèles de cycle de vie. Phases du cycle de vie. Techniques d'analyse, cahier des charges. Spécifications formelles. Conception, interface utilisateur, prototypage. Vérification et validation. Maintenance. Gestion de la qualité, des coûts, métriques.
2. Objectifs spécifiques du cours :
Le cours couvre 6 des 12 qualités requises des diplômés telle que définies dans les normes d'agrément des programmes de génie au Canada (http://www.engineerscanada.ca/fr/ressources-en-matiere-dagrement)
  1. Qualité 1 : Connaissance en génie
  2. Qualité 4 : Conception
  3. Qualité 5 : Utilisation d'outils d'ingénierie
  4. Qualité 6 : Travail individuel et en équipe
  5. Qualité 10 : Déontologie et équité
  6. Qualité 11 : Économie et gestion de projets

Les qualités 1, 4 et 6 sont mesurées dans ce cours pour fin de rétroactions

Objectifs spécifiques Qualité Indicateurs Introduit Développé Appliqué
Comprendre et appliquer les concepts spécifiques au processus de développement de logiciels
1
4 - Comprendre et appliquer les concepts de l'ingénierie propres au programme (génie informatique) x
Déterminer les besoins des clients et élaborer un cahier des charges en tenant compte des contraintes existantes
4
1 - Déterminer les besoins des clients et les contraintes économiques, réglementaires et législatives, environnementales, culturelles, sociales, et de santé et sécurité x
Travailler en équipe et faire preuve d'initiative
6
2 - Contribuer équitablement au travail d'équipe x
3 - Contribuer à l'efficacité de l'équipe : participation, initiative, résolution de conflit, etc. x
3. Stratégies pédagogiques :
Les formules pédagogiques suivantes seront utilisées :
  • Cours magistraux
  • Lectures et discussions
  • Séances de travaux dirigés
4. Heures de disponibilité ou modalités pour rendez-vous :
Sur rendez-vous - Local B-0125

Envoyer un courriel à nadia.baaziz@uqo.ca

5. Plan détaillé du cours sur 15 semaines :
Semaine Thèmes Dates
1    Introduction au génie logiciel
  • Définition
  • La crise du logiciel
  • Caractéristiques et qualités
  • Génie logiciel et éthique
11 jan. 2016 
2    Modèles de processus et cycles de vie
  • Activités
  • Gestion des changements
18 jan. 2016 
3    Analyse des besoins
  • Techniques de collecte de l'information
  • Facteurs humains
  • Cahier des charges
25 jan. 2016 
4    Ingénierie des exigences
  • Techniques et outils pour la spécification
  • DFD, DD, PDL
  • Tables et arbres de décision

Travaux dirigés 1 : Lundi 1er février 2016

05 fév. 2016 
5    Modélisation en cas d'utilisation
  • Acteurs, scénarios, extensions
  • Notation UML
  • Relation entre cas d'utilisation

Travaux dirigés 2 : Lundi 8 février 2016

12 fév. 2016 
6    Processus d'analyse et spécification

Exigences non-fonctionnelles

Travaux dirigés 3 : Lundi 15 février 2016

19 fév. 2016 
7    Examen intra 22 fév. 2016 
8    Semaine d'études 29 fév. 2016 
9    Introduction aux spécifications formelles

Conception et implémentation

07 mars 2016 
10    Les tests
  • Techniques de test

Tests unitaires, d'intégration, système

14 mars 2016 
11    Les tests (suite)
  • Quand arrêter les tests?
  • Inspection et walkthrough
  • Approche formelle
21 mars 2016 
12    Férié (lundi de Pâques) 28 mars 2016 
13    Évolution du logiciel
  • Processus d'évolution
  • Maintenance

Travaux dirigés 4 : Lundi 4 avril 2016

08 avr. 2016 
14    Gestion du logiciel
  • Gestion de risque
  • Gestion des équipes
  • Planification des tâches

Travaux dirigés 5 : Lundi 11 avril 2016

15 avr. 2016 
15    Examen final 18 avr. 2016 
6. Évaluation du cours :

Il faut obtenir au moins 50 % de la note aux examens (mi-session et final) pour que les notes des autres travaux (devoirs et projets) soient prises en compte dans le calcul de la moyenne finale.

Outils d'évaluation Pondération Indicateurs mesurés
Devoirs (2)
15 %
Examen intra
30 %
1.4
Examen final
30 %
1.4
Projet
25 %
4.1 ; 6.2; 6.3

Par indicateur mesuré, on entend qu'à la fin du cours, un niveau de performance (0, 1, 2, 3) est donné pour chaque indicateur et pour chaque étudiant selon la grille ci-dessous:

Indicateurs Niveau 0 Niveau 1 Niveau 2 Niveau 3
1.4 - Comprendre et appliquer les concepts de l'ingénierie propres au programme.
Moins de 52%
Entre 52 % et 63 %
Entre 64 % et 83 %
Plus de 84 %
4.1 - Identifier les besoins des clients et les contraintes économiques, réglementaires et législatives, environnementales, culturelles, sociales, et de santé et sécurité.
Identification inadéquate des besoins et des contraintes
Identification des besoins acceptable, mais détermination des contraintes insuffisante
Identification acceptable des besoins et des contraintes
Identification exhaustive des besoins et des contraintes
6.2 - Contribuer équitablement au travail d'équipe.
Contribution inexistante ou controversée
Contribution minimale
Contribution équitable
Contribution exceptionnelle
6.3 - Contribuer à l'efficacité de l'équipe : participation, initiative, résolution de conflit, etc.
Contribution à l’efficacité de l’équipe inacceptable ou inexistante
Contribution minimale à l’efficacité de l’équipe
Contribution acceptable à l’efficacité de l’équipe
Contribution remarquable à l’efficacité de l’équipe
7. Politiques départementales et institutionnelles :
8. Principales références :
Ian Sommerville, Software Engineering, 9ème edition, Addison-Wesley, 2011
9. Page Web du cours :
https://moodle.uqo.ca