Informatiques. Module : Outils RAD



Documents pareils
Gestion Projet. Cours 3. Le cycle de vie

Processus d Informatisation

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

Méthodes Agiles et gestion de projets

Cours Gestion de projet

CHAPITRE 3 : LES METHODES AGILES?

Génie logiciel (Un aperçu)

En face du commanditaire, on met un chef de projet qui connait le domaine (banque, administration, etc.)

Méthodes de développement

Développement itératif, évolutif et agile

Gestion de projet. Vers les méthodes agiles. V é r o n i q u e M e s s a g e r R o t a P r é f a c e d e J e a n T a b a k a

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

Le génie logiciel. maintenance de logiciels.

Topologie du web - Valentin Bourgoin - Méthodes agiles & SCRUM

1. Considérations sur le développement rapide d'application et les méthodes agiles

But de cette introduction à la gestion de projets :

2.DIFFERENTS MODELES DE CYCLE DE VIE

Développement d'un projet informatique

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

GL Processus de développement Cycles de vie

25/12/2012

Méthode Agile de 3 ème génération J-P Vickoff

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

Eclipse Process Framework et Telelogic Harmony/ITSW

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

Chapitre I : le langage UML et le processus unifié

PEPI GPI (Gestion de Projet Informatique) - Note de Cadrage décembre

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

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Les méthodes itératives. Hugues MEUNIER

Présentation UBO 12/2008 Présentation des méthodes agiles

Analyse,, Conception des Systèmes Informatiques

Qualité et Test des Logiciels. Le génie logiciel. Moez Krichen.

Processus de Développement Logiciel

Méthodologies de développement de logiciels de gestion

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

Gestion de Projet Agile

GUIDE SUR L ASSISTANCE A LA MAÎTRISE D'OUVRAGE EN INFORMATIQUE

Introduction au génie logiciel

Introduction à la modélisation

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

Processus de Développement Logiciel

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

XP : plus qu'agile. Extreme Programming v2 et Développement Responsable. Thierry Cros

Les mécanismes d'assurance et de contrôle de la qualité dans un

Les méthodes Agile. Implication du client Développement itératif et incrémental

Scrum Une méthode agile pour vos projets

Retour d expérience RATP. Intégrer le test de performance au cœur du processus de développement agile. Challenges, techniques, résultats.

GL Le Génie Logiciel

Jean-Pierre Vickoff J-P Vickoff

Chapitre 1 : Introduction aux bases de données

TRAAM STI Acquisition et exploitations pédagogiques des données sur un système pédagogique

Méthodes Agiles : un équilibre contractuel remis en cause? Jonathan Rofé Matinales IPT DLA Piper Paris 24 mars 2011

Pôle Référentiels Métier (Master Data Management)

L'évolution de VISUAL MESSAGE CENTER Architecture et intégration

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon

LES tests d'acceptation

Rational Unified Process

Agile 360 Product Owner Scrum Master

Plan d action SMB d une Approche Agile de la BITM Pour les PME

Yassine ZAKARIA SÉMINAIRE : MÉTHODES AGILES

LA MÉTHODE AGILE VS LE CYCLE EN V UNE RÉVOLUTION DANS LA GESTION DE PROJET. Franck BEULÉ

GESTION DE DONNÉES TECHNIQUES

Mise en place d une plateforme collaborative de développement en BTS SIO

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

Conditions Particulières de Maintenance. Table des matières. Ref : CPM-1.2 du 08/06/2011

Méthodologie de mise en place de

Jean-Pierre Vickoff

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

Parole d utilisateur. Témoignage Infrastructure Windows Server. Italcementi Calcia réduit ses coûts par la consolidation de son infrastructure

Sujet de thèse CIFRE RESULIS / LGI2P

Brique BDL Gestion de Projet Logiciel

Scrum. Description. Traduit en langue française par Bruno Sbille et Fabrice Aimetti - Avril Trad FR v1.1

Gestion de projets logiciels. Xavier Dubuc

SYNERGIE Associés Confidentiel Reproduction interdite sans autorisation préalable Page 1 de 44

Gé nié Logiciél Livré Blanc

Méthodes agiles. CONSEIL & DÉVELOPPEMENT DE SOLUTIONS E-BUSINESS. Jean-Louis Bénard jlb@businessinteractif.

Maîtrise d ouvrage agile

Conception et Intégration de Systèmes Critiques

