1 Les processus de développement personnel (PSP) et en équipe (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
Agenda 2 Quelques info Un p tit sondage C est quoi une méthode agile Agilité et CMMI C est Cest quoi un PSP/TSP? TSP et AIM: on coupe la poire en deux Et le personel? Synergie CMMI/PSP-TSP/P-CMM
3 Un bog gpeut coûter très cher! By Ryan Leggio 02-03-11 03:25 PM La firme AXA Rosenberg a accepté de payer une AXA Rosenberg has agreed to pay more than amende de plus de $240 million pour n avoir pas $240 million to settle charges that it concealed divulgué à ses clients une erreur de programmation from dans clients le modèle a informatique significant error utilisé in par the la firme, computer code pour of contrôler the quantitative ses investissements, i investment d après model un that the rapport firm du uses SEC to (le manage gendarme money, de la bourse according to the américaine). SEC. Morningstar news 3 Feb 2011
Faut faire quek-chose! 4 Country CAGR% (2011-2015) Market $B (sales & services) GB 6% $84B Allemagne 4% $71B France 3% $50B Source: http://www.articleshub.org
Le sondage 5 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 CMMI L2+ Entendu Y pense Utilise
C est quoi un CMMI? 6 Crédit: Alexandre FONTAINE
7 Comment je rêvais de bosser
Et voila ce qu on m a refilé 8
C est quoi agile? 9 Une super-classe de: Adaptive Software Development Méthodes et Méthodologies Crystal Cycles dx (agile de développement RUP) itératifs Pratiques Dynamic de Systems programmation Development tmethod Philosophies extreme Programming de développement logiciel Feature Driven Development Cette super-classe Lean Software est Development appellée développement PSP/TSP Agile Les principes Scrum de développement agile sont Xbreed consignées dans Le manifeste Code science etc.
Manifesto g Manifeste du développement agile 10 Nous découvrons de meilleures façons de développer du 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 de documentation 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, bien que les choses à droite ne soient pas sans valeur, nous préférons bien plus celles de gauche
Agilité et discipline 11 ag-ile (ajl, -il) adj. 1. Characterisé par la rapidité, la légèreté é et la facilité de mouvement, vivacité 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
PSP: Connais-toi toi-même La stratégie PSP/TSP est de commencer par le bas Auto contrôle Formation d équipe Communication Coordination Suivi de projet Analyse des risques Objectifs Rôles Processus d équipe Plans réalistes et détaillés TSP En commencant par la formation PSP Discipline individuelle Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P 2006 by Carnegie Mellon University March 2006 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 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 Script (description processus) Guide Conception Code Compilation Test Postmortem Journal des heures et tdes défauts Compte rendu d experience de e 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 Script (description processus) Guide Conception Diagramme des blocs Code Shé Schéma Compilation Test Simulation /Prototype Postmortem Journal des heures et tdes défauts Compte rendu d experience de e 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 in Lagos, Nigeria 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3-16
La formation PSP Team Software Process Teambuilding Risk management Project planning and tracking PSP2 Code reviews Design reviews PSP2.1 Design templates Introduction aux techniques de contrôle quantitatif de la qualité PSP1 Size estimating Test report PSP1.1 Task planning Schedule planning Introduction aux techniques d estimation et à la planification réaliste PSP0 Current process Basic measures PSP0.1 Coding standard Process improvement proposal Size measurement Introduction aux processus disciplinés et au cadre de mesures 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3-17
Progrès dans la planification Au début du cours PSP, la PSP 0 majorité sous estime les 20 efforts 40 0-200% 40-100% 0% 100% Après la première semaine, on constate un meilleur équilibre PSP 1 20 0-200% -100% 0% 100% 40 Pour en arriver à une très nette amélioration en fin de cours 20 PSP 2 0-200% -100% 0% 100% 2006 by Carnegie Mellon University March 2006 Effort Estimation Executive Strategy Accuracy Seminar - Module 3-18
Progrès dans le contrôle de la qualité 19 120 Défauts trouvés AVANT compilation Yield = Défauts injectés AVANT compilation 100 Yield % 80 60 40 20 Crossreviews Max Avg Min 0 1 2 3 4 5 6 7 8 9 10 11 Program Number STPP, Inc. data, 2005 Copyright 2011 STPP (Software Technology, Process & People)
Former des équipes auto-dirigées L un Lun des objectifs du TSP est de former des équipes auto-dirigées Cela demande un processus spécifique de formation des équipes Auto contrôle Formation d équipe Communication Coordination Suivi de projet Analyse des risques Objectifs Rôles Processus d équipe Plans réalistes et détaillés TSP Discipline individuelle Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3-20
C est quoi untsp? Le processus de développement en équipe (Team Software Process) utilise les principes du PSP pour Appliquer des pratiques d ingénierie agiles disciplinées Former et motiver des équipes auto-dirigées aux performances exceptionnelles Produire un plan ambitieux mais réaliste Suivre le projet 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
Le lancement TSP 22 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 d équipe 5. Plan de qualité basé sur des données historiques 8. Préparation de la présentation àl la direction postmortem 6. Plans 3. Développement individuels, de la strategie consolidation, et des processus et répartition
Rôles TSP 23 Organisateur Liaison i utilisateur Liaison conception Liaison implémentation Liaison des tests Liaison plannification Liaison qualité Liaison processus Liaison support général
Auto-direction des équipes Après le lancement les équipes s auto-dirigent Grace aux données objectives d équipe analysées toutes les semaines Auto contrôle Formation d équipe Communication Coordination Suivi de projet Analyse des risques Objectifs Rôles Processus d équipe Plans réalistes et détaillés TSP Discipline individuelle Discipline des processus Mesures de performance Estimation et plannification Contrôle de qualité PSP P 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3-24
Example de suivi 25 TSP Week Summary - Form WEEK Name Consolidated Team Plan Date 2/7/2000 Team Security System Upgrade Status for Week 5 Cycle Week Date 1/31/2000 Plan/ Weekly Data Plan Actual Actual Project hours for this week 80.0 69.0 1.16 Project hours this cycle to date 400.00 344.8 116 1.16 Earned value for this week 10.3 3.1 3.37 Earned value this cycle to date 40.2 30.0 1.34 To-date hours for tasks completed 293.0 303.8 0.96 Plan Actual Earned Planned Plan Hrs./ Assembly Phase Tasks Completed Resource Hours Hours Value Week Actual Hrs. SYSTEM REQ Write SRS general sections tmc 14.0 12.0 1.4 4 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 TASKS DUE THROUGH WEEK 7 SYSTEM REQ Review SRS general sections tmc 5.0 0.0 4 SYSTEM STP Complete Validation Test Plan tmd 8.0 8.5 0.0 4 0.94 From the SEI class Managing TSP teams (Module 15)
26 Example de valeur acquise Ma semaine Prépare présentation 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 Cumul Terminé par 5h Mardi 8h Mardi 9.5h Mercredi 16.5h Vendredi 19h Vendredi 20h Vendredi
Premier PSP/TSP en Chine 27 Septembre 2008..Mars 2009 Cumul at i ve Pl an/ Ear ned Val ue 120. 0 100. 0 80. 0 60. 0 40. 0 20. 0 0. 0 W1 Plan: 4% par semaine We W5 W7 W9 W11 Re-plan: 3.5% par semaine =>65/3.5=19 semaines de plus Realité: 35% en 10 semaines W13 W15 W17 W19 W21 W23 W25 W27 PV EV
Résultats PSP/TSP 28 Average Effort Deviation - Range Average Schedule Deviation - Range 120% 160% 100% 80% 60% 140% 120% 100% 80% 40% 60% 20% 0% 40% 20% 0% -20% -20% Pre TSP/PSP With 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 0.7 06 0.6 0.5 1.2 1 0.8 0.4 0.3 0.2 0.1 0.6 0.4 0.2 0 0 Pre TSP/PSP With TSP/PSP Pre TSP/PSP With TSP/PSP
Ca intéresse qui? 29 Copyright 2011 STPP (Software Technology, Process & People)
Agile CMM vs. fragile agile 30 Similarités Equipes auto-dirigées Rôles bien définis Logiciel à valeur business Développement incrémental Le chef comme entraîneur Réaction au changement rapide Revues par les pairs / croisées Réunions qui mènent à qqchose Interaction entre les personnes Différences Fragile agile un peu plus: Informel Concerné par le code Centré sur le projet Dominé par les tests Borné par des jalons courts Et beaucoup moins intéressés par La documentation La planification i détaillée Les données numériques La compatibilité avec le CMMI
La stratégie AIM 31 1. Déploiement rapide de l amélioration des processus s projet par projet 2. Couvre directement toutes les pratiques de CMMI-DEV aux niveaux 2 and 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 Sigma
L ADP vaut le coup 32 Defects/KLOC 8 7.5 7 6.24 6 5 4.73 4 3 2.28 Source: Caper Jones 2 1 0 1.05 0.06 Level 1 Level 2 Level 3 Level 4 Level 5 TSP
Synergie PSP/TSP/CMMI 33 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 l organisation organisation. CMMI SCAMPI 1 A results since 2002: maturity level 1 to 2 takes 14 months CMMI offre un cadre pour l institutionalisation des pratiques maturity level 2 to 3 takes 17 months maturity disciplinées level 3 to au 4 takes niveau 15.5 5 de months l organisation PSP/TSP maturity est parfait level pour 4 to 5 planifier takes 12.5 et months contrôler l ADP Cette synergie accélère la maturation sur l échelle CMMI (level 1 to 4 in 24 months) 2 Cependant, tout cela n est pas toujours suffisant! 1- W. Edward Deming s last of his 14 points 2- Julie Switzer, NAVAIR TSP symposium 2008
Le personnel est clé 34 Levels People CMM Threads Developing Building Motivating Shaping Capability & Workgroups & & Managing the Competency Culture Performance Workforce 5 Optimizing Continuous Capability Improvement Organizational Performance Alignment Continuous Workforce Innovation 4 Predictable Mentoring Competency Based Assets Competency Integration Empowered Workgroups Quantitative Performance Management Organizational Capability Management 3 Defined Competency Development Competency Analysis Workgroup Development Participatory Culture Competency Based Practices Career Development Workforce Planning 2 Training and Communication Managed Development & Coordination Compensation Performance Management Work Environment Staffing
Grande synergie unifiée 35 CMMI - Développe les capacités organisationnelles TSP Développe des produits de qualitédansles les couts et délais PSP Développe les capacités et la discipline individuelles tion à tou us ameliorat iveaux facilite l les ni P-CMM From Bill Peterson SEI process prog head
Deux cultures que je connais 36 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 d é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 de chats Sentiments d abord Travailler pour vivre Vin, tequila Bien que ce qui est à gauche est une certaine valeur, nous préférons bien plus tout ce qui est à droite
Le dernier mot 37 La qualité d un système informatique dépendd de la qualité de son d processus de développement D ici 5 ans je veux qu on se demande Comment ils ont fait ces Mexicains? Watts Humphrey, 1986
Où suis-je? 38 Daniel M. Roy STPP, Inc. 20 Forest rd. BradfordWoods, PA 15015 USA +1 412 310 2263 danroy@stpp.com http://www.stpp.com et http://www.danroyhome.com