Universit de Tlemcen Facult des Sciences Dpartment dinformatique

  • Slides: 32
Download presentation
Université de Tlemcen Faculté des Sciences Départment d’informatique Filière : L 2 Informatique Génie–logiciel

Université de Tlemcen Faculté des Sciences Départment d’informatique Filière : L 2 Informatique Génie–logiciel n 3. Modèles du cycle de vie du logiciel Azeddine Chikh 2016 -2017 (Semestre 2)

Objectifs de ce cours n Connaître n Les modèles de cycle de vie d’un

Objectifs de ce cours n Connaître n Les modèles de cycle de vie d’un logiciel: n n n Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Le prototypage n Remarque: en pratique il y a mélange de divers modèles 2

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Processus Le prototypage 3

1. Le modèle en cascade / Représentation graphique 4

1. Le modèle en cascade / Représentation graphique 4

1. Le modèle en cascade / Phases Phase Role Etude préalable Y-a-t-il lieu de

1. Le modèle en cascade / Phases Phase Role Etude préalable Y-a-t-il lieu de réaliser le logiciel ? Analyse – Spécification Définition précise des besoins et des exigences Conception générale Architecture du système Definition des modules Conception détaillée Raffinement des éléments précédents jusqu’à l’obtention d’une forme permettant d’écrire immédiatement les programmes Codage Écriture des textes des programmes 5

1. Le modèle en cascade / principe n Décrit par Royce en 1970 n

1. Le modèle en cascade / principe n Décrit par Royce en 1970 n On doit suivre toutes les étapes n L’ordre doit être respecté : on passe à l’étape n que lorsque l’étape n-1 est terminée n Les remises en cause font remonter d’un seul niveau n Principale faiblesse : difficulté à s’adapter aux changements une fois le processus lancé 6

1. Le modèle en cascade / Analyse 7

1. Le modèle en cascade / Analyse 7

1. Le modèle en cascade / Conception 8

1. Le modèle en cascade / Conception 8

1. Le modèle en cascade / Vérification et Validation • • Vérification Are we

1. Le modèle en cascade / Vérification et Validation • • Vérification Are we doing the product right? Validation Are we doing the right product? 9

1. Le modèle en cascade / Tests n Tests unitaires, Les composants sont testés

1. Le modèle en cascade / Tests n Tests unitaires, Les composants sont testés individuellement n Tests d’intégration, Test du système global n Tests de recette, Test avec des données clients pour vérifier que le système répond aux exigences du client 10

1. Le modèle en cascade / Evolution du logiciel 11

1. Le modèle en cascade / Evolution du logiciel 11

1. Le modèle en cascade / Problèmes n Modèle bien adapté si les spécifications

1. Le modèle en cascade / Problèmes n Modèle bien adapté si les spécifications peuvent être précises dès le début et changeront peu n Toutefois, il est rare d’avoir des spécifications stables n Les tests sont prévus tardivement n Le modèle en cascade est principalement utilisé dans les grands projets où les systèmes sont développés sur plusieurs sites n Dans ce cas, le modèle en cascade facilite la planification du projet 12

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Processus Le prototypage 13

2. Le modèle en V / Représentation graphique 14

2. Le modèle en V / Représentation graphique 14

2. Le modèle en V / Déroulement du processus 15

2. Le modèle en V / Déroulement du processus 15

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Processus Le prototypage 16

3. Le modèle incrémental / Représentation graphique 17

3. Le modèle incrémental / Représentation graphique 17

3. Le modèle incrémental / Principe Ce modèle est du a D. L. Parnas

3. Le modèle incrémental / Principe Ce modèle est du a D. L. Parnas 1. Plutôt que de livrer un système en une fois, • le développement et la livraison sont découpés en incréments, • chaque incrément permettant de livrer une partie de la fonctionnalité 2. Les exigences sont ordonnées suivant leur priorité. • Les exigences les plus prioritaires sont inclues dans les premiers incréments 3. Lorsque le développement d’un incrément a commencé, les exigences sont figées. • Les exigences pour les autres incréments peuvent continuer à évoluer 18

3. Le modèle incrémental / Bénéfices 1. Les coûts de l’adaptation aux évolutions des