W4 - Workflow La base des applications agiles

MERISE. Modélisation de Systèmes d Information. Pierre Gérard. DUT Informatique 2ème année 2004/2005. IUT de Villetaneuse - Université de Paris 13

DECLARATION DES PERFORMANCES N 1

Introduc)on à l Agile

Administrateur de Parc PC

D UNE APPLICATION EMBARQUEE DE TELECHARGEMENT DES APPLICATIONS ANDROID FTAB STORE. par. Mohamed Anouar DAHDEH UNIVERSITE VIRTUELLE DE TUNIS

Gestion de projet Agile. STS IRIS Module «Gérer et organiser un projet informatique»

INF2015 Développement de logiciels dans un environnement Agile Examen final hiver 2015

Chapitre 9 : Informatique décisionnelle

Fiche méthodologique Rédiger un cahier des charges

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

Conseil et Ingénierie des Systèmes d Information d Entreprise

Feature Team Primer. par Craig Larman et Bas Vodde. Version 1.2

EXPERTS EN DÉVELOPPEMENT ET MODERNISATION DE LOGICIELS WEB ET MOBILES

Cahier des charges : gestion de projets agiles. Programmation d Algorithmes Distribués (PAD)

Direction des Technologies de l Information. Présentation OCDE. Contribution du Parlement européen. L utilisation de l OPEN SOURCE au PE

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

IFT2255 : Génie logiciel

AGILE IPHONE DEVELOPMENT

Conception et Réalisation d une Application de Gestion de Sécurité d Information pour la Poste Tunisienne

Réussir le choix de son SIRH

Transcription:

Management de Projets Informatiques Module : Outils RAD Niveau : S4 du L2/ISIL

Génie Logiciel Le terme génie logiciel (en anglais software engineering) désigne l'ensemble des méthodes, des techniques et outils concourant à la production d'un logiciel, au-delà de la seule activité de programmation. Le choix du terme «génie» fait directement référence à celui du génie civil, désignant l'art de la construction. 2

Génie Logiciel Le domaine du génie logiciel fut donc largement inspiré du domaine de la construction mais aussi celui de la gestion de projet ou le souci permanent consiste à réaliser l équilibre entre «Coûts», «Délais» et «Objectifs» tout en assurant la «Qualité». 3

Génie Logiciel En effet, dans un environnement complexe, de surcroît, contraint par le time to market, il doit (faire) développer un produit au moindre coût dans des délais de plus en plus courts avec une qualité irréprochable tout en atteignant les objectifs fixés. 4

Cycle de Vie Le «cycle de vie d'un logiciel» (en anglais software lifecycle), désigne toutes les étapes du développement d'un logiciel, de sa conception à sa disparition. L'objectif d'un tel découpage est de permettre de définir des jalons intermédiaires permettant la validation du développement logiciel, c'est-à-dire la conformité du logiciel avec les besoins exprimés, et la vérification du processus de développement, c'est-à-dire l'adéquation des méthodes mises en œuvre. 5

Cycle de Vie Observons le schéma suivant qui décrit de manière assez simple les phases de développement de logiciel. Ingénierie des Besoins (10%) Conception (15%) Implémentation (20%) Tests (45%) Maintenance 6

Cycle de Vie La maintenance couvre un certain nombre d activités dont : La Perfective La Corrective L adaptative La Préventive Préventive 4% Adaptive 25% Corrective 21% Maintenance Perfective 50% 7

Cycle de Vie L'origine de ce découpage provient du constat que les erreurs ont un coût d'autant plus élevé qu'elles sont détectées tardivement dans le processus de réalisation. Le cycle de vie permet de détecter les erreurs au plus tôt et ainsi de maîtriser la qualité du logiciel, les délais de sa réalisation et les coûts associés. Le cycle de vie du logiciel comprend généralement au minimum les activités suivantes : 8

Les Phases du Cycle de Vie Etape Définition des objectifs Analyse des besoins et faisabilité Conception générale Conception détaillée Codage Explication consistant à définir la finalité du projet et son inscription dans une stratégie globale. c'est-à-dire l'expression, le recueil et la formalisation des besoins du demandeur (le client) et de l'ensemble des contraintes. il s'agit de l'élaboration des spécifications de l'architecture générale du logiciel. consistant à définir précisément chaque sous- ensemble du logiciel. implémentation ou programmation, i-e, la traduction dans un langage de programmation des fonctionnalités définies lors de phases de conception. 9

