Génie logiciel et Gestion de projet

Documents pareils
Processus d Informatisation

Analyse,, Conception des Systèmes Informatiques

Le génie logiciel. maintenance de logiciels.

2. Activités et Modèles de développement en Génie Logiciel

Cours Gestion de projet

Vérifier la qualité de vos applications logicielle de manière continue

ITIL Gestion de la capacité

Projet Active Object

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

CINEMATIQUE DE FICHIERS

La Certification de la Sécurité des Automatismes de METEOR

DEVELOPPEMENT ET MAINTENANCE DE LOGICIEL: OUTIL DE PILOTAGE

Gé nié Logiciél Livré Blanc

Génie logiciel (Un aperçu)

2.DIFFERENTS MODELES DE CYCLE DE VIE

Enquête 2014 de rémunération globale sur les emplois en TIC

Introduction au génie logiciel

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

Développement spécifique d'un système d information

Méthodes de développement. Analyse des exigences (spécification)

Gestion Projet. Cours 3. Le cycle de vie

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Spécialité auxiliaire en prothèse dentaire du brevet d études professionnelles. ANNEXE IIb DEFINITION DES EPREUVES

Séance 1 Méthodologies du génie logiciel

Outil de gestion et de suivi des projets

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Chapitre I : le langage UML et le processus unifié

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Brique BDL Gestion de Projet Logiciel

Nom-Projet MODELE PLAN DE MANAGEMENT DE PROJET

Plateforme de capture et d analyse de sites Web AspirWeb

En un coup d œil le descriptif de la solution OpenERP

Annexe : La Programmation Informatique

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

GL Le Génie Logiciel

Méthodes de développement

Baccalauréat technologique

LOGICIEL DE GESTION DE DOCUMENTS PDF : PROJET INFO 1

Qualité du logiciel: Méthodes de test

Introduction Les processus traditionnels extreme Programming Conclusion. extreme Programming. vers plus d agilité. F. Miller francois.miller@inpg.

Cours Informatique Master STEP

GL Processus de développement Cycles de vie

IFT3913 Qualité du logiciel et métriques. Chapitre 2 Modèles de processus du développement du logiciel. Plan du cours

ECRITECH 3 NICE / AVRIL 2012 ARTS PLASTIQUES & HISTOIRE DES ARTS TABLETTES NUMÉRIQUES & PÉDAGOGIE(S)

Formation : Modélisation avec UML 2.0 et Mise en pratique

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET

MODALITES DE SUIVI DU PROJET ANNUEL DU MASTER 2 SOLUTIONS INFORMATIQUES LIBRES

LES INTERFACES HOMME-MACHINE

Développement itératif, évolutif et agile

A-t-on le temps de faire les choses?

CAHIER DE S CHARGE S Remote Workload Manager

ÉLÉMENTS DE GESTION DE PROJET

Gestion de la Maintenance Assistée par Ordinateur

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP

TERMES DE REFERENCE POUR PRESTATAIRE INDIVIDUEL ET CONSULTANT

Utilitaire de mise aux normes du Trésor Public pour les virements bancaires en France et en uros sur la Banque de France. Manuel de référence

novapro Entreprise Introduction Supervision

Méthodologies de développement de logiciels de gestion

LE KIT DU MANAGER DE PROJETS

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Les méthodes itératives. Hugues MEUNIER

Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational

Évaluation et implémentation des langages

Agilitéet qualité logicielle: une mutation enmarche

Conduite de projets SI. Les méthodes «Agiles» N QUAL/1995/3660e ORESYS

Test et Validation du Logiciel

But de cette introduction à la gestion de projets :

Analyse structurée de solutions pour BMC Remedy IT Service Management v 7

Microsoft Application Center Test

CADRE D AGRÉMENT APPROCHE STANDARD DU RISQUE OPÉRATIONNEL

ROYAUME DU MAROC PROJET E-RH DANS L ADMINISTRATION PUBLIQUE MAROCAINE - PREMIÈRE PHASE

Conception, architecture et urbanisation des systèmes d information

Validation des processus de production et de préparation du service (incluant le logiciel)

Système à enseigner : Robot M.I.M.I. MultipodeIntelligent à Mobilité Interactive. Version 1.0

FORMAT FORMA ION SUR LA ION SUR LA GESTION DE PROJET & MS PROJECT

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Homologation ARJEL : Retour d expérience

