CHAPITRE 2: PROCESSUS LOGICIELS Cours « Génie Logiciel 1 » Niveau II2 AU: 2021/

CHAPITRE 2: PROCESSUS LOGICIELS Cours « Génie Logiciel 1 » Niveau II2 AU: 2021/2022 1 Cours « GL-ACOO » ENSI 1. Introduction 2. Définitions 3. Activités du cycle de vie 4. Modèles de processus  Modèles Classiques  Modèles Agiles  Modèles orientés objet CHAPITRE 2: Processus Logiciels Plan 2 Cours « GL-ACOO » ENSI Dans la réalisation d'un programme simple, fait par une personne, on suit généralement un ensemble d’étapes : L'analyse du problème; L’écriture de l’algorithme; Le codage; La mise au point. Un processus de développement plus élaboré et plus rigoureux doit être mis en place pour le cas de systèmes de taille importante et développés par plusieurs personnes. Pour obtenir un logiciel de qualité, il faut en maîtriser le processus de développement SECTION 1 CHAPITRE 2: Processus Logiciels Intoduction 3 Cours « GL-ACOO » ENSI Processus: un ensemble d’activités coordonnées et contrôlées dont le but est de créer un produit. L’ordre et la manière d’enchaîner les étapes d’un développement est le processus de développement. Un processus décrit 2 choses importantes: Les activités (étapes) (= quoi?) L’enchainement des activités (= quand?) Cycle de développement logiciel: appelé aussi processus de développement logiciel est un processus qui conduit à la production d’un logiciel Il commence avec la décision de développer un logiciel et se termine avec la livraison du logiciel et son installation. Le cycle de développement est la partie du cycle de vie d’un logiciel consacrée au développement à proprement parler. CHAPITRE 2: Processus Logiciels Définitions 1 n 4 Cours « GL-ACOO » ENSI CHAPITRE 2: Processus Logiciels Approche traditionnelle Pré-Analyse Analyse Conception Implémentation Test Maintenance Oui + Cahier des charges du Projet Cahier des Charges Découpage en modules Code Logiciel opérationnel POURQUOI ? QUOI ? COMMENT ? Non => Abandon Développement 5 Cours « GL-ACOO » ENSI CHAPITRE 2: Processus Logiciels Activités du cycle de vie Analyse Conception Implémentation Tests Documentation Vérification et Validation (V&V) Gestion des configurations Installation Initiation du projet Étude préalable Évaluation Maintenance & Assistance retrait Planification, Pilotage & Suivi Gestion de qualité Développement Exploitation & Maintenance Retrait Avant-projet Gestion de projet Activités techniques Cycle de vie du logiciel Cycle de développement du logiciel 6 Cours « GL-ACOO » ENSI ACTIVITÉS D’UN PROCESSUS Les activités d’un processus sont souvent décrites en termes de: Entrées de l’activité (matière première) Sorties de l’activité (résultat) Intervenants et rôles (qui?) Description de l’activité (quoi ?– quel est le problème à traiter?) Standards, guides, « best practices » à appliquer (comment?) 7 Cours « GL-ACOO » ENSI L’objectif est de répondre essentiellement aux questions suivantes: Pourquoi a-t-on besoin du logiciel? Y a-t-il de meilleures alternatives? Y a-t-il un marché pour le logiciel? Quels moyens faut-il mettre en œuvre? Les tâches effectuées: Dresser un état de l’existant et analyser ses forces et faiblesses; Identifier les besoins de l’utilisateur Formuler des solutions potentielles et étudier la faisabilité Document produit : cahier des charges du projet Activités de développement CHAPITRE 2: Processus Logiciels Etude Préalable 8 Cours « GL-ACOO » ENSI CHAPITRE 2: Processus Logiciels Activités du cycle de vie Analyse Conception Implémentation Tests Documentation Vérification et Validation (V&V) Gestion des configurations Installation Initiation du projet Étude préalable Évaluation Maintenance & Assistance retrait Planification, Pilotage & Suivi Gestion de qualité Développement Exploitation & Maintenance Retrait Avant-projet Gestion de projet Activités techniques 9 Cours « GL-ACOO » ENSI Objectif Répondre à la question quoi? Ce que le logiciel devra faire? Entrée Cahier des charges du projet Tâches analyse des besoins de l’utilisateur spécification du logiciel à réaliser Sortie Cahier des charges du logiciel Document d’analyse et de spécification (Spécifications globales du système & Spécifications des sous systèmes) Activités de développement CHAPITRE 2: Processus Logiciels Analyse des besoins 10 Cours « GL-ACOO » ENSI Objectif : répondre à la question comment? Ebauche de plusieurs variantes de solutions, comparaison et choix de celle qui offre le meilleur rapport entre coûts et avantages. A la fin de cette étape, on doit disposer d’un modèle de solution complet, cohérent, maintenable et testable. Se compose de deux phases: Conception globale ou architecturale Conception détaillée Activités de développement CHAPITRE 2: Processus Logiciels Conception 11 Cours « GL-ACOO » ENSI  Processus durant lequel on doit IMAGINER, PROPOSER une architecture pour satisfaire les spécifications (objectifs et contraintes)  Décomposition en modules, et mise en évidence des frontières entre ces modules, structuration de l’ensemble  Recherche de plusieurs solutions, comparaison et choix entre les différentes alternatives de conception  A la fin de cette étape on doit disposer d’un modèle :  COMPLET  COHERENT  MAINTENABLE  TESTABLE  Entrée Documents de spécification  Tâches Trouver une solution pour réaliser le logiciel Définir l ’architecture du logiciel : les composants de l ’architecture les interfaces entre les composants  Sortie Architecture du logiciel à réaliser  Document produit document de conception globale Activités de développement CHAPITRE 2: Processus Logiciels Conception globale 12 Cours « GL-ACOO » ENSI Étape qui achève la conception globale, sur le plan ALGORITHMIQUE et STRUCTURATION de DONNEES, jusqu’à un niveau satisfaisant pour permettre le CODAGE. Les principales activités sont : Description précises des traitements, des données et des interfaces de chaque module Résolution des algorithmes Entrée Document de conception globale Tâches raffiner la décomposition jusqu’à aboutir à des composants élémentaires détailler chaque composant élémentaire  Sortie description détaillée de chaque composant : interface algorithmes Documents produits Document de conception détaillée Activités de développement CHAPITRE 2: Processus Logiciels Conception détaillée 13 Cours « GL-ACOO » ENSI Entrée Document de conception détaillée  Tâches Transformation des descriptions des composants en code, écrit dans un langage de programmation Sortie composants logiciels compilés/interprétés Activités de développement CHAPITRE 2: Processus Logiciels Implémentation 14 Cours « GL-ACOO » ENSI Durant cette phase, les composants du logiciel sont évalués et intégrés ainsi que le logiciel lui-même. Phase généralement subdivisée en trois phases: Tests unitaires Tests individuels des composants Tests d’intégration Assemblage progressif des composants Tests des composants assemblés Tests du système Test en vraie grandeur du système complet Sortie : rapports de tests Activités de développement CHAPITRE 2: Processus Logiciels Tests 15 Cours « GL-ACOO » ENSI Entrée logiciel assemblé Tâches Installer le logiciel chez le client, dans son environnement d’exploitation Effectuer les tests de réception en utilisant un dossier de validation. rendre le logiciel opérationnel sur le site du client Sortie logiciel installé fourniture des documents suivants : manuel d’installation manuel d’exploitation Activités de développement CHAPITRE 2: Processus Logiciels Installation 16 Cours « GL-ACOO » ENSI CHAPITRE 2: Processus Logiciels Activités du cycle de vie Analyse Conception Implémentation Tests Documentation Vérification et Validation (V&V) Gestion des configurations Installation Initiation du projet Étude préalable Évaluation Maintenance & Assistance retrait Planification, Pilotage & Suivi Gestion de qualité Développement Exploitation & Maintenance Retrait Avant-projet Gestion de projet Activités techniques 17 Cours « GL-ACOO » ENSI V&V englobe tous les processus qui permettent de s’assurer que le logiciel correspond bien à son cahier des charges et que ce cahier des charges répond bien aux besoins de l’utilisateur. Vérification: le fait d’établir la cohérence: « Est ce que nous construisons bien le produit? » Vérification de toutes les étapes de développement et les éléments fournis (code, rapports, manuels, documentation, jeux de tests, etc.). Validation: le fait d’établir l’utilité: « Est ce que nous construisons le bon produit? » Vérification du respect des spécifications du logiciel et des besoins du client. Tester est l’activité de V&V la plus utilisée. Activités de développement CHAPITRE 2: Processus Logiciels Vérification et Validation 18 Cours « GL-ACOO » ENSI C'est l'enregistrement de tout ce qui pourrait être connu à propos d'un système : Matérialise l’avancement des travaux; Enregistre tout ce qui pourrait être connu à propos d'un système (ex: trace de toute prise de décision); Support de communication entre les différents acteurs; Tâche consommatrice de ressources, à planifier. Quelques documents courants: Cahier des charges Calendrier du projet Plan de test du logiciel Plan d'assurance qualité Manuel utilisateur Code source Rapport des tests Activités de développement CHAPITRE 2: Processus Logiciels Documentation 19 Cours « GL-ACOO » ENSI Activités de développement CHAPITRE 2: Processus Logiciels Documentation et phases 20 Cours « GL-ACOO » ENSI La documentation du développement et le logiciel lui-même sont constitués d’un grand nombre d’éléments qui évolue tout au long du cycle de vie (code, tests, documentation, etc.). Le but de la gestion de la configuration est de maîtriser cette évolution. Il vaut mieux utiliser un outil de gestion de la configuration: Identifier et archiver les éléments de la configuration; Tracer et archiver les changements dans la configuration; Identifier et archiver les versions de la configuration; Gérer le travail concurrent à plusieurs développeurs sur les éléments de la configuration. Activités de développement CHAPITRE 2: Processus Logiciels Gestion de la configuration 21 Cours « GL-ACOO » ENSI La gestion de la configuration rassemble l’ensemble des règles et des moyens destinés à gérer et garantir la cohérence de la configuration (i.e. des différents logiciels, sous-ensembles logiciels, modules, composants et documents) à travers les évolutions Seules les versions de références sont prises en compte Respect uploads/Industriel/ chap-2.pdf

  • 23
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager