Upload
phungdiep
View
215
Download
0
Embed Size (px)
Citation preview
1
Les processus de développement l (PSP) t é i (TSP)
Du développement logiciel agile sans
personnel (PSP) et en équipe (TSP)Du développement logiciel agile sans
fragilitéDaniel M. RoyDaniel M. Roy
SPIN de Montréal21 Novembre 2011
PSP, TSP, Personal Software Process and Team Software Process are service marks of CMUCMM and Capability Maturity Model are registered in the U.S. patent and trademark office
21 Novembre 2011
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
2Agendag
Quelques infoUn p’tit sondageC’est quoi une méthode “agile”q gAgilité et CMMIC’est quoi un PSP/TSP?C est quoi un PSP/TSP? TSP et AIM: on coupe la poire en deuxEt le personel?Synergie CMMI/PSP-TSP/P-CMM
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
y g
3Un bog peut coûter très cher!g p
By Ryan Leggio | 02-03-11 | 03:25 PM |y y gg | | |
AXA Rosenberg has agreed to pay more than La firme AXA Rosenberg a accepté de payer une amende de plus de $240 million pour n’avoir pas$240 million to settle charges that it concealed
from clients a significant error in the computer code of the quantitative investment model that
amende de plus de $240 million pour n avoir pas divulgué à ses clients une erreur de programmation dans le modèle informatique utilisé par la firme,
ôl i i d’ ècode of the quantitative investment model that the firm uses to manage money, according to the SEC.
pour contrôler ses investissements, d’après un rapport du SEC (le gendarme de la bourse américaine).the SEC.
Morningstar news 3 Feb 2011
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
4
Faut faire quek-chose!Faut faire quek chose!
Country CAGR% (2011-2015)
Market $B (sales & services)
GB 6% $84B
Allemagne 4% $71B
France 3% $50B
Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Source: http://www.articleshub.org
5Le sondageg
1
0.7
0.8
0.9
0.5
0.6
0.2
0.3
0.4
0
0.1
CMMI L2+ Entendu Y pense Utilise
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
p
6C’est quoi un CMMI?q
Copyright © 2011 STPP, Inc. (Software Technology, Process & People) Crédit: Alexandre FONTAINE
9C’est quoi agile?q g
Une super-classe de:Méth d t “Méth d l i ”Adaptive Software Development– Méthodes et “Méthodologies”
– Cycles de développement itératifsP ti d ti
Adaptive Software Development Crystal dX (agile RUP)D i S t D l t M th d– Pratiques de programmation
– Philosophies de développement logicielCette super classe est appellée
Dynamic Systems Development MethodeXtreme ProgrammingFeature Driven DevelopmentCette super-classe est appellée
“développement Agile”Les principes de développement agile sont
Lean Software DevelopmentPSP/TSPScrumLes principes de développement agile sont
consignées dans “Le manifeste”ScrumXbreedCode science… etc.
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
10ManifestoManifeste du développement agile
Nous découvrons de meilleures façons de développer du logiciel en en développant et en aidant les autres
pp g
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 outilsDu logiciel qui tourne il d d t tiDu logiciel qui tourne aux piles de documentationLa coopération avec le client aux négociations d’un contratL’adaptation au changement plutôt que le suivi d’un plan
C’est à dire bien que les choses à droite ne soientC’est-à-dire, bien que les choses à droite ne soientpas sans valeur, nous préférons bien plus celles de gauche
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
11Agilité et disciplineg p
ag-ile (ajl, -il) adj. 1. Characterisé par la rapidité, l lé è é l f ili é d i i éla légèreté et la facilité de mouvement, vivacité
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)
PSP: Connais-toi toi-même
Autocontrôle
CommunicationCoordination
Suivi de projetAnalyse des risques P
La stratégie PSP/TSP est de Formation
ObjectifsRôles
Analyse des risques
TS
P
commencer par le bas
En commencant
d’équipe
Discipline des processus
Processus d’équipePlans réalistes et détaillés
PEn commencant par la formation PSP
Disciplineindividuelle
Discipline des processusMesures de performance
Estimation et plannificationContrôle de qualité
PS
P
© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 12
13C’est pourquoi faire le PSP?Le PSP a été créé pour aider l’ingénieur logiciel à
améliorer ses processus par lui mêmeaméliorer ses processus par lui mêmeIl repose sur un ensemble réduit de scripts, standards,
formulaires et outilsIl est basé sur un système de mesures simples et efficacesLe PSP c’est le self-management basé sur les mesures g
personnelles et le contrôle empirique de processusLe 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
14PSP pour le logiciel
PSP0
Exigences
PSP0
Développement
Planification
ppConception
Code
Script(descriptionprocessus)
Guide Journaldes
heurest d
Postmortem
Compilation
Test
et desdéfauts Compte
rendu d’experiencePostmortem d e pe e ce
Données planifiées/ réelles
Copyright © 2011` STPP (Software Technology, Process & People) - Permission de réutiliser tel quel, avec le Copyright
Produit finiDonnées planifiées/ réellesPropositions amélioration
15PSP pour le matériel
PSP0
Exigences
PSP0
Développement
Planification
ppConception
Code
Script(descriptionprocessus)
Guide Journaldes
heurest d
Diagrammedes blocs
S hé
Postmortem
Compilation
Test
et desdéfauts Compte
rendud’experience
Schéma
Simulation/Prototype
Postmortem d e pe e ce
Données planifiées/ réelles
Copyright © 2011` STPP (Software Technology, Process & People) - Permission de réutiliser tel quel, avec le Copyright
Produit finiDonnées planifiées/ réellesPropositions amélioration
PSP in Lagos, Nigeria
© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 16
L f ti PSPLa formation PSP Team Software
Process•Teambuilding
•Risk management•Project planning and tracking
PSP2•Code reviews
•Design reviews
PSP2.1Design 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
PSP0Current process
p
PSP0.1•Coding standard
•Process improvementIntroduction aux processus disciplinés et au cadre de
© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 17
•Current process•Basic measures
pproposal
•Size measurement
disciplinés et au cadre de mesures
P è d l l ifi ti4040
Progrès dans la planificationAu début du cours PSP la PSP 0
2020
Au début du cours PSP, la majorité sous estime les efforts
PSP 1
100%0%-100%-200% 100%0%-100%-200%00
4040
Après la première
100%0%-100%-200% 100%0%-100%-200%0
20
0
20p p
semaine, on constate un meilleur équilibre
PSP 220
40
20
40
Pour en arriver à une très nette amélioration en fin
© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 18Effort Estimation Accuracy100%0%-100%-200% 100%0%-100%-200%
00
nette amélioration en fin de cours
19Progrès dans le contrôled l litéde la qualité
120 Défauts trouvés AVANT compilation
100
120
%
Défauts trouvés AVANT compilationDéfauts injectés AVANT compilationYield =
60
80
Yiel
d % Max
Avg
Cross-reviews
20
40
Y Min
01 2 3 4 5 6 7 8 9 10 11
Copyright © 2011 STPP (Software Technology, Process & People)Program Number STPP, Inc. data, 2005
Former des équipes auto-dirigéesL’un des objectifsL un des objectifs du TSP est de former des équipes auto-dirigées
Autocontrôle
CommunicationCoordination
Suivi de projetAnalyse des risques P
Cela demande un processus spécifique de Formation
ObjectifsRôles
Analyse des risques
TS
P
p qformation des équipes
d’équipe
Discipline des processus
Processus d’équipePlans réalistes et détaillés
PDisciplineindividuelle
Discipline des processusMesures de performance
Estimation et plannificationContrôle de qualité
PS
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 p pp q p (
Process) utilise les principes du PSP pour• Appliquer des pratiques d’ingénierie agiles disciplinées• Former et motiver des équipes auto-dirigées auxFormer et motiver des équipes auto dirigées aux
performances exceptionnelles• Produire un plan ambitieux mais réaliste• Suivre le projet d’une manière proactiveSuivre 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 agile et discipliné baséLe TSP est un processus 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
22Le 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 desrisques
9. Revue duplan par ladirection
2. Choix des roleset definition desbj tif d’é i
5. Plan de qualité basé
sur des données
8. Préparationde la présentation
à l di tipostmortem
objectifs d’équipe sur des données historiques
6. Plans individuels
à la direction
3 Développement individuels, consolidation,et répartition
3. Développementde la strategie
et des processus
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
23Rôles TSP
OrganisateurLi i iliLiaison utilisateurLiaison conceptionLiaison implémentationLiaison des testsLiaison plannificationLiaison qualitéLiaison qualitéLiaison processusLiaison support général
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
Liaison support général
Auto-direction des équipes
Après le lancementAprès le lancement les équipes s’auto-dirigent Auto
contrôle
CommunicationCoordination
Suivi de projetAnalyse des risques PGrace aux données
objectives d’équipe analysées toutes les semaines Formation
ObjectifsRôles
Analyse des risques
TS
P
les semaines d’équipe
Discipline des processus
Processus d’équipePlans réalistes et détaillés
PDisciplineindividuelle
Discipline des processusMesures de performance
Estimation et plannificationContrôle de qualité
PS
P
© 2006 by Carnegie Mellon University March 2006 Executive Strategy Seminar - Module 3 - 24
25Example de suivip
TSP Week Summary - Form WEEKName Date 2/7/2000Consolidated Team PlanTeam
Status for Week 5 CycleWeek Date 1/31/2000 Plan/
Weekly Data Plan Actual ActualProject hours for this week 80.0 69.0 1.16Project hours this cycle to date 400 0 344 8 1 16
Security System Upgrade
Project hours this cycle to date 400.0 344.8 1.16Earned value for this week 10.3 3.1 3.37Earned value this cycle to date 40.2 30.0 1.34To-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.Assembly Phase Tasks Completed Resource ou s ou s a ue ee Actual Hrs.SYSTEM REQ Write SRS general sections tmc 14.0 12.0 1.4 4 1.17SYSTEM REQ Weekly requirements analysis meeting 5 tma 4.0 4.0 0.4 5 1.00SYSTEM REQ Weekly requirements analysis meeting 5 tmb 4.0 4.0 0.4 5 1.00SYSTEM REQ Weekly requirements analysis meeting 5 tmc 4.0 4.0 0.4 5 1.00SYSTEM 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 4SYSTEM STP Complete Validation Test Plan tmd 8.0 8.5 0.0 4 0.94
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
From the SEI class “Managing TSP teams” (Module 15)
26
Example de valeur acquiseExample de valeur acquise
Ma semainePrépare présentation
Estim.5h
EV25%
Cumul Terminé par5h Mardip p
Conception programmeRéunion inutileProgrammation
3h1.5h7h
15%7.5%35%
8h Mardi9.5h Mercredi16 5h VendrediProgrammation
Un peu de testRédaction d’un rapport
7h2.5h1h20h
35%12.5%5%
16.5h Vendredi19h Vendredi20h Vendredi
20h
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
27Premier PSP/TSP en ChineS b 2008 M 2009Septembre 2008..Mars 2009
Cumul at i ve Pl an/ Ear ned Val ueCumul at i ve Pl an/ Ear ned Val ue
100 0
120. 0
60 0
80. 0
100. 0
PVR l 3 5% i
20. 0
40. 0
60. 0 EV
Realité: 35% en 10 semaines
Plan: 4% par semaineRe-plan: 3.5% par semaine=>65/3.5=19 semaines de plus
0. 0
20. 0
W1 We W5 W7 W9 W11
W13
W15
W17
W19
W21
W23
W25
W27
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
28Résultats PSP/TSPAverage Schedule Deviation - Range
140%160%
Average Effort Deviation - Range
100%
120%
20%40%60%80%
100%120%
20%
40%
60%
80%
100%
-20%0%
20%
Pre TSP/PSP With TSP/PSP-20%
0%
Pre TSP/PSP With TSP/PSP
Defects/KLOC in Acceptance Test - Range
0 60.70.80.9
Post-Release Defects/KLOC - Range
1
1.2
1.4
0.10.20.30.40.50.6
0.2
0.4
0.6
0.8
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
0Pre TSP/PSP With TSP/PSP
0Pre TSP/PSP With TSP/PSP
30Agile CMM vs. fragile agileSimilarités
Equipes auto dirigéesDifférences
Fragile agile un peu plus:Equipes auto-dirigéesRôles bien définisLogiciel à valeur business
Fragile agile un peu plus: – Informel– Concerné par le codeog c e à va eu bus ess
Développement incrémentalLe chef comme entraîneur
– Centré sur le projet– Dominé par les tests– Borné par des jalons courts
Réaction au changement rapideRevues par les pairs / croisées
p j
Et beaucoup moins intéressés par– La documentation
l ifi i d illRéunions qui mènent à qqchoseInteraction entre les personnes
– La planification détaillée– Les données numériques– La compatibilité avec le CMMI
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
31La stratégie AIMg
1. Déploiement rapide de l’amélioration des process s projet par projetprocessus projet par projet
2. Couvre directement toutes les pratiques de i dCMMI-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”
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
5. Méthodes quantitatives Six Sigma
32L’ADP vaut le coupp
Defects/KLOC
7.5
6.247
8
4.735
6
2.282
3
4
Source: Caper Jones
1.05
0.060
1
2
Level 1 Level 2 Level 3 Level 4 Level 5 TSP
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
Level 1 Level 2 Level 3 Level 4 Level 5 TSP
33Synergie PSP/TSP/CMMIPSP offre la discipline et l’engagement individuelsPSP aide à découvrir les champions et les leadersPSP aide à découvrir les champions et les leadersTSP “engage tous le monde dans la transformation de
l’organisation ”1CMMI SCAMPI A results since 2002:l organisation.CMMI offre un cadre pour l’institutionalisation des
pratiques disciplinées au niveau de l’organisation
maturity level 1 to 2 takes 14 monthsmaturity level 2 to 3 takes 17 monthsmaturity level 3 to 4 takes 15 5 monthspratiques disciplinées au niveau de l organisation
PSP/TSP est parfait pour planifier et contrôler l’ADPCette synergie accélère la maturation sur l’échelle
maturity level 3 to 4 takes 15.5 monthsmaturity level 4 to 5 takes 12.5 months
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!Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
Cependant, tout cela n est pas toujours suffisant!1- W. Edward Deming ‘s last of his 14 points2- Julie Switzer, NAVAIR TSP symposium 2008
34Le personnel est clé
LevelsPeople CMM Threads
Developing Building Motivating Shaping
p
5
p gCapability &Competency
gWorkgroups &
Culture
g& ManagingPerformance
p gthe
Workforce
ContinuousCapability
ContinuousWorkforce
OrganizationalPerformanceOptimizing
4
CapabilityImprovement
Mentoring
WorkforceInnovation
CompetencyIntegration Quantitative
PerformanceOrganizational
Capability
PerformanceAlignment
Predictable
3
CompetencyBased Assets
CompetencyDevelopment
EmpoweredWorkgroups
WorkgroupDevelopment
PerformanceManagement
CompetencyBased Practices
CapabilityManagement
WorkforceDefined
2
CompetencyAnalysis
Training and
ParticipatoryCulture
Communication
CareerDevelopment
CompensationPerformanceManagement
Planning
Staffing
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
Managed Development & Coordination ManagementWork Environment
Staffing
35Grande synergie unifiée
CMMI - Développel ité usles capacités
organisationnelles
tion
à to
u
TSP – Développe des produits de qualité dans les ’a
mel
iora
tiv
eaux
qualité dans les couts et délais
PSP Développe –fa
cilit
el’
les
ni
PSP – Développe les capacités et la
discipline individuellesP-
CM
M –
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
P
From Bill PetersonSEI process prog head
36Deux cultures que je connaisAnglo saxons
Détachés, business proLatins
Sociaux, chaleureuxLes lois à la lettreObsédés par les jalons
L’esprit des loisS’amusant sur le chemin
Aime exercer l’autoritéDécider, finir les taches“Troupeau d’ éléphants”
Vivre et laisser vivreAnalyser, (re)faire mieux“Attroupement de chats”Troupeau d éléphants
Logique d’abordVivre pour travailler
Attroupement de chatsSentiments d’abord Travailler pour vivreVivre pour travailler
Bière, whiskeyTravailler pour vivreVin, tequila
Bien que ce qui est à gauche est une certaine
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
q q gvaleur, nous préférons bien plus tout ce qui est à droite
37Le dernier mot
“La qualité d’un D’ici 5 ans je veux systèmeinformatiquedé d d l
jqu’on se demande “Comment ils ont fait
dépend de la qualité de son
d
ces Mexicains?”
processus de développement”
—Watts Humphrey, 1986
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)
38Où suis-je?j
Daniel M. RoySSTPP, Inc.20 Forest rd.BradfordWoods, PA15015 USA+1 412 310 [email protected]://www.stpp.com et http://www.danroyhome.com
Copyright © 2011 STPP, Inc. (Software Technology, Process & People)