Vous êtes sur la page 1sur 22

M22- GENIE LOGICIEL ET CONCEPTION

ORIENTEE OBJETS (UML)

Lotfi NAJDI
Année Universitaire 2022 / 2023
Génie Informatique
FPT Taroudant
Cycle de vie d’un logiciel
(Software Development Life Cycle SDLC)
Cycle de vie d’un logiciel

• Un Cycle de vie d’un logiciel définit les différentes étapes du développement d'un logiciel.

• Cycle de vie d’un logiciel est synonyme de méthodologie logiciel :

• Ordre et enchaînement des activités de développement

• Critères de passage d'une phase à l'autre (Pré et Post conditions pour chaque phase)

• Nombres de réalisation de chaque phases


Modèle en cascade(Waterfall Model)

Recueil des
Document d’expression des besoins
besoins

Spécification Document de spécification des besoins

Conception
Dossier de conception

Codage
Code source

Test
validation

Déploiement
Modèle en cascade (Waterfall Model)

Le modèle en cascade est le premier modèle qui été largement utilisé dans le monde du
logiciel afin de garantir le succès des projets.

Cycle de vie séquentiel :

• Chaque phase doit être achevée avant que la phase suivante puisse commencer et il n'y a
pas de chevauchement entre les phases.

• À chaque étape, il y a production d’un « livrable » (deliverable) qui sert de base pour
l’étape suivante.

• Contrairement aux modèles itératifs, chaque phase est réalisée une seule fois.

Délivrer la solution complète (le tout) d'un seul coup à la fin (modèle Big Bang)
Modèle en cascade(Waterfall Model)

Avantage :

• Simple et facile à comprendre et à utiliser

• Prédictible (en terme de temps et de ressources et des livrables ), vu que les exigences
sont fixées et n’évoluent pas au cours du projet.

Inconvénients :

• Rigide et non adaptable au changement

• Peu adapté si les besoins du client évoluent ou difficiles à déterminer au départ.

• La première version prend beaucoup de temps et n'est produite qu’en fin du cycle de vie.
Modèle en cascade(Waterfall Model)

Recommandé dans les scénarios suivant :

• Les exigences sont très bien documentées, claires et définitives.

• L'équipe a de l'expérience dans la réalisation de logiciels similaires et une maîtrise de la

technologie.

• La traduction des exigences en produit sera parfaite.

• Projets prédictible et répétitive


Le modèle en V

Expression des
Recette
besoins Préparation des test Exécution des tests

Test de
Spécification
validation

Conception Test
générale d’intégration

Conception
Test unitaire
détaillée

Codage des
fonctionnalité et tests
Le modèle en V

Variante du modèle en cascade qui met clairement en évidence la correspondance entre

phases menant à la réalisation et phases de vérification et validation:

• test unitaire

• test d’intégration

• test de validation (test système)

• test d’acceptation (recette)

Les tests sont préparés tout au long des phases menant à la réalisation et exécutés lors des

phases correspondantes.
Le modèle en V

Attention accordée à la validation à un stade initial du processus.

Avantages :

• Détection préalable des défauts/problèmes potentiels

• Compréhension plus élaborée des exigences en spécifiant leurs validations.

• Placer la vérification et la validation au centre des préoccupations dès les premiers stades
du développement et imposer l’idée de livrable évaluable.

Inconvénient : un travail de préparation en amont plus important

Ce modèle convient aux projets classiques qui mettent la fiabilité et la qualité logiciel au
cœur de leurs préoccupations.
Modèle incrémental
Exigences

Conception

Codage

Test

Déploiement Incrément 1

Exigences

Conception

Codage

Test

Déploiement Incrément 2

Exigences

Conception

Codage

Test

Déploiement Incrément 3
Modèle incrémental

Construire l’application en plusieurs éléments (Incréments) , selon multiples cycles en


cascade avec possibilité de chevauchement des cycles .

Approche de la livraison par étapes.