Chef de projet H/F. Vous avez au minimum 3 ans d expérience en pilotage de projet de préférence dans le monde du PLM et de management d équipe.

EVOLUTIONS suite à mise à jour

PROGRAMME DETAILLE. Parcours en première année en apprentissage. Travail personnel CC + ET réseaux

LES CARTES À POINTS : POUR UNE MEILLEURE PERCEPTION

Architecture distribuée

En 2014 OpenERP s ouvre l horizon au delà de L ERP et prend l appellation de

Cours Composant 2. Qualité logicielle et spécications algébriques

Cours 1 : La compilation

Une protection antivirus pour des applications destinées aux dispositifs médicaux

ÉdIteur officiel et fournisseur de ServIceS professionnels du LogIcIeL open Source ScILab

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

LICENCE : INFORMATIQUE GENERALE

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Le chiffre est le signe, le nombre est la valeur.

Support pour les langues s écrivant de droite à gauche

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Conduite et Gestion de Projet - Cahier des charges

Mise en œuvre des serveurs d application

OPTIMISER SON PROCESSUS DE TEST AVEC UNE APPROCHE BOITE GRISE

RTDS G3. Emmanuel Gaudin

Transcription:

Génie logiciel et Gestion de projet

Introduction Le génie logiciel (software engineering) existe depuis plus de 30 ans Né des constatations que les logiciels : Ne sont pas fiables Sont incroyablement difficiles à réaliser dans les délais Ne satisfaisaient pas le cahier des charges 2/47

Exemples Perte de la 1ère sonde Mariner 1 (1962) vers Vénus suite à une erreur de programmation dans un programme Fortran Perte, en 1971, de 72 ballons d expérimentation météorologique à cause d un bug logiciel Abandon d'un projet d'informatisation de la City après 4 ans de travail et 100 M de perte Echec d ARIANE 501 (1996) suite à un bug logiciel Invalidation de version de Windows XP suite au changement de version du Windows Genuine Advantage (2011) 3/47

Génie Logiciel Si l'on veut maîtriser le développement de systèmes complexes, il faut : Rédiger de façon claire les spécifications du système (ce que l'on attend) Comment être sûrs que ces spécifications sont complètes? Comment être sûrs que ces spécifications sont cohérentes? Valider/vérifier toutes les étapes du développement A-t-on des moyens de validation/vérification (mathématiques)? 4/47

Génie Logiciel Si l'on veut maîtriser le développement de systèmes complexes, il faut : Réutiliser des sous-systèmes déjà réalisés (mais pas n'importe comment) A-t-on des règles, des outils pour aider à la réutilisation? Nécessité d une base théorique et d une approche ingénierie (science de l ingénieur) du logiciel 5/47

Génie Logiciel Le génie logiciel comporte des aspects de gestion de projet et des notions de qualité (satisfaire le client) Ceci en utilisant des méthodes, des modèles, et des outils. 6/47

Le poids de l'histoire La navette spatiale américaine est flanquée de deux réservoirs additionnels attachés au réservoir principal. La société THIOKOL fabrique ces réservoirs additionnels dans leur usine de l'utah. Les ingénieurs qui les ont conçus auraient bien aimé les faire un peu plus larges, mais ces réservoirs devaient être expédiés par train jusqu'au site de lancement. La ligne de chemin de fer entre l'usine et Cap Canaveral emprunte un tunnel sous les montagnes rocheuses. Les réservoirs additionnels devaient pouvoir passer sous ce tunnel. Le tunnel est légèrement plus large que la voie de chemin de fer. 7/47

Le poids de l'histoire la distance standard entre 2 rails de chemin de fer aux US est de 4 pieds et 8,5 pouces. Pourquoi cet écartement a-t-il été retenu? Parce que les chemins de fer US ont été construits de la même façon qu'en Angleterre, par des ingénieurs anglais expatriés, qui ont pensé que c'était une bonne idée, car ça permettait également d'utiliser des locomotives anglaises Pourquoi les Anglais ont construit les leurs comme cela? 8/47

Le poids de l'histoire Parce que les premières lignes de chemin de fer furent construites par les mêmes ingénieurs qui construisirent les tramways, et que cet écartement était alors utilisé. Pourquoi ont-ils utilisé cet écartement? Parce que les personnes qui construisaient les tramways étaient les mêmes qui construisaient les chariots et qu'ils ont utilisé les mêmes méthodes et les mêmes outils. Pourquoi les chariots utilisent un tel écartement? 9/47

