Modèle incrémental dans SDLC : utilisation, avantage et inconvénient
Qu'est-ce que le modèle incrémental ?
Le modèle incrémentiel est un processus de développement logiciel dans lequel les exigences sont décomposées en plusieurs modules autonomes du cycle de développement logiciel. Le développement incrémental s'effectue par étapes depuis la conception de l'analyse, la mise en œuvre, les tests/vérifications et la maintenance.
Chaque itération passe par le exigences, phases de conception, de codage et de test. Et chaque version ultérieure du système ajoute des fonctions à la version précédente jusqu'à ce que toutes les fonctionnalités conçues soient implémentées.
Le système est mis en production dès la livraison du premier incrément. Le premier incrément est souvent un produit de base dans lequel les exigences de base sont satisfaites et des fonctionnalités supplémentaires sont ajoutées dans les incréments suivants. Une fois le produit de base analysé par le client, un plan est élaboré pour la prochaine étape.
Les caractéristiques d'un module incrémental comprennent
- Le développement du système est décomposé en de nombreux mini-projets de développement
- Des systèmes partiels sont successivement construits pour produire un système total final
- L’exigence la plus prioritaire est traitée en premier
- Une fois l'exigence développée, les exigences pour cet incrément sont gelées.
Phases incrémentielles | Activités réalisées par phases incrémentielles |
---|---|
Analyse des besoins |
|
Design |
|
Code |
|
Tests |
|
Quand utiliser les modèles incrémentaux ?
- Les exigences du système sont clairement comprises
- Lorsque la demande pour une sortie anticipée d'un produit se fait sentir
- Quand génie logiciel l'équipe n'est pas très compétente ou formée
- Lorsque des fonctionnalités et des objectifs à haut risque sont impliqués
- Une telle méthodologie est davantage utilisée pour les entreprises basées sur les applications Web et les produits.
Avantages et inconvénients du modèle incrémentiel
Avantages | Désavantages |
---|---|
Le logiciel sera généré rapidement pendant le cycle de vie du logiciel | Cela nécessite une bonne conception de la planification |
Il est flexible et moins coûteux de modifier les exigences et la portée | Des problèmes peuvent survenir en raison de l'architecture du système en tant que telle, toutes les exigences ne sont pas collectées à l'avance pour l'ensemble du cycle de vie du logiciel. |
Tout au long des étapes de développement, des changements peuvent être apportés | Chaque phase d'itération est rigide et ne se chevauche pas |
Ce modèle est moins cher que les autres | Corriger un problème dans une unité nécessite une correction dans toutes les unités et prend beaucoup de temps |
Un client peut répondre à chaque bâtiment | |
Les erreurs sont faciles à identifier |