Les processus de développement l (PSP) t é i (TSP) personnel (PSP
Transcription
Les processus de développement l (PSP) t é i (TSP) personnel (PSP
1 Les processus de développement personnell (PSP) ett en équipe é i (TSP) Du développement logiciel agile sans fragilité Daniel M. Roy SPIN de Montréal 21 Novembre 2011 PSP, TSP, Personal Software Process and Team Software Process are service marks of CMU CMM and Capability Maturity Model are registered in the U.S. patent and trademark office Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 2 Agenda g Quelques info Un p’tit sondage C’est q quoi une méthode “agile” g Agilité et CMMI C’est C est quoi un PSP/TSP? TSP et AIM: on coupe la poire en deux Et le personel? y g CMMI/PSP-TSP/P-CMM Synergie Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 3 Un bog g ppeut coûter très cher! Byy Ryan y Leggio gg | 02-03-11 | 03:25 PM | La firme AXA Rosenberg a accepté de payer AXA Rosenberg has agreed to pay moreune than amende de plus de $240 million pour nn’avoir avoir pas $240 million to settle charges that it concealed divulgué à ses clients une erreur de programmation from a informatique significant error computer dans clients le modèle utilisé in parthe la firme, code theôlquantitative pour of contrôler ses investissements, i i investment d’après d’ model è un that rapport SECto(le gendarme de la bourse the firm du uses manage money, according to américaine). the SEC. Morningstar news 3 Feb 2011 Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Faut faire quek quek-chose! chose! Country 4 CAGR% Market $B (2011-2015) (sales & services) GB 6% $84B Allemagne 4% $71B France 3% $50B Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Source: http://www.articleshub.org 5 Le sondage g 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 CMMI L2+ Entendu Yp pense Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Utilise 6 C’est q quoi un CMMI? Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Crédit: Alexandre FONTAINE Comment je rêvais de bosser Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 7 Et voila ce qu’on m’a refilé Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 8 9 C’est q quoi agile? g Une super-classe de: – – – – Adaptive Méthodes Méth d ettSoftware “Méthodologies” “Méth dDevelopment l i ” Crystal Cycles de développement itératifs dX (agile RUP) P tiDynamic Pratiques de di SSystems programmation ti D t D Development l t Method M th d eXtreme Programming Philosophies de développement logiciel Feature Driven Development Cette super-classe super appellée Lean classe Softwareest Development “développement Agile” PSP/TSP Scrum de développement agile Les principes Xbreed consignées dans “Le manifeste” Code science… etc. Copyright © 2011 STPP, Inc. (Software Technology, Process & People) sont 10 Manifesto Manifeste du développement pp agile g Nous découvrons de meilleures façons de développer du logiciel logiciel, en en développant et en aidant les autres à en développer. Ce travail nous a amenés à préférer : Les personnes et leurs interactions aux processus et outils Du logiciel qui tourne aux piles il de d documentation d t ti La coopération avec le client aux négociations d’un contrat L’adaptation au changement plutôt que le suivi d’un plan C’est-à-dire, C’est à dire bien que les choses à droite ne soient pas sans valeur, nous préférons bien plus celles de gauche Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 11 Agilité g et discipline p ag-ile (ajl, -il) adj. 1. Characterisé par la rapidité, l légèreté la lé è é et la l facilité f ili é de d mouvement, vivacité i ié dis-ci-pline (dis-plin) n. 1. Entrainement pour produire un comportement spécifique, résultant en une amélioration morale ou mentale American Heritage Dictionary + Le Robert Copyright © 2011 STPP, Inc. (Software Technology, Process & People) La stratégie PSP/TSP est de commencer par le bas En commencant par la formation PSP © 2006 by Carnegie Mellon University Formation d’équipe Discipline individuelle March 2006 Objectifs Rôles Processus d’équipe Plans réalistes et détaillés Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P Auto contrôle Communication Coordination Suivi de projet Analyse des risques TSP P PSP: Connais-toi toi-même Executive Strategy Seminar - Module 3 - 12 C’est pourquoi faire le PSP? 13 Le PSP a été créé pour aider l’ingénieur logiciel à améliorer ses processus par lui même Il repose sur un ensemble réduit de scripts, standards, formulaires et outils Il est basé sur un système de mesures simples et efficaces Le PSP c’est le self-management g basé sur les mesures personnelles et le contrôle empirique de processus Le PSP aide à l’amélioration continue de la qualité Le PSP est un processus individuel agile et discipliné basé sur les principes de niveau 5 du CMMI Copyright © 2011` STPP (Software Technology, Process & People) - Permission de réutiliser tel quel, avec le Copyright PSP pour le logiciel 14 Exigences PSP0 Planification Développement pp Script (description Guide processus) Conception Code Compilation Test Postmortem Journal des heures ett des d défauts Compte rendu d’experience d e pe e ce Produit fini Données planifiées/ réelles Propositions amélioration Copyright © 2011` STPP (Software Technology, Process & People) - Permission de réutiliser tel quel, avec le Copyright PSP pour le matériel 15 Exigences PSP0 Planification Développement pp Script (description Guide processus) Conception Diagramme des blocs Code S hé Schéma Compilation Simulation Test /Prototype Postmortem Produit fini Copyright © 2011` STPP (Software Technology, Process & People) Journal des heures ett des d défauts Compte rendu d’experience d e pe e ce Données planifiées/ réelles Propositions amélioration - Permission de réutiliser tel quel, avec le Copyright PSP in Lagos, Nigeria © 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 16 La L formation f ti PSP Team Software Process •Teambuilding •Risk management •Project planning and tracking PSP2.1 PSP2 •Code reviews •Design reviews Design templates PSP1.1 PSP1 •Size estimating •Test report p •Task planning • Schedule planning PSP0.1 PSP0 •Current Current process •Basic measures © 2006 by Carnegie Mellon University •Coding standard •Process improvement p proposal •Size measurement March 2006 Introduction aux techniques de contrôle quantitatif de la qualité Introduction aux techniques d’estimation et à la planification réaliste Introduction aux processus disciplinés et au cadre de mesures Executive Strategy Seminar - Module 3 - 17 Progrès P è dans d la l planification l ifi ti 40 Au début du cours PSP, PSP la majorité sous estime les efforts PSP 0 20 0 -200% 40 0% 100% -100% 0% 100% 0% 100% PSP 1 Après p la p première semaine, on constate un meilleur équilibre 20 0 -200% 40 PSP 2 Pour en arriver à une très nette amélioration en fin de cours © 2006 by Carnegie Mellon University -100% 20 0 -200% March 2006 -100% Effort Executive Strategy Seminar - Module 3 - 18 Estimation Accuracy 19 Progrès dans le contrôle d la de l qualité lité 120 Défauts trouvés AVANT compilation Yield = Défauts injectés AVANT compilation Yield % Y 100 80 Max 60 Avg Min 40 Crossreviews 20 0 1 2 3 4 5 6 7 8 Program Number Copyright © 2011 STPP (Software Technology, Process & People) 9 10 11 STPP, Inc. data, 2005 Cela demande un processus p q de spécifique formation des équipes Auto contrôle Formation d’équipe Discipline individuelle © 2006 by Carnegie Mellon University March 2006 Communication Coordination Suivi de projet Analyse des risques Objectifs Rôles Processus d’équipe Plans réalistes et détaillés Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P L un des objectifs L’un du TSP est de former des équipes auto-dirigées TSP P Former des équipes auto-dirigées Executive Strategy Seminar - Module 3 - 20 C’est quoi unTSP? Le p processus de développement pp en équipe q p ((Team Software Process) utilise les principes du PSP pour • Appliquer des pratiques d’ingénierie agiles disciplinées • Former et motiver des équipes auto auto-dirigées dirigées aux performances exceptionnelles • Produire un plan ambitieux mais réaliste • Suivre le projet d’une d une manière proactive • Mesurer et améliorer les processus en continu • Fabriquer des produits hors pairs Le TSP est un processus d’équipe d équipe agile et discipliné basé sur les principes de niveau 5 du CMMI Le TSP commence par un “lancement” © 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 21 22 Le lancement TSP Jour 1 Jour 2 Jour 3 Jour 4 1. Établissement des objectifs produit et business 4. Plans à long terme et taches à court terme 7. Analyse des risques 9. Revue du plan par la direction 2. Choix des roles et definition des objectifs bj tif d’équipe d’é i 5. Plan de qualité basé sur des données historiques 8. Préparation de la présentation à lla direction di ti postmortem 3 Développement 3. de la strategie et des processus 6. Plans individuels individuels, consolidation, et répartition Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 23 Rôles TSP Organisateur Li i Liaison utilisateur ili Liaison conception Liaison implémentation Liaison des tests Liaison plannification Liaison qualité Liaison processus Liaison support général Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Grace aux données objectives d’équipe analysées toutes les semaines Auto contrôle Formation d’équipe Discipline individuelle © 2006 by Carnegie Mellon University March 2006 Communication Coordination Suivi de projet Analyse des risques Objectifs Rôles Processus d’équipe Plans réalistes et détaillés Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P Après le lancement les équipes s’auto-dirigent TSP P Auto-direction des équipes Executive Strategy Seminar - Module 3 - 24 25 Example p de suivi TSP Week Summary - Form WEEK Name Team Consolidated Team Plan Security System Upgrade 5 Status for Week Week Date Date 2/7/2000 Cycle 1/31/2000 Plan/ Weekly Data Plan Project hours for this week Project hours this cycle to date Earned value for this week Earned value this cycle to date To-date hours for tasks completed Actual Actual 80.0 69.0 400 0 400.0 344 8 344.8 1 16 1.16 10.3 3.1 3.37 40.2 30.0 1.34 293.0 303.8 0.96 Plan Actual Earned Planned Hours ou s Hours ou s Value a ue Week ee 1.16 Plan Hrs./ Assembly Phase Tasks Completed Resource SYSTEM REQ Write SRS general sections tmc 14.0 12.0 1.4 4 Actual Hrs. 1.17 SYSTEM REQ Weekly requirements analysis meeting 5 tma 4.0 4.0 0.4 5 1.00 SYSTEM REQ Weekly requirements analysis meeting 5 tmb 4.0 4.0 0.4 5 1.00 SYSTEM REQ Weekly requirements analysis meeting 5 tmc 4.0 4.0 0.4 5 1.00 SYSTEM REQ Weekly requirements analysis meeting 5 tmd 4.0 4.0 0.4 5 1.00 0.0 4 8.5 0.0 4 TASKS DUE THROUGH WEEK 7 SYSTEM REQ Review SRS general sections tmc 5.0 SYSTEM STP Complete Validation Test Plan tmd 8.0 From the SEI class “Managing TSP teams” (Module 15) Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 0.94 26 Example de valeur acquise Ma semaine p présentation p Prépare Conception programme Réunion inutile Programmation Un peu de test Rédaction d’un rapport EV 25% 15% 7.5% 35% 12.5% 5% Estim. 5h 3h 1.5h 7h 2.5h 1h 20h Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Cumul 5h 8h 9.5h 16 5h 16.5h 19h 20h Terminé par Mardi Mardi Mercredi Vendredi Vendredi Vendredi Premier PSP/TSP en Chine S Septembre b 2008..Mars 2008 M 2009 27 Cumul at i ve Pl an/ Ear ned Val ue 120. 0 100 0 100. 80. 0 60 0 60. 40. 0 Plan: 4% par semaine Re-plan: R l 3.5% 3 5% par semaine i =>65/3.5=19 semaines de plus Realité: 35% en 10 semaines 20. 0 W9 W1 1 W1 3 W1 5 W1 7 W1 9 W2 1 W2 3 W2 5 W2 7 W7 W5 We W1 0. 0 Copyright © 2011 STPP, Inc. (Software Technology, Process & People) PV EV 28 Résultats PSP/TSP Average Effort Deviation - Range Average Schedule Deviation - Range 120% 160% 100% 140% 80% 120% 100% 60% 80% 40% 60% 20% 40% 20% 0% 0% -20% -20% Pre TSP/PSP Pre TSP/PSP With TSP/PSP Defects/KLOC in Acceptance Test - Range Post-Release Defects/KLOC - Range 0.9 1.4 0.8 1.2 0.7 06 0.6 1 0.5 0.8 0.4 0.6 0.3 0.2 0.4 0.1 0.2 0 With TSP/PSP 0 Pre TSP/PSP With TSP/PSP Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Pre TSP/PSP With TSP/PSP Ca intéresse qui? Copyright © 2011 STPP (Software Technology, Process & People) 29 Agile CMM vs. fragile agile Similarités 30 Différences Equipes auto-dirigées auto dirigées Fragile agile un peu plus: – Informel Rôles bien définis – Concerné par le code Logiciel og c e à valeur va eu business bus ess – Centré sur le projet Développement incrémental – Dominé par les tests Le chef comme entraîneur – Borné p par des jjalons courts Réaction au changement rapide Et beaucoup moins intéressés par Revues par les pairs / croisées – La documentation – La planification l ifi i détaillée d ill Réunions qui mènent à qqchose – Les données numériques Interaction entre les personnes – La compatibilité avec le CMMI Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 31 La stratégie g AIM 1. Déploiement rapide de l’amélioration des process s projet par projet processus 2. Couvre directement toutes les pratiques de CMMI-DEV aux niveaux i 2 andd 3+ 3. Centré sur le TSP - avec des ingénieurs formés au PSP - et incluant le SEPG (lancement TSP en équipe multi-discipline) 4. Évaluations SCAMPI ajustées pour l’agilité 5 Méthodes quantitatives “Six 5. Six Sigma Sigma” Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 32 L’ADP vaut le coup p Defects/KLOC 8 7.5 7 6.24 6 4.73 5 4 3 2.28 2 Source: Caper Jones 1.05 1 0.06 0 Level 1 Level 2 Level 3 Level 4 Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Level 5 TSP Synergie PSP/TSP/CMMI PSP offre la discipline et l’engagement individuels PSP aide à découvrir les champions et les leaders TSP “engage tous le monde dans la transformation de CMMI SCAMPI A results since 2002: ll’organisation organisation. ”1 maturity level 1 to 2 takes 14 months CMMI offre un cadre pour l’institutionalisation des maturity level 2 to 3 takes 17 months pratiques disciplinées niveau ll’organisation organisation maturity level 3 toau 4 takes 15.5 15 5demonths levelpour 4 to 5planifier takes 12.5etmonths PSP/TSPmaturity est parfait contrôler l’ADP Cette synergie accélère la maturation sur ll’échelle échelle CMMI (level 1 to 4 in 24 months)2 Cependant, tout cela nn’est est pas toujours suffisant! Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 1- W. Edward Deming ‘s last of his 14 points 2- Julie Switzer, NAVAIR TSP symposium 2008 33 34 Le p personnel est clé People CMM Threads Levels 5 Optimizing 4 Predictable 3 Defined 2 Managed Developing p g Capability & Competency Buildingg Workgroups & Culture Continuous Capability Improvement Mentoring Competency Based Assets Competency Integration Empowered Workgroups Motivatingg & Managing Performance Shaping p g the Workforce Organizational Performance Alignment Continuous Workforce Innovation Quantitative Performance Management Organizational Capability Management Competency Development Workgroup Development Competency Based Practices Competency Analysis Participatory Culture Career Development Communication & Coordination Compensation Performance Management Training and Development Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Work Environment Workforce Planning Staffing CMMI - Développe l capacités les ité organisationnelles TSP – Développe des produits de qualité dans les couts et délais PSP – Développe les capacités et la discipline individuelles Copyright © 2011 STPP, Inc. (Software Technology, Process & People) P-CMM – facilite l’’ameliorattion à tou P us les niiveaux Grande synergie unifiée From Bill Peterson SEI process prog head 35 Deux cultures que je connais Anglo saxons Détachés, business pro Les lois à la lettre Obsédés par les jalons Aime exercer l’autorité Décider, finir les taches “Troupeau Troupeau d’ d éléphants éléphants” Logique d’abord Vivre pour travailler Bière, whiskey Latins Sociaux, chaleureux L’esprit des lois S’amusant sur le chemin Vivre et laisser vivre Analyser, (re)faire mieux “Attroupement Attroupement de chats chats” Sentiments d’abord Travailler pour vivre Vin, tequila Bien q que ce qqui est à ggauche est une certaine valeur, nous préférons bien plus tout ce qui est à droite Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 36 Le dernier mot 37 “La qualité d’un D’ici 5 ans jje veux système qu’on se demande informatique “Comment ils ont fait dé d de dépend d la lces Mexicains?” qualité de son processus de d développement” —Watts Humphrey, 1986 Copyright © 2011 STPP, Inc. (Software Technology, Process & People) 38 Où suis-je? j Daniel M. Roy STPP, Inc. 20 Forest rd. BradfordWoods, PA 15015 USA +1 412 310 2263 [email protected] http://www.stpp.com et http://www.danroyhome.com Copyright © 2011 STPP, Inc. (Software Technology, Process & People)