Le poids de l'histoire Parce que partout en Europe et en Angleterre les routes avaient déjà des ornières et un espacement différent aurait causé la rupture de l'essieu du chariot. Pourquoi ces routes présentaient-elles des ornières ainsi espacées? Parce que les premières grandes routes en Europe ont été construites par l'empire romain pour accélérer le déploiement des légions romaines. Pourquoi les Romains ont-ils retenu cette dimension? 10/47

Le poids de l'histoire Parce que les premiers chariots étaient des chariots de guerre romains. Ces chariots étaient tirés par deux chevaux. Ces chevaux galopaient cote à cote et devaient être espacés suffisamment pour ne pas se gêner. Afin d'assurer une meilleure stabilité du chariot, les roues ne devaient pas se trouver dans la continuité des empreintes de sabots laissées par les chevaux, et ne pas se trouver trop espacées pour ne pas causer d'accident lors du croisement de deux chariots. 11/47

Le poids de l'histoire Conclusion: La taille des réservoirs de la navette spatiale a été calculée à partir d'une contrainte de conception du moyen des transports avec comme unité de mesure la largeur de la croupe d'un cheval. 12/47

Modèles de développement Modèle en cascade Modèle en V 13/47

Modèle en cascade Atteinte de l objectif par atteinte ordonnée de sousobjectifs. Les activités sont représentées dans des processus séparés. Processus séquentiel: Chaque étape doit être terminée avant que la suivante commence. Livrables: A la fin de chaque étape, le livrable est vérifié et validé. Vérification: le livrable est-il correct? Validation: est-ce le bon produit? (Comparé à l énoncé de l étape). 14/47

Modèle en cascade 15/47

Modèle en V Amélioration du modèle en cascade Met en évidence la symétrie et la relation qu il y a entre les phases du début du cycle de vie et celles de fin. Les phases du début doivent être accompagnées d une planification des phases de fin. Lors de la planification, on développe et documente les plans de test. 16/47

Modèle en V 17/47

Activités de développement Elles sont décrites de façon indépendante en indiquant leur rôle. Selon le modèle, une activité peut jouer un rôle plus ou moins important et parfois ne pas exister du tout. 18/47

Activités de développement Elles concernent : Planification (Étude de la faisabilité) Spécification des besoins Analyse (Spécification formelle) Conception (Spécification technique) Implémentation (Codage) et tests unitaires Intégration et tests d ensemble Livraison Maintenance 19/47

Planification Objectifs : Activités : Résultats : identification de plusieurs solutions et évaluation des coûts et bénéfices de chacune d'elles simulation de différents scénarios de développement Rapport d analyse préliminaire et un schéma directeur contenant : la définition du problème et les différentes solutions étudiées, avec, pour chacune d elles, les bénéfices attendus, les ressources requises (délais, livraison, 20/47

Spécification des besoins Objectifs : Activités : définition de ce que doit faire le logiciel Description du problème à traiter afin d identifier les besoins de l'utilisateur, de spécifier ce que doit faire le logiciel : informations manipulées, services rendus, interfaces, contraintes Mise en oeuvre des principes : abstraction, séparation des problèmes, séparation des besoins fonctionnels 21/47

Spécification des besoins Résultats : cahier des charges et plan qualité un dossier d'analyse comprenant les spécifications fonctionnelles et non fonctionnelles du produit une ébauche du manuel utilisateur pour les noninformaticiens une première version du glossaire contenant les termes propres au projet. un plan de test du futur système (cahier de validation) 22/47

Analyse Objectifs : Activités : Analyse détaillée de toutes les fonctions et autres caractéristiques que le logiciel devra réaliser pour l usager, tel que vu par l usager. Répondre au «Que fait le système?» Analyse de l existant et des contraintes de réalisation Abstraction et séparation des problèmes, séparation en unités cohérentes 23/47

Analyse Résultats : Dossier d analyse et plan de validation Modèle du domaine Définition du modèle conceptuel. Plan de validation, dossier de tests d intégration 24/47

Conception Objectifs : Activités : Définition de l architecture générale du logiciel. Spécification de la manière dont chacun des composants du logiciel sera réalisé et comment ils interagiront. Répondre au «Comment réaliser le système» Décomposition modulaire, définition de chaque constituant du logiciel : informations traitées, traitements effectués, résultats fournis, contraintes à respecter 25/47