Avantages :

• Délivrer de la valeur aux clients de manière plus rapide

• Obtenir un feedback et effectuer les changements nécessaires entre les incréments

Inconvénients : Peut entraîner des travaux à refaire et coûter plus cher

Recommandé dans les cas suivants :

• L'organisation peut bénéficier de la livraison rapide d'une partie du produit.

• La réalisation d'un incrément peut aider à la mise en œuvre des incréments ultérieurs.
Variant du Modèle incrémental
( à partir des exigences)

Exigences

Conception

Codage

Test
Déploiement Incrément 1

Conception

Codage

Test

Déploiement Incrément 2

Conception

Codage

Test

Déploiement Incrément 3
Variant du Modèle incrémental
( à partir d’une conception préalable)

Exigences

Conception

Codage

Test
Déploiement Incrément 1

Codage

Test
Déploiement Incrément 2

Codage

Test
Déploiement Incrément 3
Incrémentale vs Itératif

Incrémentale

Itératif
Modèle en spirale (Approche itérative)
Modèle en spirale (Approche itérative)

Le modèle en spirale est un modèle de processus de développement logiciel axé sur le risque
c.-à-d. qui met met l’accent sur l’identification et la résolution des risques :

• Humains : manque de compétences, d’expérience, de communication, de motivation, etc.,

• Organisationnels : le manque de temps, de budget, non-disponibilité de composants


externes, etc.,

• technologiques : exigences démesurées par rapport à la technologie, technologie non


maîtrisée, problèmes de performance, etc.

Il s'agit d'une combinaison du modèle en cascade et du modèle itératif.

Une seule livraison où le produit final est réalisé en utilisant plusieurs itérations.

Après chaque itération, on se rapproche du produit final adéquat ou souhaité.


Modèle en spirale (Approche itérative)

Le modèle spiral est appelé un méta-modèle car il utilise à la fois le modèle en cascade et le
modèle en prototype.

Chaque itération (ou cycle de la spirale) correspond à une séquence de quatre phases :

1. Déterminer les objectifs et trouver des solutions possibles : Recueil et l'analyse des besoins.
Sur la base des exigences, les objectifs sont définis et différentes solutions possibles sont
proposées.

2. Analyse et résolution des risques - Dans ce quadrant, toutes les solutions proposées sont
analysées et tout risque potentiel est identifié, analysé et résolu. Au cours de la première
spirale, lorsque les exigences globales ne sont pas très claires, le "preuve de concept" (POC)
ou prototype est créée pour obtenir le feedback du client.
Modèle en spirale (Approche itérative)

3. Développer et vérifier (tester) : Cette phase comprend la mise en œuvre effective des

différentes fonctionnalités. Toutes les fonctionnalités mises en œuvre selon la solution

retenue sont ensuite vérifiées par des tests approfondis.

4. Revue (Review ) et planification :

• Le logiciel est évalué par le client.

• Supervision des risques, tels que le dépassement des coûts ou des délais

• Planification de l’itération suivante .


Modèle en spirale

Avantages :

• Flexibilité en matière d'exigences : L'évolution des besoins peut être prise en compte.

• Les exigences peuvent être appréhendées avec plus de précision à l’aide du prototypage.

• Les utilisateurs peuvent apprécier le système dès le début.

• Le développement peut être divisé en petites parties et les parties risquées peuvent être

développées au début tôt, ce qui contribue à une meilleure gestion des risques.
Modèle en spirale

Inconvénients :

• Complexe : le modèle spiral est beaucoup plus complexe que les autres modèles SDLC.

• Coûteux : Le Modèle Spiral ne convient pas aux petits projets car il est coûteux.

• La réussite du projet dépend beaucoup de l'analyse des risques.

Sans experts très expérimentés, le développement d'un projet à l'aide de ce modèle sera un

échec.

Le modèle en spirale est préconisé pour les projets importants, coûteux et compliqués.

Vous aimerez peut-être aussi