Les Phases du Cycle de Vie Etape Tests unitaires Intégration Qualification (ou recette) Documentation Explication permettant de vérifier inidividuellement que chaque sous-ensemble du logiciel est implémenté conformément aux spécifications. dont l'objectif est de s'assurer de l'interfaçage des différents éléments (modules) du logiciel. Elle fait l'objet de tests d'intégration consignés dans un document. c'est-à-dire la vérification de la conformité du logiciel aux spécifications initiales. visant à produire les informations nécessaires pour l'utilisation du logiciel et pour des développements ultérieurs. 10

Les Phases du Cycle de Vie Etape Mise en production Maintenance Explication vise la production du logiciel. comprenant toutes les actions correctives (maintenance corrective) et évolutives (maintenance évolutive) sur le logiciel. 11

Les Modèles de Cycle de Vie La littérature du domaine abonde de modèles et de démarches visant à améliorer le ou les processus associés aux développement de logiciels. De manière générale, on distingue deux grandes catégories de méthodes : A. Les méthodes classiques ou basées sur une démarche classique. B. Les méthodes modernes visant la rapidité, la flexibilité,, etc, communément appelées «Méthodes Agiles». 12

Les Modèles de Cycle de Vie Classiques Passons en revue quelques principaux modèles de l approche classique dont le modèle en cascade et le modèle itératif ou incrémental. 13

DEMARCHE EN CASCADE (CLASSIQUE) 14

DEMARCHE EN CASCADE DES BESOINS UN PRODUIT BOITE NOIRE L effet tunnel est une des caractéristiques de l approche «en cascade» : un projet dure un an, la phase de recueil des besoins dure deux mois et le client ne voit le résultat que neuf mois plus tard! Que s est-il passé entre-temps temps? «On ne sait pas trop ce qu ils font ces informaticiens!», «Que va-t-il sortir de la «boîte»?», «Mais, ce n est pas ce que l on attendait!» ou bien «C est ce que nous voulions mais notre besoin a un peu évolué depuis!» 15

DEMARCHE EN CASCADE D une part, la non-transparence des équipes de développement suscite des sarcasmes sur leur capacité à coopérer. D autre part, la longueur des phases techniques auxquelles le client n est pas associé rend celui-ci dubitatif sur le résultat à venir. Ce qui ne favorise pas la collaboration efficace entre informaticiens et utilisateurs! D autant plus si le résultat livré n est pas conforme à ce qui est attendu. 16

DEMARCHES ITERATIVES OU INCREMENTALES Sont alors apparues des démarches qualifiées d itératives ou incrémentales où le principe repose sur : Le découpage en phases La prise en compte de niveau d incréments Le prototypage 17

LES METHODES AGILES Résistance ou Peur du Changement : «Quand on trouve une recette qui marche bien, on a du mal à la quitter même si l on constate que son efficacité semble diminuer ; il existe une inertie due à la peur du changement, à la recherche de facilité ou à l ivresse du succès (ce qui marchait hier doit marcher demain ). Eh bien non!!!» 18

LES METHODES AGILES Fort du constat que les plans initiaux sont finalement toujours modifiés et que les besoins évoluent en permanence pour répondre aux changements du marché, ces approches prédictives se sont révélées trop «rigides» parfois, exposant les organisations à trop peu de réactivité dans le contexte de nouveaux projets stratégiques. 19

LES METHODES AGILES Sont alors apparues, dans les années 1990, des méthodes moins prédictives, plus souples face aux besoins d adaptation, facilitant ainsi l agilité des organisations face aux contraintes du marché. Ce sont les méthodes dites «agiles». 20

LES METHODES AGILES Qu est-ce qu une méthode agile? Une méthode agile est une approche itérative et incrémentale, qui est menée dans un esprit collaboratif, avec juste ce qu il faut de formalisme. Elle génère un produit de haute qualité tout en prenant en compte l évolution des besoins des clients. 21

LES METHODES AGILES Des Méthodes Itératives et Incrémentales Cependant : Le résultat d une itération n est pas un prototype ou une «proof of concept», mais bien une version intermédiaire du produit final. 22

LES METHODES AGILES Avantages Des Méthodes Itératives et Incrémentales 23

LES METHODES AGILES Les Treises Principes : 24

LES METHODES AGILES Les Treises Principes (Suite) : 25