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 2018  Horaire et local
Professeur : Handouyahia, Mohamed
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 DOORS et/ou Requisite Pro
  • Disponibilité d'une page Moodle contenant le matériel du cours
  • Un projet de session à remettre en trois parties
  • Un examen de mi-session, un examen final
  • Heures hebdomadaires de consultation au bureau et communications par courriel
4. Heures de disponibilité ou modalités pour rendez-vous :

Mardi : 18 h à 21 h ou 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
04 sept. 2018 
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
11 sept. 2018 
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
18 sept. 2018 
4   

Techniques de recueil des exigences

  • Entrevues
  • Questionnaires
  • Remue-méninges
  • Observation directe
  • Examens de documents et produits
  • Prototypage
25 sept. 2018 
5   

Techniques de recueil des exigences (suite)

Étude de cas

TD 1 : Introduction à IBM DOORS - Vendredi 5 octobre 2018.

02 oct. 2018 
6   

Semaine d'études

09 oct. 2018 
7   

Cas d’utilisation

  • Contenu et avantages
  • Élaboration de cas d’utilisation
  • Diagrammes de cas d’utilisation

TD 2 : Diagrammes de cas d'utilisation - Vendredi 19 octobre 2018.

16 oct. 2018 
8   

Examen de mi-session

TD 3 : Spécification en cas d'utilisation - Vendredi 26 octobre 2018.

23 oct. 2018 
9   

Cas d'utilisation (suite)

30 oct. 2018 
10   

Analyse des exigences

  • Structuration et organisation
  • Priorisation
  • Exigences non-fonctionnelles

Étude de cas

06 nov. 2018 
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 : IBM DOORS, structuration des exigences - Vendredi 16 novembre 2018.

13 nov. 2018 
12   

Gestion des exigences

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

TD 5 : IBM DOORS, exigences non-fonctionnelles - Vendredi 23 novembre 2018.

20 nov. 2018 
13   

Génie logiciel orienté objet : l'analyse OO

  • Introduction et concepts de base
  • Analyse Orientée Objet (AOO)
  • Processus de modélisation
27 nov. 2018 
14   

Génie logiciel orienté objet : l'analyse OO (suite)

04 déc. 2018 
15   

Examen final

11 déc. 2018 
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 %
  • Un projet de session 30 % (en trois parties)

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

Le calendrier de remise du projet de session sera distribué en classe au début de session.

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