Please enable JavaScript.
Coggle requires JavaScript to display documents.
Cycle de vie d'un logiciel (Le modèle général du cycle de vie (Etape 5…
Cycle de vie d'un logiciel
Définition
Ensemble séquentiel de phases, dont le nom et le nombre sont déterminés en fonction des besoins du projet, permettant généralement le développement d’un service ou d’un produit
La mise en place d’une organisation de
production de systèmes permet
de maîtriser la qualité des produits
de maîtriser les coûts
de maîtriser les délais
Le modèle général du cycle de vie
Etape 1 : Analyse et définition des
besoins(début du développement)
L’expression des besoins
on consulte les utilisateurs
on définit avec eux les fonctionnalités et les
contraintes du système
on s’attache à rédiger les documents
compréhensibles
Document produit (analyse –
spécification)
Fonctionnalités du logiciel
Interfaces utilisateurs
Comportements en cas d'erreurs
Performances requises
Interfaces avec autres logiciels
Interfaces avec le(s) matériel(s)
Contraintes de réalisations
Etape 2 : Conception du système et
du logiciel
fonctions logicielles
On construit alors un modèle d’architecture
une étude préliminaire des fonctions du système
une analyse fonctionnelle du logiciel
une analyse détaillée du logiciel
Etape 3 : Réalisation et tests
unitaires
On a découpé les fonctions en unités de
programme
Les tests des programmes sont ensuite effectués.
On vérifie que les résultats obtenus sont corrects et
correspondent aux spécifications énoncées.
Etape 4 : Tests du système
Les unités de programme étant testées, on
passe à la phase d’intégration de ces
unités.
Etape 5: Utilisation et maintenance
Lorsqu’on est satisfait du résultat on passe à la
phase de livraison aux utilisateurs.
Tous les documents d’installation, de
fonctionnement, d’utilisation du système
doivent accompagner cette livraison.
La mise en exploitation par les utilisateurs
peut conduire
à des corrections d’erreurs
à des améliorations des programmes
Des augmentations des fonctionnalités car
les besoins ont évolués.
Les Modèles des processus de
développement d’un logiciel
Le Modèle en CASCADE
Cycle de vie linéaire, séquentiel, dit «en cascade», celui-ci a été défini dans les années 70 par Winston W. Royce, il est basé sur la production d’éléments livrables.
Le développement en cascade est en général rythmé par la génération de documents qui servent de validation pour le passage d’une phase à l’autre : ce sont les livrables ou produits finis documentaires.
Avantages
aisé à comprendre et à mettre en œuvre
forte structuration : définition puis
réalisation
la documentation guide les étapes
Inconvénients
modèle idéalisé, ne tient pas compte de la
nature itérative d’un projet
logiciel délivré seulement à la fin du projet
coût de gestion en amont important
CYCLE EN V
La représentation la plus courante du développement
d’un logiciel est une représentation du cycle de vie en V
Représentation qui traduit deux niveaux
Niveau cycle de vie du système
Niveau cycle de vie du logiciel
Les étapes
Expression des besoins
Conception générale
Conception détaillée
Conception détaillée
Tests unitaires
Intégration
Validation
Avantages
La remontée du cycle est bien verrouillée par
des plans et des livrables
Convient bien à des grands projets
La notion d’intégration et de plan d’intégration
figure clairement
A chaque étape du développement correspond
une phase de validation
Inconvénients
L’élément de base reste une cascade
logiciel délivré seulement à la fin du projet
CYCLE EN SPIRALE
Proposé par Boehm en 1988
C’est un modèle mixte (peut utiliser le modèle en
cascade, en V ou prototypage)
Il est constitué de cycles.
Analyse des risques, évaluation des alternatives
conception et développement de la solution
retenue
Simulation et tests
Planification du prochain cycle
Avantages
Il combine les avantages des modèles en
cascade/V
I tient compte de la nature itérative d’un projet
I bonne visibilité au cours du cycle de vie
Inconvénients
Il est difficile à comprendre sans être expert
technique
Il nécessite capacité à bien analyser les risques
Il nécessite gestionnaires compétents
Prototypage
Permet de tester les différents concepts et
exigences
Permet de montrer aux clients les fonctions que
l’on veut mettre à l’oeuvre
Avantage
Les efforts consacrés au développement d’un
prototype sont le plus souvent compensés par ceux
gagnés à ne pas développer des fonctions inutiles
détection des fonctions manquantes
amélioration des fonctions complexes
démonstration de la faisabilité
utilisation comme spécification d'un système
Inconvénients
coût de développement
incite les changements côté utilisateur
Modèle incrémental
Le produit est délivré en plusieurs fois, de manière
incrémentale, c’est à dire en le complétant au fur et à
mesure et en profitant de l’expérimentation
opérationnelle des incréments précédents.
Les premiers incréments peuvent être
des maquettes
des prototypes
Conclusion
Il n’y a pas de modèle idéal car tout dépend des
Circonstances
Le modèle en cascade ou en V est risqué pour les
développements innovants car les spécifications et la
conception risquent d’être inadéquats et souvent remis en
cause
Le modèle incrémental est risqué car il ne donne pas
beaucoup de visibilité sur le processus complet
Souvent, un même projet peut mêler différentes approches