Cours 2 : Cycles de vie de logiciels COURS IGL COURS 2 CYCLES DE VIE DE LOGICIE

Cours 2 : Cycles de vie de logiciels COURS IGL COURS 2 CYCLES DE VIE DE LOGICIELS 1 Mostefai Mohammed Amine – m_mostefai@esi.dz Batata Sofiane – s_batata@esi.dz Cours IGL, Copyright © 2011, ESI Découvrir les principales activités de développement de logiciels Connaître les cycles de vie (SDLC) et leur motivation Connaître les SDLC classiques et les méthodes agiles Pourvoir choisir un SDLC sur la base des données concernant un projet de développement Prise de contact avec la méthodologie UP Découvrir les outils de support (CASE) OBJECTIFS DU COURS 2 Cours 2 – Cycle de vie de logiciels Objectifs du cours Cours IGL, Copyright © 2011, ESI Cours 2 Cycles de vie de logiciels 3 INTRODUCTION AU GÉNIE LOGICIEL Section 1 : Activités de développement Section 2 : Cycle de vie Section 3 : Modèles de procédés classiques Section 4 : Méthodes Agiles Section 5 : Méthodologie UP Section 6 : Outils de support (CASE) Cours IGL, Copyright © 2011, ESI Cycles de vie de logiciels 4 COURS IGL Section 1 : Activités de développement Cours IGL, Copyright © 2011, ESI Tout logiciel passe par plusieurs étapes pour être développé Ces étapes peuvent être résumées dans les étapes ci- dessous : SECTION 1 - INTRODUCTION 5 Cours 2 – Cycle de vie de logiciels Etapes de développement Définition Développement Support Cours IGL, Copyright © 2011, ESI Définir les besoins : Que doit faire le logiciel De quelle façon Et sous quelles conditions SECTION 1 - INTRODUCTION 6 Cours 2 – Cycle de vie de logiciels Définition Cours IGL, Copyright © 2011, ESI Transformation des données collectées pendant l’étape de définition en plusieurs produits : Logiciel fonctionnel Code source Produits connexes SECTION 1 - INTRODUCTION 7 Cours 2 – Cycle de vie de logiciels Développement Cours IGL, Copyright © 2011, ESI SECTION 1 - INTRODUCTION 8 Cours 2 – Cycle de vie de logiciels Support Changements Correction Adaptation Amélioration Prévention Cours IGL, Copyright © 2011, ESI Correction : réparation des fonctions qui ne marchent pas ou qui ne marchent pas comme souhaité. Adaptation : adaptation de fonctions aux évolutions technologiques actuelles. Amélioration : en terme de performance, ergonomie, … Prévention : Rendre le logiciel plus facile à la maintenance SECTION 1 - INTRODUCTION 9 Cours 2 – Cycle de vie de logiciels Support Cours IGL, Copyright © 2011, ESI Chaque projet de développement est composé de plusieurs activités Chaque activité est conduite et réalisée par plusieurs acteurs Une activité a des entrées et des sorties. Les livrables font partie des sorties des activités, Les livrables sont des produits ou des documents produits par une activités et utilisé par les activités qui en dépendent Par exemple : document, planning, code source sont tous des livrables SECTION 1 - INTRODUCTION 10 Cours 2 – Cycle de vie de logiciels Activités Cours IGL, Copyright © 2011, ESI Tous les projets de développement ont des activités communes SECTION 1 - INTRODUCTION 11 Cours 2 – Cycle de vie de logiciels Principales activités Analyse de besoins Conception Codage Tests Maintenance Cours IGL, Copyright © 2011, ESI Conditions qui doivent être respectées par un nouveau produit ou un produit altéré Aussi appelé spécifications Dans les grands projets (par exemple projets nationaux), c’est composé d’un cahier de charges Cette phase est difficile car le client et les développeurs ne parlent pas le même langage Le livrable de cette phase est un document de spécification SECTION 1 - INTRODUCTION 12 Cours 2 – Cycle de vie de logiciels Analyse de besoins Cours IGL, Copyright © 2011, ESI La conception utilise les spécifications pour décider les solutions relatives au différents problèmes de développement La conception décide aussi d’un planning de la solution La conception décide de l’architecture de la solution Si le produit est centré sur l’utilisateur, la conception propose une ébauche de l’interface utilisateur SECTION 1 - INTRODUCTION 13 Cours 2 – Cycle de vie de logiciels Conception Cours IGL, Copyright © 2011, ESI Le codage est une activité très importante du GL Le codage transforme les solutions proposées lors de la conception en un code opérationnel La conception et le codage peuvent toutes les deux produire du code source, mais c’est l’étape de codage qui rend ce code opérationnel. Les techniques de codage dépendent intrinsèquement du langage de programmation utilisé et du paradigme. SECTION 1 - INTRODUCTION 14 Cours 2 – Cycle de vie de logiciels Codage Cours IGL, Copyright © 2011, ESI Les tests déterminent la qualité du logiciel Les tests déterminent si le logiciel fait ce qu’on attend de lui par rapport aux spécifications Plusieurs types de test dont deux principaux : tests unitaires et tests d’acceptation Les tests unitaires sont orientés code. Ils se rédigent durant l’activité de codage et se revérifient pendant la phase de test Les tests d’acceptation vérifient les attentes d’un produit logiciel SECTION 1 - INTRODUCTION 15 Cours 2 – Cycle de vie de logiciels Tests Cours IGL, Copyright © 2011, ESI La maintenance consiste à modifier le produit (le logiciel) après sa livraison au client Son but est correctif ou évolutif La maintenance a deux facettes : organisationnelle et technique L’aspect organisationnel concerne l’organisation des équipes pour une réactivité face aux changements L’aspect technique concerne une maintenance sans impact négatif sur le produit Le degré de maintenance dépend de la qualité de la conception SECTION 1 - INTRODUCTION 16 Cours 2 – Cycle de vie de logiciels Maintenance Cours IGL, Copyright © 2011, ESI Cycles de vie de logiciels 17 COURS IGL Débat (10 Mns) Cours IGL, Copyright © 2011, ESI Cycles de vie de logiciels 18 COURS IGL Section 2 : Cycle de vie de logiciels Cours IGL, Copyright © 2011, ESI Un procédé logiciel (software process) est un ensemble d’activités conduisant à la production d’un logiciel Ils sont aussi appelés cycle de vie d’un logiciel (SDLC) Un procédé définit les étapes qui le composent ainsi que leur enchaînement Les Cycles de vie de logiciels sont complexes et dépendent fortement des acteurs qui dirigent les activités Les activités des procédés ne peuvent être automatisées mais il y a des outils de support, appelés outils CASE (Computer-Aided Software Engineering) SECTION 2 – CYCLES DE VIE DE LOGICIELS 19 Cours 2 – Cycle de vie de logiciels Procédé Logiciel Cours IGL, Copyright © 2011, ESI Un modèle de procédé est une abstraction d’un procédé Un modèle décrit le procédé selon une certaine perspective Un procédé logiciel est une application d’un modèle pour un projet spécifique, qui peut inclure une certaine adaptation SECTION 2 – CYCLES DE VIE DE LOGICIELS 20 Cours 2 – Cycle de vie de logiciels Modèles de procédés Cours IGL, Copyright © 2011, ESI Pour maîtriser les gros projets Pour découper le projet et affecter correctement les tâches Pour anticiper et gérer les risques SECTION 2 – CYCLES DE VIE DE LOGICIELS 21 Cours 2 – Cycle de vie de logiciels Modèles de procédés – Pourquoi ? Cours IGL, Copyright © 2011, ESI Il existe deux types de modèles de procédés : SECTION 2 – CYCLES DE VIE DE LOGICIELS 22 Cours 2 – Cycle de vie de logiciels Modèles de procédés Méthodes classiques Méthodologie agiles Cours IGL, Copyright © 2011, ESI SECTION 2 – CYCLES DE VIE DE LOGICIELS 23 Cours 2 – Cycle de vie de logiciels Modèles de procédés Caractéristiques Méthodes classiques • Modèles stricts • Etapes très clairement définies • Documentation très fournie • Fonctionne bien avec les gros projets et les projets gouvernementaux Méthodologies agiles • Modèles incrémentaux et itératifs • Petites et fréquentes livraisons • Accent sur le code et moins sur la documentation • Convient aux projets de petite et moyenne taille Cours IGL, Copyright © 2011, ESI Aucun modèle n’est meilleur que l’autre Le choix se fait selon certains critères tels que la nature du projet, sa taille, la nature du client et les compétences de l’équipe SECTION 2 – CYCLES DE VIE DE LOGICIELS 24 Cours 2 – Cycle de vie de logiciels Choix d’un modèle Cours IGL, Copyright © 2011, ESI Cycles de Vie des Logiciels 25 COURS IGL Section 2 : Débat (5 mn) • Qu’est-ce qu’un gros projet ? • Comment mesure-t-on un gros projet ? • Pourquoi un modèle de procédé est-il essentiel pour conduire un projet de développement ? Cours IGL, Copyright © 2011, ESI Cycles de vie de logiciels 26 COURS IGL Section 3 : Cycles de vie classiques Cours IGL, Copyright © 2011, ESI L’un des premiers modèles proposés, inspiré du modèle de Royce (1970) Aussi appelé modèle linéaire Le résultat de chaque phase est un ensemble de livrables, Une phase ne peut démarrer que si la précédente est finie Le modèle académique par excellence SECTION 3 – MODÈLES CLASSIQUES 27 Cours 2 – Cycle de vie de logiciels Modèle en cascade Cours IGL, Copyright © 2011, ESI SECTION 3 – MODÈLES CLASSIQUES 28 Cours 2 – Cycle de vie de logiciels Modèle en cascade Cours IGL, Copyright © 2011, ESI Avantages : Facile à utiliser et à comprendre Un procédé structuré pour uploads/Management/igl-cours-2-cycles-de-vie.pdf

  • 77
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Mar 28, 2021
  • Catégorie Management
  • Langue French
  • Taille du fichier 1.9246MB