Concepts et m thodes du g nie logiciel,
capture des besoins
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
Lundi 7 septembre 2015
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
1/27
La crise du logiciel
tude (1995) :
(cid:73) 8280 projets,
(cid:73) 16 % de r ussite, 31 % d chec
(cid:73) le reste (51%) a connu des dicult s
budgets, d lais, bugs. . .
(cid:73) taux de succ s & avec taille du projet et des entreprises
Questions fondamentales :
(cid:73) comment faire des logiciels de qualit
(cid:73) comment sp cier les crit res de qualit logicielle
(cid:73) ma triser le processus de fabrication de logiciels
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
2/27
Quest-ce que le g nie logiciel ?
Programmer 6= concevoir un syst me informatique/un logiciel
Vraies dicult s :
(cid:73) organisation et gestion
(cid:73) dicult de formalisation
(cid:73) multitude des param tres et des facteurs
(cid:73) gestion des humains
G nie logiciel
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
3/27
Objectifs de qualit dun logiciel
Qualit s fonctionnelles :
(cid:73) correction
(cid:73) robustesse
(cid:73) extensibilit
Qualit s structurelles :
(cid:73) r utilisabilit
(cid:73) compatibilit
Qualit s de mise en Suvre :
(cid:73) portabilit
(cid:73) ecacit
(cid:73) ergonomie
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
4/27
Cycle de vie du logiciel
Principales m thodologies
Capture des besoins
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
5/27
tapes de la vie du logiciel
(cid:73) tude dopportunit
(cid:73) Analyse des besoins, tude de faisabilit , sp cication
(cid:73) Cahier des charges + laboration tests de recettes
(cid:73) Conception architecturale + laboration tests dint gration
(cid:73) Conception d taill e + laboration tests unitaires
(cid:73) Codage
Advertisement
(cid:73) Tests unitaires et dint gration
(cid:73) Implantation chez le commanditaire
(cid:73) Essais avec les utilisateurs et validation
(cid:73) Formation des utilisateurs
(cid:73) Utilisation, maintenance, volution
(cid:73) Retrait
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
6/27
D livrables
Exemples :
(cid:73) chiers binaires (logiciel lui-m me)
(cid:73) code source ( ventuellement)
(cid:73) manuel dinstallation
(cid:73) manuel dutilisation
(cid:73) r sultats des tests
(cid:73) cahier des charges. . .
Objectifs :
(cid:73) documenter chaque tape
(cid:73) capitaliser les connaissances sur le projet
(cid:73) obtenir des retours du client
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
7/27
Cycle de vie du logiciel
Principales m thodologies
Capture des besoins
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
8/27
Cycle en cascade
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
9/27
Cycle en cascade
Avantages :
(cid:73) ais comprendre et mettre en Suvre
(cid:73) forte structuration : d nition puis r alisation
(cid:73) la documentation guide les tapes
Inconv nients :
(cid:73) mod le id alis , ne tient pas compte de la nature it rative dun projet
(cid:73) logiciel d livr seulement la n du projet
(cid:73) co t de gestion en amont important
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
10/27
Cycle en V
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
11/27
Cycle en V
Avantages :
(cid:73) plus r actif que le mod le en cascade
(cid:73) force lidentication de blocs fonctionnels
(cid:73) forte structuration des tapes de test
Inconv nients :
(cid:73) hypoth se de stricte s paration entre implantation et sp cication
(cid:73) logiciel d livr seulement la n du projet
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
Advertisement
12/27
Cycle en spirale
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
13/27
Cycle en spirale
Avantages :
(cid:73) combine les avantages des mod les en cascade/V
(cid:73) tient compte de la nature it rative dun projet
(cid:73) bonne visibilit au cours du cycle de vie
Inconv nients :
(cid:73) dicile comprendre sans tre expert technique
(cid:73) n cessite capacit bien analyser les risques
(cid:73) n cessite gestionnaires comp tents
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
14/27
Quelques m thodologies
Nombreuses m thodologies :
(cid:73) RAD
(cid:73) eXtreme Programming
(cid:73) Scrum
(cid:73) RUP
(cid:73) 2TUP
(cid:73) Merise
(cid:73) SADT
(cid:73) HERMES. . .
Trois grandes familles :
(cid:73) ascendante
(cid:73) descendante
(cid:73) agile
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
15/27
Le Manifeste Agile (2001)
Privil gions :
(cid:73) linteraction avec les personnes
(cid:73) un produit op rationnel
(cid:73) la collaboration avec le client
(cid:73) la r activit face au changement
Plut t que :
(cid:73) les processus et les outils
(cid:73) une documentation pl thorique
(cid:73) la n ociation de contrats
(cid:73) le suivi dun plan
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
16/27
Douze principes des m thodes agiles
(cid:73) Satisfaire le client en livrant t t et r guli rement des logiciels utiles
(cid:73) Accepter le changement m me tardivement dans le d veloppement
(cid:73) Livrer une application fonctionnelle toutes les 2 semaines/1 mois
(cid:73) Faire collaborer quotidiennement les experts m tier et les d veloppeurs
(cid:73) B tir le projet autour de personnes motiv es
(cid:73) Converser en face face pour transmettre linformation
(cid:73) Mesurer la progression du projet ses prototypes
(cid:73) Avoir un rythme de d veloppement soutenable
(cid:73) Prendre le temps de faire de la veille technologique
(cid:73) Faire simple en maximisant la quantit de travail ne pas faire
(cid:73) Permettre aux quipes de sauto-organiser
Advertisement
(cid:73) Faire r guli rement des s ances de d brieng pour sam liorer
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
17/27
eXtreme Programming, Scrum. . .
R activit et implication forte du commanditaire :
(cid:73) approches en spirale (ou it ratives)
(cid:73) implication forte du commanditaire dans la boucle
(cid:73) travail de codage plusieurs
(cid:73) techniques de prototypage rapide
Approches fond es sur lIHM :
(cid:73) partie IHM % en taille et en qualit
(cid:73) faire intervenir lutilisateur tr s t t dans la conception
(cid:73) sint resser linterface puis d nir les fonctions programmer
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
18/27
Cycle de vie du logiciel
Principales m thodologies
Capture des besoins
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
19/27
Cahier des charges
D nition :
(cid:73) recense sp cications et exigences
(cid:73) r sulte de lanalyse
(cid:73) contractuel entre client et entreprise, valid par les deux
Qualit s attendues (norme IEEE 830) :
(cid:73) non ambigu
(cid:73) complet
(cid:73) v riable
(cid:73) coh rent
(cid:73) modiable
(cid:73) tra able
(cid:73) utilisable durant la maintenance
(cid:73) ind pendant des solutions
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
20/27
Plan type
(cid:73) Introduction
(cid:73) Contexte
(cid:73) Sp cications fonctionnelles
(cid:73) Exigences :
(cid:73) charte graphique
(cid:73) mat riel
(cid:73) interfa age
(cid:73) s curit
(cid:73) charge supporter
(cid:73) comportement en cas de panne. . .
(cid:73) Organisation, priorit s, versions
(cid:73) volutions
(cid:73) Annexes
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
21/27
Outils pour la capture des besoins
(cid:73) Diagramme des cas dutilisation
(cid:73) Entretiens r guliers avec le client et validation
Advertisement
(cid:73) Observation des futurs utilisateurs dans leur pratique actuelle
(cid:73) Sc narios dinteraction
(cid:73) Exemples d crans, maquettes
(cid:73) Prototypage rapide
(cid:73) Technique du magicien dOz
(cid:73) Premier jet du manuel des utilisateurs
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
22/27
Diagramme des cas dutilisation
Traitement de texte :
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
23/27
Diagramme de cas dutilisation
Site WWW dune association :
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
24/27
Sc narios dinteraction
Lutilisateur ouvre un document, change ses marges et limprime
1. Lutilisateur s lectionne le document ouvrir
2. Le document est ach en mode ditable
3. Lutilisateur choisit un aper u avant impression
4. Le document est ach tel quil sera imprim , non ditable
5. Des champs achent les marges et permettent de les modier
6. Lutilisateur modie les marges et valide
7. Lachage est mis jour
8. Si lutilisateur le souhaite, il peut les modier nouveau (retour en 6)
9. Lutilisateur choisit dimprimer
10. Le document est envoy limprimante
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
25/27
Sc narios dinteraction
Un membre du CA valide un concert
Pr requis :
(cid:73) un visiteur a propos un concert, non encore valid
(cid:73) le membre du CA est identi sur la partie administration
1. La liste des concerts non valid s est ach e
2. Le membre du CA s lectionne le concert propos
3. Le membre du CA visualise les d tails du concert
4. Un bouton permet de valider ou de supprimer le concert
5. Le membre du CA valide le concert
6. Si le concert est d j pass , le membre du CA peut le supprimer
7. Le concert est retir de la liste des concerts non valid s
8. Si le concert nest pas pass , il est ajout la liste des concerts
9. Si le concert est pass , il est ajout aux archives
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
26/27
Maquettes
Par lexemple
Gr gory Bonnet, Yann Mathet, Bruno Zanuttini
G nie logiciel
27/27