Introduction à l'ingénierie des systèmes.
Modèles de processus des exigences logicielles. Intervenants dans le processus des
exigences logicielles. Support et gestion du processus des exigences
logicielles. Qualité et amélioration du processus des exigences logicielles.
Sources des exigences logicielles. Techniques d'explicitation des exigences
logicielles. Classification des exigences logicielles. Modélisation
conceptuelle. Conception architecturale et allocation des exigences
logicielles. Négociation des exigences logicielles. Document de définition des
exigences logicielles. Document de spécification des exigences logicielles.
Structure et normes de documentation des exigences logicielles. Qualité de la
documentation des exigences logicielles. Revue des exigences logicielles.
Prototypage. Validation des modèles. Tests d'acceptation. Gestion des
changements des exigences logicielles. Attributs des exigences logicielles.
Trace des exigences logicielles. Sujets avancés en exigences logicielles.
Le cours sera organisé autour d’une
liste de sujets et de discussions de chapitres du manuel ou d’articles.
Certains sujets pourraient être annulés et d’autres introduits si l’enseignant
ou les étudiants en ressentent le besoin.
Sujets
1.
Mise en
contexte des exigences (GL)
·
Définitions
·
Prolégomènes
IV
2.
Exigences
(SWEBOK)
·
Qu’est-ce
qu’une exigence ?
·
Processus
1. élicitation
2. analyse
3. Spécification
4. Validation
·
Critique
3.
Principes
d’opération
·
Sa place
dans le GL
·
Objectifs
·
Éléments
·
Une norme
4.
Processus
·
Cycle de
vie des produits et types de produits
·
Processus
(archétypes)
1. Lourd
§
Centré sur
les exigences
§
Centré sur
la qualité
§
Piloté par l’échéancier
2. Agile (UP)
§
Centré sur
l’architecture
§
Itération
et incréments
§
Piloté par
les risques
·
ISO 12207
5.
Artefacts
et « Fiches »
·
Problèmes
·
Besoins
·
Exigences
·
Test
6.
À la
recherche des concepts
·
Exemple UML
pour architecture
·
Méthode ?
·
Niveau de
détail
·
Exemple :
chasse à l’orignal
7.
Fonctions
versus qualité
·
Versus ?
·
Qu’est-ce
qu’une exigence fonctionnelle ?
·
Qualité ?
1. ISO 9126
8.
Exemple :
Interopérabilité
·
Domaine
d’application
·
Pourquoi ?
·
Projet
« SCALCID »
9. Extreme
requirements
·
Domaine
d’application
·
Pourquoi ?
·
Prototypage
·
Fiches
10. IEEE 830
·
Utilité
·
Structures
·
Limites
11. La méthode de Jackson
·
Problèmes
·
Exigences
·
Machine
·
Types des
problèmes
·
Structure
des problèmes
12. Ontologies
·
Définition
·
Approches
·
Critique
13. De la nécessité des cas d’utilisation
·
Pour
·
Contre
·
Au-delà
Discussions en partant du livre :
Karl E. Wiegers, Software Requirements,
Microsoft Press, 2003
1. Deuxième semaine : chapitres 1..2.
2. Troisième semaine : chapitres 3..4.
3. Quatrième semaine : chapitres 5..6.
4. Cinquième semaine : chapitres 7..9.
5. Sixième semaine : chapitres 10..12.
6. Septième semaine : chapitres 13..14.
7. Huitième semaine : chapitres 15..16.
8. Neuvième semaine : chapitres 17..18.
9. Dixième semaine : chapitres 19..20.
10. Onzième semaine : chapitres 21..23.
Note : les discussions auront lieu dans la deuxième heure du cours mais ne concerneront pas, nécessairement, le sujet traité dans la première moitié. Ceci permettra de revenir ou d’anticiper sur les sujets pour ne pas les traiter que ponctuellement.
Approche
pédagogique
Les objectifs du cours seront atteints
par un enseignement hebdomadaire sous la forme de :
·
cours
magistral (1 heures) ;
·
discussions
en groupe des chapitres du manuel lus ;
·
travail en
classe sur les TP.
Pour un suivi de l’apprentissage et pour, éventuellement, adapter les sujets, les étudiants remettront, chaque semaine, pendant 10 semaines, un document d’au moins 5 000 caractères sur les chapitres du manuel à discuter en classe. Le document aura trois sections qui contiendront :
1.
Les points
les plus intéressants du chapitre.
2.
Les points
faibles du chapitre.
3.
Questions
et considérations pour la discussion en classe.
Description sommaire |
Pour le |
Pondération |
Examen final oral |
À partir de la
dernière semaine de cours (pendant trois semaines au maximum) |
25 % |
Projet d'équipe de 3
ou 4 personnes |
25 février 2008 (TP1) |
15 % |
3 mars 2008 (Revue) |
5 % |
|
28 avril 2008 (TP2) |
25 % |
|
Documents pour
discussion et participation en classe |
À partir de la
deuxième semaine pendant 10 semaines |
30 % |
OBLIGATOIRES
·
WIEGERS Karl, Software
Requirements, Microsoft Press, 2003.
·
IEEE :
Std 1233-1998 Guide for Developing System
Requirements Specifications.
·
IEEE :
Std IEEE Guide for Information Technology System Definition
Concept of Operations (ConOps) Document
·
IEEE :
Std 830-1998 IEEE Recommended Practice for Software Requirements Specification
·
SWEBOK Version 2004 : Chapitre 2 (http://www.swebok.org/home.html).
·
Maffezzini
I, Premiana A., Martin L., « Prolégomènes à une critique du génie
logiciciel : Partie IV, Exigences », Génie Logiciel, Mars 2005. Disponible
à : http://www.trempet.uqam.ca/trempet/membres/Maffezzini/Articles/ArticlesGL/ProlegIV.pdf
·
Maffezzini
I, Most Stable Elements First
Approach (3rd International
Conference on Cybernetics and Information Technologies, Systems and
Applications, CITSA 2006) http://www.trempet.uqam.ca/trempet/membres/Maffezzini/Articles/ArticlesGL/CITSA2006-MostSatbleElementFirst-I877AS-AvecPaginationPourWEB.pdf
·
Maffezzini
I, Toward Extreme Requirements?, (4th International Conference on Cybernetics and Information
Technologies, Systems and Applications, CITSA 2007) http://www.trempet.uqam.ca/trempet/membres/Maffezzini/Articles/ArticlesGL/CITSA2007-Final.pdf
·
Maffezzini I., De
l'utilité des ontologies en GL (Génie Logiciel, Sept. 2006, No 78) http://www.trempet.uqam.ca/trempet/membres/Maffezzini/Articles/ArticlesGL/Delanécessitédesontologies.mht
·
Maffezzini I., De la nécessité des cas d'utilisation
(Génie Logiciel, Déc. 2005, No 75) http://www.trempet.uqam.ca/trempet/membres/Maffezzini/Articles/ArticlesGL/LC03-CasUtilisation.pdf
·
Articles,
normes et autres documents distribués en classe ou mise à disposition des
étudiants sur le site Internet du cours.
Autres