3. Le modèle incrémental / Bénéfices 1. Les coûts de l’adaptation aux évolutions des exigences clients sont réduits • Le volume d’analyse et documentation qui doivent être conçus à nouveau est moindre que dans le modèle en cascade 2. Il est plus facile d’avoir des feedbacks réguliers du client • Les clients peuvent faire des commentaires lors de démonstrations et constater l’avancée du travail 3. Possibilité de livrer plus rapidement des morceaux de logiciels utiles au client • Le client peut utiliser des morceaux de logiciels plus tôt que dans le modèle en cascade 19

3. Le modèle incrémental / Problèmes 1. Le processus n’est pas visible (moins que

3. Le modèle incrémental / Problèmes 1. Le processus n’est pas visible (moins que dans le modèle en cascade) • Les managers ont besoin de documents pour mesurer les progrès. Si le système évolue rapidement il n’est pas productif de produire des documents reflétant chaque version du système 2. La structure du système a tendance à se dégrader à chaque nouvel incrément • À moins que du temps et de l’argent soient dépensés pour reconstruire le logiciel pour l’améliorer, les changements réguliers conduisent à une détérioration de la structure du logiciel. 20

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Le prototypage 21

4. Le modèle orienté réutilisation / Représentation graphique 22

4. Le modèle orienté réutilisation / Représentation graphique 22

4. Le modèle orienté réutilisation / Principe 1. Basé sur une réutilisation systématique de

4. Le modèle orienté réutilisation / Principe 1. Basé sur une réutilisation systématique de composants existants (Commercial-Off-The-Shelf – COTS) • pour concevoir un nouveau système 2. Les étapes du processus • Analyse des composants • Spécification des modifications • Conception avec réutilisation • Développement et intégration 3. De plus en plus utilisé de nos jours 23

4. Le modèle orienté réutilisation / Les types de composants logiciels 1. Web services

4. Le modèle orienté réutilisation / Les types de composants logiciels 1. Web services • Développés selon des standards • Disponibles par appel sur un serveur 2. Collections d’objets intégrés dans un framework (tel que. NET ou J 2 EE) 3. Logiciels autonomes (COTS) configurés pour une utilisation dans un environnement particulier 24

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Le prototypage 25

5. Le modèle en spirale / Représentation graphique 26

5. Le modèle en spirale / Représentation graphique 26

5. Le modèle orienté réutilisation / Principe Introduit par Boehm 1. Le processus de

5. Le modèle orienté réutilisation / Principe Introduit par Boehm 1. Le processus de développement est représenté par une spirale plutôt qu’une séquence d’activités avec retours arrière éventuels 2. Chaque boucle dans la spirale représente une étape du processus de développement 3. Les risques sont explicitement adressés et résolus tout au long du processus 27

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le

Plan du cours 1. 2. 3. 4. 5. 6. Le modèle en cascade Le modèle en V Le modèle incrémental Le modèle orienté réutilisation Le modèle en spirale Le prototypage 28

6. Prototypage / Représentation graphique 29

6. Prototypage / Représentation graphique 29

6. Prototypage / Principe 1. Un prototype est : 1. 2. est une version

6. Prototypage / Principe 1. Un prototype est : 1. 2. est une version initiale/intermédiaire d’un système, utilisée pour démontrer des concepts et faire des essais de choix de conception est basé sur des langages ou outils de prototypage 2. Un prototype se focalise : 1. 2. plutôt sur des côtés du produit qui ne sont pas bien compris sur les exigences fonctionnelles plutôt que les non fonctionnelles 3. Un prototype peut être utilisé pour: 1. 2. Le processus de spécification pour aider à l’élicitation des exigences et leur validation L’étape de conception, pour explorer des choix et proposer diverses versions d’interfaces 30

6. Prototypage / Divers types de prototypes 1. Prototype exploratoire (maquette) • • •

6. Prototypage / Divers types de prototypes 1. Prototype exploratoire (maquette) • • • Pour expliciter plus clairement l’expression des besoins (exigences) Horizontal : permet de tester toutes les fonctionnalités à un niveau abstrait Vertical : quelques fonctions sont testées complètement 2. Prototype expérimental • Etude de choix de conception 3. Prototype évolutif • Réalisé par raffinements successifs 31

6. Prototypage / Bénéfices • Améliorer la facilité d’utilisation du système • Meilleure adéquation

6. Prototypage / Bénéfices • Améliorer la facilité d’utilisation du système • Meilleure adéquation avec les besoins réels • Améliorer la qualité de la conception • Améliorer la maintenabilité • Réduire les efforts de développement 32