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 : Automne 2014  Horaire et local
Professeur : Baaziz, Nadia
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
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
  • Disponibilité d'une page Moodle contenant le matériel du cours
  • Trois devoirs à remettre
  • Un examen de mi-session, un examen final
  • Heures hebdomadaires de consultation au bureau et communication par courriel
4. Heures de disponibilité ou modalités pour rendez-vous :
Lundi : 13 h 30 à 15 h 30 ou bien 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
02 sept. 2014 
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
09 sept. 2014 
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
19 sept. 2014 
4    Techniques de recueil des exigences
  • Entrevues
  • Questionnaires
  • Remue-méninges
  • Observation directe
  • Examens de documents et produits
  • Prototypage
23 sept. 2014 
5    Techniques de recueil des exigences (suite)

Étude de cas

TD 1 : Introduction au Rational Requisite Pro - Vendredi, 3 octobre 2014.

30 sept. 2014 
6    Cas d’utilisation
  • Contenu et avantages
  • Élaboration de cas d’utilisation
  • Diagrammes de cas d’utilisation

TD 2 : Diagrammes de cas d'utilisation - Vendredi, 10 octobre 2014.

07 oct. 2014 
7    Semaine d'études 14 oct. 2014 
8    Examen de mi-session 21 oct. 2014 
9    Cas d’utilisation (suite) 28 oct. 2014 
10    Analyse des exigences
  • Structuration et organisation
  • Priorisation
  • Exigences non-fonctionnelles

Étude de cas

TD 3 : Spécification en cas d'utilisation - Vendredi, 7 novembre 2014.

04 nov. 2014 
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

TD 4 : Rational Requisite Pro, structuration des exigences - Vendredi, 14 novembre 2014.

11 nov. 2014 
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, …)

TD 5 : Rational Requisite Pro, exigences non-fonctionnelles - Vendredi, 21 novembre 2014.

18 nov. 2014 
13    Génie logiciel orienté objet: l'analyse OO
  • Introduction et concepts de base
  • Analyse Orientée Objet (AOO)
  • Processus de modélisation
25 nov. 2014 
14    Génie logiciel orienté objet : l'analyse OO (suite) 02 déc. 2014 
15    Examen final 09 déc. 2014 
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 35%
  • Examen final 35%
  • Devoirs 30% (2 devoirs sont notés)

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