Conception Résultats : dossier de conception + plan de test global et par module proposition de solution au problème spécifié dans l analyse organisation de l application en modules et interface des modules (architecture du logiciel) description détaillée des modules avec les algorithmes essentiels (modèle logique) structuration des données. 26/47

Implémentation Objectifs : Activités : Réalisation des programmes dans un (des) langage(s) de programmation Tests selon les plans définis lors de la conception traduction dans un langage de programmation, Mise au point (débogage) Résultats : dossiers de programmation et codes sources. Collection de modules implémentés, non testés Documentation de programmation qui explique le code 27/47

Tests unitaires Objectifs : Activités : Résultats : test séparé de chacun des composants du logiciel en vue de leur intégration réalisation des tests prévus pour chaque module les tests sont à faire par un membre de l'équipe n'ayant pas participé à la fabrication du module résultats des tests avec les jeux d essais par module selon le plan de test. 28/47

Intégration et test du système Objectifs : Activités : Intégration des modules et test de tout le système Assemblage de composants testés séparément Démarche d intégration (ascendante, descendante ou les deux) Conception des données de tests Tests Alpha : l'application est mise dans des conditions réelles d'utilisation, au sein de l'équipe de développement (simulation de l'utilisateur final) Documentation des éléments logiciels 29/47

Intégration et test du système Résultats : Rapports de test Manuel d utilisation 30/47

Livraison, maintenance, évolution Objectifs : Activités : Livraison du produit final à l'utilisateur, Suivi, modifications, améliorations après livraison. Tests Bêta : distribution du produit sur un groupe de clients avant la version officielle, Livraison à tous les clients, Maintenance : corrective, adaptative, perfective. 31/47

Livraison, maintenance, évolution Résultats : la version finale du manuel utilisateur, les traces d évolution du système, les rapports d exploitation produits et sa documentation Trace d exploitation et d évolution 32/47

Avant le projet : La planification Que devons-nous faire? Que ferons-nous? (planification structurelle) Quand et qui le fera? (planification opérationnelle) 33/47

Planification opérationnelle Organisation dans le temps des activités Activités/Dépendances : Contraintes temporelles entre activités, Structure logique des activités Ressources associées aux activités Durée d une activité : durée dans le meilleur des cas, ajout d un délai de garantie, pondération pour tenir compte de l imprévu. La planification est un processus dynamique tenant compte de la situation réelle, des nouvelles informations acquises 34/47

Planification opérationnelle Diagramme de Gantt calendrier sur lequel chaque activité est représentée par une barre grisée débutant à la date de début au plus tôt et terminant à la date de fin au plus tard, sur laquelle glisse une barre blanche correspondant aux dates réelles de début et de fin 35/47

Suivi de projet Mettre en place un processus de suivi et de revues régulières entre le chef de projet et les membres de l'équipe Un "journal de bord" est tenu à jour et permet de garder une trace : des informations communiquées des problèmes rencontrés des décisions prises des responsables désignés pour mener à bien les actions la date de réalisation de l'action 36/47

Revue de projet 1 La présentation à l'oral Le dossier Durée : 20 minutes Présentation contexte, entreprise, besoin ( moins de 5 minutes) Diagrammes et choix (14 minutes) Conclusion (le reste) L'analyse complétée. Le dossier de conception préliminaire. 37/47

Revue de projet 1 Objectifs: Présenter le projet 38/47

Revue de projet 1 Objectifs: Présenter le projet Vous situer dans le projet 39/47

Revue de projet 1 Objectifs: Présenter le projet Vous situer dans le projet Justifier vos choix 40/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) 41/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) Vous situer dans le projet Use case 42/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) Vous situer dans le projet Diagrammes de cas d'utilisation diagramme séquence 43/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) Vous situer dans le projet Diagrammes de cas d'utilisation diagrammes séquence diagramme de classe (vision globale) Planning (diagramme de gantt). 44/47

Revue de projet 1 45/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) Vous situer dans le projet Diagrammes de cas d'utilisation diagrammes séquence diagramme de classe (vision globale) Planning (diagramme de gantt). Justifier vos choix 46/47

Revue de projet 1 Objectifs: Présenter le projet Contexte (entreprise,...) Besoin (pourquoi ce projet) Vous situer dans le projet Diagrammes de cas d'utilisation diagrammes séquence diagramme de classe (vision globale) Planning (diagramme de gantt). Justifier vos choix au niveau des IHM au niveau des solutions technologiques 47/47