You are on page 1of 54

ATELIER GNIE Logiciel

CHAPITRE 2
CYCLE DE VIE

1 Atelier Gnie Logiciel Sance 2


Cycle de vie
Dfinition
Modlisation
Processus
Acteurs
Enchainement
Activits de dveloppement
Modles de dveloppement

2 Atelier Gnie Logiciel Sance 2


Dfinition

Etapes de vie dun logiciel


Exploitation:
Naissance : Dploiement
Maintenance
Avant projet

Croissance: Mort:
Dveloppement Retrait

3 Atelier Gnie Logiciel Sance 2


Modlisationles processus
Processus de gestion
Activits

Structuration (WBS)
Estimation,
planification, Processus qualit
Suivi et Pilotage
Documentation
Assurance qualit
Processus de dveloppement
Contrle qualit
Normes, etc..

Activits
Analyse des besoins
Conception Activits
Codage
Tests
Maintenance

4 Atelier Gnie Logiciel Sance 2


Modlisation Acteurs

Client
*

Besoins

*
* Gestionnaire
Utilisateur

Acceptation

*
Dveloppeur

* Acteurs

5 Atelier Gnie Logiciel Sance 2


ModlisationEnchainement

ACTIVITS
QUALIT

6 Atelier Gnie Logiciel Sance 2


Activits de dveloppement

Une activit?
Ensemble dactions servant un objectif bien dtermin
dans le processus de dveloppement de logiciel

Le rsultat dune activit peut tre:


Document cahier des charges, rapport, documentation,
modles, plan de tests
Code sources, prototype, tests,
Rsultats de tests
Planning

Le rsultat dune activit peut servir dans une autre


activit

7 Atelier Gnie Logiciel Sance 2


Activits de dveloppement

Expression des
besoins Analyse

Conception
Implmentation

Vrification

Maintenance Validation

8 Atelier Gnie Logiciel Sance 2


Expression des besoins

Question Pourquoi et quoi ?

But Dfinir le problme

Tches
Etude de faisabilit
Pourquoi faut-il disposer dun logiciel ?
Quelles sont les alternatives pour lacqurir ? Acheter ou dvelopper ?
A-t-on le budget, le personnel, le matriel necessaires ?

tude informelle des fonctionnalits externes


Identification dun point de vue mtier / utilisateur
Expression des besoins dans une forme textuelle avec schmas, graphes,
etc.

Livrables Cahier des charges

9 Atelier Gnie Logiciel Sance 2


Analyse

Question Quoi?

But Dcrire le problme

Tches
Cueillette dinformations
Exigences fonctionnelles
Exigences qualits ou non-fonctionnelles (contraintes)

Modlisation des fonctions que le logiciel doit fournir

Construction de prototypes (pour laborer la spcification)


Prioriser les lments de la spcification
Produire et valuer des solutions alternatives
Examiner les recommandations avec le chef de projet et/ou le client

Livrables Document de spcification

10 Atelier Gnie Logiciel Sance 2


Conception

Question Comment?

But Dcrire la solution

Tches
Conception architecturale dcomposition et organisation de l'application
en modules (composants)
Bases de donnes
Environnement dexploitation dautres logiciels
Composants logiciels bibliothques, frameworks , etc,

Conception dtaille Pour chaque module, description de la manire


dont les services et fonctions sont raliss
algorithmes essentiels
structures de donnes utilises, etc.

Livrables Document de conception

11 Atelier Gnie Logiciel Sance 2


Implmentation

Question Comment?

But Mise en uvre de la solution

Tches
Construction des composants logiciels (modules) en utilisant les outils de
dveloppement
Implmentation directe des conceptions
Gnration de code
Rutilisation de code
Vrification des modules

Intgration des composants


Regroupage des composants
Validation de ladquation de limplantation, de la conception et de larchitecture par
rapport au cahier des charges
Vrification par rapport la spcification

Livrables Code source


12 Atelier Gnie Logiciel Sance 2
Vrification

Question Est-ce bien fait?

But valuation de la solution par rapport la spcification

Tches
Ralisation des diffrents niveaux de tests
Tests unitaires: par module
Tests d'intgration: composition de modules
Tests de systme: logiciel entier

Ralisation de linspection du code


Vrification du respect des normes de dveloppement
Identification des erreurs

Livrables Rapport de vrification

13 Atelier Gnie Logiciel Sance 2


Validation

Questions est ce quon a construit le bon logiciel?

But valuation de la solution par rapport aux besoins (client)

Tches
Raliser les tests
Systmes pour vrifier le logiciel en entier chez le client dans son environnement
dexploitation

dacception qui sont dfinis par le client dans le cahier des charges

Livrables le logiciel

14 Atelier Gnie Logiciel Sance 2


Maintenance

Questions est ce que le logiciel est toujours bon et bien?

But Surveiller le comportement du logiciel par rapport aux


besoins et contraintes

Tches
Maintenance corrective corriger les erreurs
Maintenance adaptative sadapter des changements denvironnement
Maintenance perfective amliorations
Maintenance prventive pour faciliter les oprations de maintenance
venir

Livrables le logiciel modifi

15 Atelier Gnie Logiciel Sance 2


Modles Caractrisation

Reprsentation schmatique du cycle de dveloppement

Chaque modle se caractrise par:

Les phases (ensembles dactivits entreprendre)

Lordre et la succession des phases

La communication entre les phases


Peut-on revenir aux tapes prcdentes?
Quand et comment?

16 Atelier Gnie Logiciel Sance 2


Modles Catgories

Cascade

Linaires successions de phases


Modles de dveloppement

Prototypage

Certaines phases dclenchent


Itratifs Spirale la rvision du rsultat des
phases prcdentes.

UP

Hybrides Agile

17 Atelier Gnie Logiciel Sance 2


Modles Cascade
Expression
des besoins

Analyse
spcification

Conception
Prliminaire
+
Dtaille

Codage
+
intgration

Installation
+
Maintenance
18 Atelier Gnie Logiciel Sance 2
Modles Cascade

Modle linaire: Successions de phases excutes dans lordre indiqu

Ax sur la documentation Chaque phase fournit la sortie un produit


livrable documents ou code

Transition passage dune phase une autre


Compltion du produit livrable

Vrification et validation du produit livrable afin d'liminer les anomalies et les


incohrences

Une phase ne commence quaprs avoir valid les rsultats de la phase prcdente,

Retour uniquement la phase prcdente On ne peut changer que les


dcisions prises la phase prcdente

19 Atelier Gnie Logiciel Sance 2


Modles Cascade

Avantages

Simple et facile comprendre et mettre en uvre


La responsabilit humaine est facile associer
Permet une conception de grande qualit
Production de la documentation
A permis la normalisation des cadres conceptuels et
terminologiques des diffrentes activits
Pertinent dans le cas des petits projets

20 Atelier Gnie Logiciel Sance 2


Modles Cascade

Inconvnients
Cadre trop rigide organisation squentielle
Obligation de dfinir la totalit des besoins pendant la phase davant
projet Les besoins ne sont pas toujours clairement identifis

Fait lhypothse que les besoins ne changent pas au cours du


dveloppement OR Les besoins sont gnralement modifies aprs
la phase de spcification

Pas de feedback avant la livraison au client Manque


dimplication du client: dbut du projet et au moment de la
livraison

Ne reflte pas toujours les pratiques relles

21 Atelier Gnie Logiciel Sance 2


Modles V

Variante du modle en cascade

Ax sur la vrification / validation Chaque tape de


dveloppement a une phase de tests qui lui est associe

Les phases sont relies par deux types de relations:

Relation en V les phases se droulent squentiellement en suivant le V

Relation transversale une partie des rsultats de la phase de dpart est


utilise par la phase darrive

Exemple La phase de la conception prliminaire possde:


Une relation de succession avec la conception dtaille
Une relation dutilisation avec la phase dintgration

22 Atelier Gnie Logiciel Sance 2


Modles V

Validation
Expression des Installation et
besoins tests systme

Validation
Analyse Tests
spcification dacceptation

Vrification Intgration et
Conception tests
architecturale dintgration

Vrification
Conception
Tests unitaires
dtaille

Codage

23 Atelier Gnie Logiciel Sance 2


Modles V

Avantages

Meilleur prparation aux tests Ne pas noncer une


proprit impossible vrifier une fois le logiciel ralis
Toute dcomposition est accompagne dune description de la
recomposition

Toute description dun composant doit tre accompagne de


tests permettant de sassurer quil correspond sa description

Gnration de documents

Contrle de qualit sur chaque phase

24 Atelier Gnie Logiciel Sance 2


Modles V

Inconvnients

Difficile appliquer rigoureusement


Ne gre pas les activits parallles
Ne gre pas explicitement les changements des
spcifications
Ne contient pas dactivits danalyse de risque

25 Atelier Gnie Logiciel Sance 2


Modles Itratifs
Introduit lide de ritration de certaines tapes et
de construction incrmentale

Le dveloppement se droule en plusieurs itrations


chaque itration

Contient certaines activits principales analyse,


conception, codage et intgration
Donne lieu un prototype

Plusieurs modles
Avec Prototypage
Spirale
Unifis

26 Atelier Gnie Logiciel Sance 2


Modles Itratifs

Le dveloppement se droule en plusieurs itrations

Analyse

Itration
Conception
N fois

Codage

Intgration
Prototype

27 Atelier Gnie Logiciel Sance 2


