Université du Québec en Outaouais Département d'informatique et d'ingénierie
Sigle : INF1173  Gr. 01
Titre : Analyse et gestion des exigences
Session : Hiver 2016  Horaire et local
Professeur : Adb-Ali, Jamal
1. Description du cours paraissant à l'annuaire :

Objectifs

Permettre aux étudiants de se familiariser avec toutes les étapes du cycle de vie d'un logiciel. Leur permettre de maîtriser la phase d'analyse et de spécification des exigences. Leur permettre de découvrir les exigences d’un système, les analyser, les spécifier, les valider et gérer leur évolution tout au long du cycle de développement.

Contenu

Cycle de vie du logiciel. Catégories d'exigences. Techniques utilisées pour comprendre les besoins des parties prenantes: interview, questionnaire, remue-méninges, atelier de groupe, cas d'utilisation, prototypage. Gestion de l'envergure du système : priorisation des exigences, effort nécessaire, estimation des risques. Documentation et spécification des exigences. Gestion des changements aux exigences. Outils utilisés pour la gestion des exigences. Introduction à l'analyse orientée objets. Ce cours comporte des séances obligatoires de travaux dirigés (TD) de deux heures par semaine.
2. Objectifs spécifiques du cours :
Le génie logiciel vise à appliquer des principes scientifiques aux différentes phases de développement d'un produit logiciel. Le cours INF1173 est une introduction à la discipline et porte principalement sur les premières étapes de développement du logiciel, à savoir : l'analyse des besoins et la spécification des exigences selon les règles de l'art.

Les objectifs spécifiques de ce cours sont :

  • Comprendre le cycle de vie du logiciel et les principales phases des modèles de développement
  • Comprendre le rôle et l’importance de la phase d'analyse et spécification d'un produit logiciel
  • S'initier aux différentes techniques de recueil et d’analyse des exigences
  • S’initier à l’élaboration de la documentation de spécification
  • Découvrir les outils de création et de gestion des exigences: Requisite Pro et Doors.
3. Stratégies pédagogiques :

Les formules pédagogiques suivantes seront utilisées :

  • Présentation du contenu par le biais de cours magistraux, applications, études de cas
  • Séances de travaux dirigés en présence d'un assistant, présentation et manipulation avec l'outil Rational Requisite Pro et Doors
  • Disponibilité d'une page Moodle contenant le matériel du cours
  • Devoirs à remettre
  • Un examen de mi-session, un examen final
4. Heures de disponibilité ou modalités pour rendez-vous :
Sur rendez-vous.
5. Plan détaillé du cours sur 15 semaines :
Semaine Thèmes Dates
1    Introduction au Génie Logiciel
  • Définitions
  • Le logiciel
  • Qualités du produit logiciel
  • Processus de développement du logiciel
  • Méthodes et outils du génie logiciel
  • Génie logiciel et éthique
14 jan. 2016 
2    Le cycle de vie du logiciel
  • Les phases du processus de développement
  • Analyse et spécification
  • Conception et implémentation
  • Vérification et validation
  • Maintenance et évolution
  • La modélisation de processus
21 jan. 2016 
3    Processus d’analyse et spécification
  • Besoins, exigences, spécification
  • Catégories et niveaux d’exigences
  • Activités de l’analyse
  • Rôles de l’analyste
  • Parties prenantes
  • Planification et cadrage
28 jan. 2016 
4    Techniques de recueil des exigences
  • Entrevues
  • Questionnaires
  • Remue-méninges
  • Observation directe
  • Examens de documents et produits
  • Prototypage
04 fév. 2016 
5    Techniques de recueil des exigences (suite)
  • Introduction aux cas d'utilisation

Étude de cas

Travail dirigé #1 : Introduction au Rational Requisite Pro - Le mardi 9 février 2016.

11 fév. 2016 
6    Cas d’utilisation
  • Contenu et avantages
  • Élaboration de cas d’utilisation
  • Diagrammes de cas d’utilisation
18 fév. 2016 
7    Analyse des exigences
  • Organisation et classification
  • Priorisation
  • Exigences non-fonctionnelles
  • Qualités (ex.: standardisées, ergonomie, etc.)

Étude de cas

Travail dirigé #2 : Diagrammes de cas d'utilisation - Le mardi 23 février 2016.

25 fév. 2016 
8   

Semaine d'études

03 mars 2016 
9   

Examen de mi-session

10 mars 2016 
10    Analyse des exigences (suite)

Travail dirigé #3 : Spécification en cas d'utilisation - Le mardi 15 mars 2016.

17 mars 2016 
11    Spécification et documentation
  • Notions de modélisation
  • Le Document de Spécification (DS)
  • Organisation du DS
  • Standards du DS

Validation des exigences

  • Vérifier et valider
  • Les techniques

Travail dirigé #4 : Rational Requisite Pro, structuration des exigences - Le mardi 22 mars 2016.

24 mars 2016 
12    Gestion des exigences
  • Suivi et changements
  • Gestion des risques
  • Outils de création et de gestion des exigences (Rational Requisite Pro, Visible Analyst, FreeMind,…)

Travail dirigé #5 : Rational Requisite Pro, exigences non-fonctionnelles - Le mardi 29 mars 2016.

31 mars 2016 
13    Génie logiciel orienté objet: l'analyse OO
  • Introduction et concepts de base
  • Analyse Orientée Objet (AOO)
  • Processus de modélisation
07 avr. 2016 
14    Génie logiciel orienté objet : l'analyse OO (suite) 14 avr. 2016 
15   

Examen final

21 avr. 2016 
6. Évaluation du cours :
L'évaluation est l'appréciation du niveau d'apprentissage atteint par l'étudiant par rapport aux objectifs des cours et des programmes.

Dans le cas spécifique du cours Analyse et gestion des exigences, l'attribution des notes se fera selon la répartition suivante:

  • Examen de mi-session 40%
  • Examen final 45%
  • Devoirs 15%

Il faut obtenir une moyenne minimale de 50 % aux examens (mi-session et final) pour que les notes des travaux comptent.

Les devoirs devront être remis aux dates indiquées.

7. Politiques départementales et institutionnelles :
8. Principales références :
  1. Notes de cours, INF1173, page Moodle, UQO.
  2. Ian Sommerville, Software Engineering, 9th edition, Addison-Wesley, 2011.
  3. John W. Satzinger, Robert B. Jackson, Stephen D. Burd, Analyse et conception de systèmes d'information, 2e édition, R. Goulet 2003.
  4. Peter Zielczynski, Requirements Management Using IBM Rational RequisitePro, IBM Press, 2008 (version numérique dans la base de données Books24x7, Bibliothèque-UQO)
  5. Yves Constantinidis, Définition des besoins pour le logiciel, Hermès-Lavoisier, 2006.
  6. Philip A. Laplante, Requirements engineering for software and systems, CRC Press, 2009.
  7. Yves Constantinidis, Expression des besoins pour le système d’information, Eyrolles, 2010.
  8. Kendall & Kendall, System analysis and design, 8th edition, Prentice Hall, 2011.
9. Page Web du cours :
https://moodle.uqo.ca