Professional Documents
Culture Documents
Atelier GL
AHMED CHABCHOUB
AHMED.CHABCHOUB@GMAIL.COM
Plan du cours
Concepts fondamentaux de gnie logiciel
2
Les facteurs de la qualit
Des critres de qualit
Relations entre facteurs et critres
Mesure
Mise en place de la qualit
Test de Logiciel
3
Concepts fondamentaux de gnie
logiciel
ahmed chabchoub
4
Caractristiques du logiciel
Produit unique
conu et fabriqu une seule fois, reproduit
Inusable
dfauts pas dus l'usure mais proviennent de sa
conception
Complexe
le logiciel est fabriqu pour soulager l'humain d'un
problme complexe ; il est donc par nature complexe
Invisible
Fabrication du logiciel=activit purement intellectuelle
difficult de perception de la notion de qualit du
logiciel
Technique non mature
encore artisanal malgr les progrs
ahmed chabchoub 5
Constats
Le cot du dveloppement du logiciel dpasse souvent
celui du matriel,
Les cots dans le dveloppement du logiciel :
20% pour le codage et la mise au point individuelle,
30% pour la conception,
50% pour les tests d'intgration,
Dure de vie d'un logiciel de 7 15 ans,
Le cot de la maintenance volutive et corrective
constitue la part prpondrante du cot total ,
Plus de la moiti des erreurs dcouvertes en phases de
tests proviennent d'erreurs introduites dans les
premires tapes,
La rcupration d'une erreur est d'autant plus coteuse
que sa dcouverte est tardive.
ahmed chabchoub 6
Les plaintes classiques des clients
Non respect du cahier des charges,
Dlais et cots dpassant les prvisions,
Maintenance corrective et volutive difficiles,
Non respect des performances,
Documentations absentes ou peu claires,
Fiabilit discutable.
ahmed chabchoub 7
Gnie logiciel
Ensemble des activits de conception et de mise en
uvre des produits et des procdures tendant
ahmed chabchoub
rationaliser la production du logiciel et son suivi.
Arrt ministriel Franaise du 30/12/1983
8
Dveloppement dun logiciel
ahmed chabchoub
Caractristiques souhaites :
Adquation avec les besoins
Maintenance aise
Bon march
Rapidement dvelopp
Comment ?
Le gnie logiciel = outils + mthodes
9
Etapes de dveloppement
ahmed chabchoub
comprendre et recenser les besoins
Spcification (par exemple cahier des charges)
Conception (du logiciel)
Prliminaire
clater le logiciel en sous-parties
dfinir les interfaces entre ces sous-parties
architecture du logiciel
Dtaille
prciser larchitecture des sous-parties
Implantation
- codage
10
Activits du dveloppement de logiciels
Valider le
logiciel
ahmed chabchoub
Assembler les
composants
Dvelopper un
des composants
Dfinir comment
il sera dvelopp
Dfinir ce qui
sera dvelopp
11
Validation du logiciel
Dfinition
assurer la cohrence entre les besoins et le logiciel obtenu
ahmed chabchoub
garantir au mieux labsence derreur
Moyens
prototyper :dvelopper et essayer une partie du logiciel
concevoir
tester : effectuer des essais de fonctionnement et vrifier le
rsultat obtenu par rapport au rsultat attendu
prouver : vrifier mathmatiquement la cohrence de la
conception/du code par rapport la spcification (qui doit
tre formelle)
12
Comparaison des moyens
de validation
ahmed chabchoub
Inconvnie Avantage Cible Ce qui est vrifi
nt
Aucune Intervient trs Dveloppe La bonne comprhension Prototyp
garantie tt urs du problme er
sur rsultat
Intervient la Facilit de Programm Un comportement Tester
fin pas mise en e correct
exhaustif oeuvre excut dans des cas bien prcis
Nombreux
outils
Lourd mettre Garantie Code et/ou La correction par rapport Tester
en place obtenue conception aux
proprits spcifies
formellement
Consquence :
Preuve rserve aux systmes critiques
Test toujours utilis
13
Le cycle de vie du
logiciel
ahmed chabchoub
14
1. Le modle en tunnel
ahmed chabchoub
Problme
Caractristique
absence de modle !
Utilisation
A viter !
rserve aux petits projets
15
2. Le modle en cascade
ahmed chabchoub
Caractristiques
phases bien identifies
test :
intervient tard
est mal cadr
16
3. Le modle en V
Tests Test dune
Analyse
ahmed chabchoub
fonctionnalit
fonctionnels
Programm
e
Caractristiques
Modle en cascade amlior
17
Le plus utilis
4. Le modle itratif
ahmed chabchoub
Principe
A chaque tape, on rajoute de nouvelles fonctionnalits
Caractristiques
ahmed chabchoub
19
Modle en spirale Prototype
Cot cumulatif
incrmental
Dterminer les objectifs, Evaluer les alternatives
les alternatives, les contraintes Analyse Identifier et viter les risques
Progresser par tapes
des
risques
Revue critique Proto
proto3 oprationnel
proto1 proto2
Prvision besoinsConcevoir Simul.
projet
oprations Modles Benchmarks
Organisation Spec.
dveloppement besoins Conception
Conception
Intgration et test Valider dtaille
de l'organisation du projet conception Codage
Tests
Organiser les phases suivantes Accepter
tests Dvelopper et vrifier le
prochain niveau du produit
ahmed chabchoub 20
Introduction au qualit de
logiciel
ahmed chabchoub
21
La qualit
22
UN ENSEMBLE DE PRINCIPES ET DE MTHODES
ahmed chabchoub
ORGANISES EN STRATGIE GLOBALE, VISANT
MOBILISER TOUTE LENTREPRISE, EN FONCTION
DOBTENIR LENTIRE SATISFACTION DU CLIENT,
ET CE AU MOINDRE COT.
DFINITION DE LAFCERQ, ASSOCIATION FRANAISE DES CERCLES DE QUALIT
23
La qualit 24
ahmed chabchoub
WITH THIS DEFINITION, TO HAVE A QUALITY
PRODUCT THE REQUIREMENTS MUST BE
MEASURABLE, AND THE PRODUCTS
REQUIREMENTS WILL EITHER BE MET OR
NOT MET.
25
ahmed chabchoub
Selon Pressman
La qualit logicielle est:
Conformit aux exigences fonctionnelles et de
performance explicites, aux normes de
developpement explicitement documentes, et aux
caractristiques implicites qui sont attendues de tout
le logiciel professionnellement dvelopp
26
Importance de la qualit du
logiciel
ahmed chabchoub
Logiciel est une composante majeure des systmes
informatiques (environ 80% du cot) utiliss pour
communication (ex. syst. tlphone, syst. email)
sant (monitoring),
transport (ex. automobile, aronautique),
changes conomiques (ex. ecommerce),
entertainment,
etc.
27
28
ahmed chabchoub
Les dfauts du logiciel sont extrmement coteux en
terme
d'argent
de rputation
- de perte de vie
ahmed chabchoub
Plusieurs dsastres historiques attribus au
logiciel
1988 abattage d'un Airbus 320 par l'USS
Vincennes affichage cryptique et confusant du
logiciel de dtection
1991 chec de missile patriot calcul imprcis de
temps d des erreurs arithmtiques
London Ambulance Service Computer Aided
Despatch System plusieurs dcs
29
ahmed chabchoub
Le 3 Juin 1980, North American Aerospace Defense
Command (NORAD) rapporta que les U.S. taient
sous attaque de missiles
Echec du premier lancement oprationnel de la
navette spatiale dont le logiciel d'exploitation
temps rel consiste en environ 500,000 LOC
problme de synchronisation entre les ordinateurs
de contrle de vol
panne de 9 heures du rseau tlphonique longue
distance d'AT&T provoqu par un patch de code
non test
30
ahmed chabchoub
Ariane 5 crash 4 Juin 1996
Vol inaugural du lanceur europen Ariane 5
crash environ 40 secondes aprs dcollage
Perte d'environ milliards de dollars
L'explosion tait le rsultat d'une erreur
logiciel
31
32
ahmed chabchoub
Exception non capture due une erreur de floating
point:
conversion d'entier 64bit entier 16bit signed integer
appliqu un nombre plus large que suppos
Le module tait rutilis sans avoir t test
convenablement d'Ariane 4
Erreur n'tait pas suppos survenir avec
Ariane 4
Pas de gestionnaire d'exception
ahmed chabchoub
Mars Climate Orbiter 23 Septembre 1999
Mars Climate Orbiter disparat alors qu'il commence
orbitrer Mars.
Cot environ $US 125million
Panne due une erreur dans le transfert de
l'information entre une quipe au Colorado et une
quipe en Californie
Une quipe utilisa des units anglaises (ex., inches,
feet, pounds) tandis que l'autre utilisa des units
mtriques pour une opration cl.
33
ahmed chabchoub
Mars Polar Lander Dcembre 1999
Mars Polar Lander disparait l'atterrissage sur la
plante Mars
Panne probablement due la mise inattendue
d'un seul bit de donne.
dfaut non dcel durant les tests
quipes indpendantes on tests des aspects du
systme sparment
34
ahmed chabchoub
Virus et vers Internet
Ver Blaster ($US 525 millions)
Sobig.F ($US 500 millions 1milliard)
Exploitent des vulnrabilits bien connues du logiciel
Les dveloppeurs de logiciel ne consacrent pas assez
d'effort appliquer des leons apprises sur les causes des
vulnrabilits.
Les mmes types de vulnrabilits continuent tre vus
dans les nouvelles versions des produits qui taient dans
des versions prcdentes.
Problmes d'utilisabilit
35