Modles avec prototypage

Variante du modle en cascade

Ax sur lactivit de prototypage


construction dune version du logiciel qui :

Ne rpond pas tous les besoins fonctionnels,


Ne respecte pas toutes les contraintes techniques,
Ne satisfait pas forcement les exigences de qualit
et de performances

28 Atelier Gnie Logiciel Sance 2


Modles avec prototypage

Utilis pour remdier certains points faibles du


modle en cascade dans les phases suivantes :

Expression et analyse des besoins


Faisabilit technique de certains besoins
Besoins mal exprims et susceptibles de changer

Conception
Incertitude propos de certains aspects de conception (interface,
architecture, etc.)
Performances des algorithmes
Adquation des structures de donnes

Codage
Livraison progressive du logiciel
Maitriser la complexit de lintgration

29 Atelier Gnie Logiciel Sance 2


Modles avec prototypage

Expression des
besoins

couter le besoin Spcifier le Construire/


du client besoin Amliorer le prototype
Analyse/
Spcification

Essaie par le client

Prototype jetable Extraire da la spcification


correcte

But Eclaircir le besoin du client

Affiner la spcification par validation successives du prototype jusqu' une spcification


dtaille qui reflte le vrai besoin du client

30 Atelier Gnie Logiciel Sance 2


Modles avec prototypage

Conception
architecturale

Slectionner un Construire/ Evaluer le


lment conceptuel Amliorer le prototype prototype
Conception
dtaille

Extraire une conception


satisfaisante
Prototype jetable/rutilisable

But Evaluer un choix conceptuel effectu par le dveloppeur

Affiner la conception par validation successives du prototype jusqu' une conception


satisfaisant les exigences techniques

31 Atelier Gnie Logiciel Sance 2


Modles avec prototypage

Noyau

Nouvelle
Codage version

Intgration
Construire/ amliorer valuer le
le prototype prototype

Version finale

Version du
Prototypage volutif produit

But construire le logiciel de manire incrmentale et itrative

Construire une version satisfaisant les exigences techniques et lintgrer au systme


partiel
32 Atelier Gnie Logiciel Sance 2
Modles Spirale

Combine les meilleurs aspects du modle en cascade et du


modle par prototypage

Ax sur les risques


Risque Un vnement redout dont loccurrence est plus ou
moins prvisible et provoquant des dommages sur le projet.

Il ne faut pas confondre risque et problme


Un problme est un risque qui sest rvl.

Exemples
Choix techniques architecture, composants
Intgration composants inappropris (fonctions, interfaces, etc.),
rutilisation de composants,
Calendriers et budgets irralistes,
Qualit Performances

33 Atelier Gnie Logiciel Sance 2


Modles Spirale

Le projet est dcoup en N cycles successifs suivis dun dernier


cycle o le logiciel est intgralement dvelopp

Chaque cycle comprend 4 tapes


Dfinition et identification des objectifs, alternatives, contraintes
Evaluation (par simulation, prototypage, etc.) des alternatives et risques
Dveloppement mini cascade : analyse, conception, implmentation,
test
Evaluer les rsultats des tapes traverses + planifier le prochain cycle.

Le modle en cascade en un cas particulier dune spirale un


cycle

34 Atelier Gnie Logiciel Sance 2


Modles Spirale

Dfinition et identification des Identification et Evaluation des


objectifs, alternatives, contraintes risques et proposition des solutions

Prototypes

Dveloppement
conception
Implmentation
Planification du cycle suivant Tests
Validation

Vers lobtention dun


35
systme fini
Atelier Gnie Logiciel Sance 2
Modles Spirale

Avantages
Modle flexible satisfaisant beaucoup de dmarches de
dveloppement

Les besoins sont affins au fur et mesure du dveloppement

La validation fonctionnelle et technique est effectue trs tt

Spectre dutilisation trs large: peut tre appliqu pour


diffrents type de logiciels

Adapt particulirement aux projets innovants, et risques et


dont les enjeux sont importants.
36 Atelier Gnie Logiciel Sance 2
Modles Spirale

Inconvnients
Le cycle N ne s appuie pas obligatoirement sur le cycle
N-1 itration sur les risques

Chaque cycle produit un composant du systme qui est


intgr en phase finale

Les prototypes dveloppes chaque cycle ne sont pas


obligatoirement retenus pour lintgration

Ncessite beaucoup de comptence en matire


danalyse et d estimation des risques
37 Atelier Gnie Logiciel Sance 2
Modles Processus Unifi

Motivations
Cest quoi?
Principes
Cycle de vie

38 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Motivations
Limitations des processus classiques
Besoins mal compris du client et de lutilisateur final
Incapacit grer les modifications et lvolution des besoins
Problmes pendant lintgration des modules

Emergence de lapproche Objet Capacit satisfaire les


exigences qualit

Unification des mthodes objets OMT, Booch et OOSE

Succs du langage UML

39 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Cest quoi?
Cest un Patron de processus gnrique dfini
par un ensemble de principes

Peut tre adapt diffrentes situations:


Types de systmes logiciels,
Domaines d'application,
Types d'entreprises,
Niveaux de comptences,
Tailles de projets

40 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes

Problme
(Besoins)
Solution
Exigences Architecture (Systme)

Pilot par Centr sur

Construction Itrativement
de modles Processus et par
(UML) Bas sur Unifi Se droule incrments

41 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes dveloppement itratif et incrmental


Une itration ralise un sous-projet et donne lieu un
incrment (version du produit)

Un incrment correspond aux stades de dveloppement du


produit:
Enrichissement dune Srie de prototypes dvelopps en chane
(mmes caractristiques que le produit final).
Le premier prototype constitue le noyau, on ritre jusquau produit
finale
Chaque prototype est intgr l'ensemble des prcdents et
chaque tape le produit est test exploit et maintenu dans son
ensemble.

42 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes dveloppement itratif et incrmental

INCRMENTS
DLIVRS

TEMPS

43 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Bas sur la modlisation


Construire une srie de modles UML
Description des cas dutilisation et leurs relations avec les
Modle des cas dutilisation
utilisateurs (Acteurs)

Description dtaille des cas dutilisation et rpartition du


Modle danalyse
comportement du systme sur divers objets

Dfinition de la structure statique du systme sous forme


de sous systme, classes et interfaces ;
Modle de conception
Dfinition des collaborations entre les sous systmes les
classes et les interfaces
Modle dimplmentation Codage et Intgration des composants (code source)

Modle de dploiement Rpartition des composants sur le matriel

Modle de test Description des cas de test et des classes de test

44 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Pilot par les exigences

Modliser la vision de lutilisateur et ses besoins par les


cas dutilisation

Construire le rfrentiel des Exigences catalogue des


exigences

Servent de rfrence pour la ralisation et la validation


de tous les autres modles

45 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Pilot par les exigences


Les exigences servent de rfrence pour la ralisation et la validation de
tous les autres modles

Modle des cas Spcifi par


dutilisation

Ralis par

Modle Distribu par


danalyse Implment par
Modle de
conception Vrifi par

Modle de
dploiement Modle
dimplmentation Modle de tests

46 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Centr sur larchitecture

Modliser la structure globale du Systme et en


tenant compte des facteurs suivants:
La plateforme dexcution Matriel, systme, BD,
rseau, etc.
Les composants rutilisables Librairies, caisse
outils, composants du commerce, etc.
Les considrations de dploiement et les besoins
techniques les performances, la fiabilit, la
robustesse, etc.

47 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Centr sur larchitecture

Modliser la structure globale du Systme et en


tenant compte des facteurs suivants:
Reprsenter la vision du dveloppeur

Construire le rfrentiel de la Solution

Sert de rfrence pour la ralisation et la validation des


modles de conception, de codage, dintgration et de
test

48 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Principes Centr sur larchitecture


4 visions du systme

Vue
logique Vue des
Composants
Vue des Cas
dutilisation

Vue des Vue de


processus dploiement

49 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Le cycle de vie peut tre dcrit selon deux axes:


Un axe horizontal ( phases)
Reprsentation de laspect dynamique du processus
Organisation dans le temps en termes de cycles, phases,
itrations et jalons

Un axe vertical ( Activits)


Reprsentation de laspect statique du processus
Organisation selon les activits de dveloppement en
termes dactivits, dartfacts, de rles et denchainement
dactivits

50 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Cycle de vie
Organisation dans le temps (phases)

Flux (workflow) du processus Dmarrage laboration Construction Transition


Organisation selon les Activits

Modlisation mtier
Modlisation des
besoins
Analyse et conception

Implmentation
Tests
Dploiement
Flux (workflow) de gestion
Gestion de Configuration
et des Evolutions
Gestion de projet
Environnement
Iter. Iter. Iter. Iter. Iter. Iter. Iter.
#1 #2 #n #n+1 #n+2 #m #m+1
Itrations
51 Atelier Gnie Logiciel Sance 2
Modles Processus Unifi

Cycle de vie les phases


Quatre Phases

Chaque phase se droule sur plusieurs itrations

Une itration reprsente un cycle de complet de


lanalyse des besoins la version excutable

52 Atelier Gnie Logiciel Sance 2


Modles Processus Unifi

Cycle de vie les phases

53 Atelier Gnie Logiciel Sance 2


Cycle de vie Dimensions

Ingnierie des
exigences

Gnie logiciel Conception et


Assurance qualit codage

Gestion de projets

54 Atelier Gnie Logiciel Sance 2