29
# 1 Méthode Agile du CMMI ® Personal Software Process ms / Team Software Process ms + + 03 / 08 / 2011 V. 04 + Alcyonix - Conseil en amélioration de processus ms Personal Software Process, PSP, Team Software Process, et TSP sont des marques de service de Carnegie Mellon University. ® Capability Maturity Model, et CMMI sont enregistrés auprès du U.S. Patent and Trademark Office par Carnegie Mellon University.

Psp Tsp Agile 3 1 Fr

Embed Size (px)

DESCRIPTION

La méthode Agile du CMMI est TSP/PSP.

Citation preview

Page 1: Psp Tsp Agile 3 1 Fr

# 1

Méthode Agile du CMMI®

Personal Software Processms / Team Software Processms

++

03 / 08 / 2011 V. 04

+

Alcyonix - Conseil en amélioration de processus

ms Personal Software Process, PSP, Team Software Process, et TSP sont des marques de service de Carnegie Mellon University.® Capability Maturity Model, et CMMI sont enregistrés auprès du U.S. Patent and Trademark Office par Carnegie Mellon University.

Page 2: Psp Tsp Agile 3 1 Fr

# 2

Qu'est-ce que Agile

Qu'est-ce que le CMMI®

PSP/TSPms : la méthode Agile du CMMI®

TSP /PSPms : Résultats des organisations

Sommaire++

+Alcyonix - Conseil en amélioration de processus

PSP/TSP in concert with process improvement activities will accelerate organization maturity.

John D. Vu, The Boeing Company, 2001

Used TSP to cut defects in half and establish data baseline to improve future planning

efforts

Jim Sartain

Over 20,300 major defects found prior to Test through TSP ; unit test defects dropped from

25 per KLOC to 7 per KLOC

Jeffrey Smith (Coach TSP Microsoft IT)

Page 3: Psp Tsp Agile 3 1 Fr

++

# 3

Agile – Manifesto

" Nous avons trouvé une voie améliorant le développement logiciel en réalisant ce travail et en aidant les autres à le faire. De ce fait nous avons déduit des valeurs communes. "

Le manifeste Agile est constitué de 4 valeurs et de 12 principes fondateurs.

Les quatre valeurs fondamentales Agiles sont :Davantage l’interaction avec les personnes que les processus et les outils;

Davantage un produit opérationnel qu’une documentation pléthorique;

Davantage la collaboration avec le client que la négociation de contrat;

Davantage la réactivité face au changement que le suivi d'un plan.

Que signifie mettre en application AgileUn changement des valeurs de l’organisation;

Utiliser 1 ou plusieurs méthodes ou techniques.

Alcyonix - Conseil en amélioration de processus

http://agilemanifesto.org/

Page 4: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 4

Concepts Agiles Typiques

Développement itératif, incrémental et adaptatif qui livre de la valeur;

Implication active du client;

Intégration continue;

Planification par vagues;

Livraison fréquente et de courte durée d’applications fonctionnelles;

Changement est vu comme un avantage compétitif;

Test en premier et puis code;

Attention continue de l’excellence technique et la qualité de la conception;

Ingénierie inverse naturelle (code propre);

Équipe autonome, engagée et autodirigée;

Collaboration/Communication directe des membres de l’équipe;

Plus de savoir faire que le savoir être.

Page 5: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 5

Critiques / Malentendus

Client n’a pas le temps (planification, réunions, tests);

Fréquentes relâches = perception de la mauvaise qualité du produit;

Agile est orienté fonctionnalités, les éléments non fonctionnels sont durs à décrire dans un story;

Impossible de monter un devis avec une évaluation réaliste des efforts;

Négociations contractuelles difficiles;

Moyen pour soutirer de l’argent des clients par le manque de définition de livrables;

Manque de structure, de processus et de documentation nécessaire;

Conception du logiciel insuffisante;

Demande trop de changement culturel dans les organisations;

Peut être très inefficace « reprise de code »;

Peut augmenter le risque sur la portée du projet dû au manque des détails des exigences;

Manque de discipline;

Manque de définition des rôles;

Demande des développeurs expérimentés. Plusieurs web pages.McBreen, P. (2003). Questioning Extreme Programming. Boston, MA: Addison-Wesley. ISBN 0-201-84457-5.Boehm, B.; R. Turner (2004). Balancing Agility and Discipline: A Guide for the Perplexed. Boston, MA: Addison-Wesley. ISBN 0-321-18612-5.

Page 6: Psp Tsp Agile 3 1 Fr

++

# 6

CMMI

CMMI est un modèle pas un processus ou une norme.

Il décrit les caractéristiques des processus efficaces.

Que signifie mettre en application CMMI ?

C’est de définir et implémenter vos processus, méthodes et techniques basés sur les définitions du modèle.

Alcyonix - Conseil en amélioration de processus

2

5

4

3

Innovation et déploiement organisationnelsAnalyse causale et résolution

Performance du processus organisationnelGestion de projet quantitative

Développement des exigencesSolution techniqueIntégration de produitVérificationValidationFocalisation sur le processus organisationnelDéfinition du processus organisationnelFormation organisationnelleGestion de projet intégréeGestion des risquesAnalyse et prise de décision

Gestion des exigencesPlanification de projetSurveillance et contrôle de projetGestion des accords avec les fournisseursMesures et analyseAssurance qualité processus et produitGestion de configuration

Page 7: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 7

Historique du PSP / TSP

Watts S. Humphrey - Standard Engineering Institute (SEI)

CMM v1.1 introduit en 1991

Répondre aux questions :Comment déployer le CMM dans ma petite organisation (ma crainte est que CMMI est trop « lourd » pour nous) ?

Comment garder ma flexibilité et réactivité (ma crainte est que d’écrire et implémenter une série de processus transformera mon organisation en bureaucratie) ?

Comment puis-je déployer les principes de CMMI sur une plus petite une échelle, projet par projet (ma crainte est qu’un budget d’implémentation du CMMI à l'échelle de l'organisation va tuer l'initiative) ?

PSP introduit en 1994

TSP introduit en 2000

Depuis plusieurs refonte pour satisfaire aux contraintes d'affaires

Page 8: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 8

Équipe de sport

Les logiciels sont développés par des équipes ;

La compétence de l’individu et de l'équipe, la discipline, et l'engagement détermine le résultat ;

Pour améliorer la performance de l'organisation, vous devez améliorer la performance des équipes et pour cela vous devez améliorer la performance des membres de l'équipe.

Membres d’équipe, c’est :Être motivé ;

Négocier ses propres engagements ;

Faire le suivi de ses plans ;

Être dédier à l’excellence, à la haute qualité ;

Être confiant en ses capacités ;

Avoir une discipline de travail.

Ce dont le membre d’équipe a besoinDes objectifs qui le challengent ;

La confiance des managers ;

Le support des managers ;

Un feedback (encouragement) sur sa performance ;

Un environnement.

Page 9: Psp Tsp Agile 3 1 Fr

++

# 9

PSPms/TSPms processus Agile du CMMI

Le TSP guide une équipe autodirigée de développeurs disciplinés par le PSP, dans la réalisation d’un produit, en appliquant le coaching et le leadership.

Le PSP est une méthode de travail conçue pour une utilisation individuelle qui s‘emploie à organiser, autocontrôler et améliorer la manière dont vous travaillez.

1 à 10 équipesde 2 à 20 membres

Juste assez de processus à une équipe pour couvrir les bonnes pratiques du modèle CMMI à un niveau 5.

Alcyonix - Conseil en amélioration de processus

Page 10: Psp Tsp Agile 3 1 Fr

++Qualifier l’individu pour devenir membre d’une équipe ;

Apprendre à suivre un processus et mesurer, estimer, prévoir, et suivre son travail.

SQLI, fournisseur d'innovation - Nom du document # 10

Compétences du développeur

Gestion des exigences Gestion des processus Développement cyclique Estimation et planification Suivi des tâches Conception saine Gestion de la qualité Test Revue Analyse de code (Code propre) Données/mesures personnelles Auto-amélioration

Chaque personne est différente.Un membre d’équipe discipliné est plus efficace et efficient.

Une attention continue à l'excellence technique et à la qualité de la conception améliore l'agilité.

TDD XUnit, FIT/Fitness Programmation en binôme Techniques d’estimation Agile

Page 11: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 11

Équipe de projet

Dirige ses projets;

Prends ses engagements;

Effectue le meilleur travail;

Est plus créative et innovatrice;

Dispose de ses processus et de son plan;

Est dédié à l’excellence et au succès;

Résout activement les problèmes et les conflits;

Communique ouvertement.

Chef de groupe

Resp. client

Resp. des tests

Resp. TI

Resp. de l’implémentation

Resp. de la conception

Resp. qualité

Resp. des processus

Resp. de la planification

etc.

Les meilleures architectures, spécifications et conceptions sont issues d'équipes qui s'auto-organisent.

La méthode la plus efficace de transmettre l'information est une conversation en face à face.

Bâtissez le projet autour de personnes motivées. Donnez leur l'environnement et le soutien dont elles ont besoin, et croyez en leur capacité à faire le travail.

Les gens de l'art et les développeurs doivent collaborer quotidiennement au projet.

# 11

Page 12: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 12

Équipes performantes

PSP : IndividuelCompétences

TSP: ÉquipeOrganisation

TSP : ÉquipeGestion

Établissement des objectifs Assignation des rôles Ajustement des processus Plans intégrés & nivelés

Communication Coordination des ressources Suivi du projet Analyse des risques

Gestion des processus Mesures de la performance Estimation & planification Gestion qualité

Le TSP construit des équipes performantes à partir des individus

Page 13: Psp Tsp Agile 3 1 Fr

++

Cycle de développement

Cycle de développementCycle de

développementCycle de

développement

Cycle de développement

Cycle de développement

SQLI, fournisseur d'innovation - Nom du document # 13

Itérations

Les cycles TSP peuvent être implémentés en phase et/ou en courte itération

Chacun des cycles TSP débute avec une activité de lancement ou de relancement et se termine par une activté de post mortem

La durée d’un cycle TSP est de quelques semaines à quelques mois

DéveloppementDéveloppement

Leçons apprisesNouvelles demandesChangement dans l’équipeNouveaux objectifsNouveaux risques

Leçons apprisesNouvelles demandesChangement dans l’équipeNouveaux objectifsNouveaux risques

Produit IntermédiaireProduit Intermédiaire

Exigence du cycle, Stratégie d’équipeEstimation, Raffinement des plans projet, Processus , Engagement, Plan détaillé du cycle courant

Exigence du cycle, Stratégie d’équipeEstimation, Raffinement des plans projet, Processus , Engagement, Plan détaillé du cycle courant

Produit finalProduit final

Les processus agiles promeuvent un rythme de développement soutenable. Commanditaires, développeurs et utilisateurs devraient pouvoir maintenir le rythme indéfiniment.

Reconnaître que les conditions du projet changeront dans le temps.

À intervalle régulier, l'équipe réfléchit aux moyens de devenir plus efficace, puis accorde et ajuste son comportement dans ce sens.

Le changement est accepté, même tardivement dans le développement. Les processus agiles exploitent le changement comme avantage compétitif pour le client.

Préparation du lancement

Préparation du lancement

Objectifs de l’organisationExigences sommaires

Objectifs de l’organisationExigences sommaires

Page 14: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 14

Activité de lancement

Le lancement TSP est un atelier faisant participer tous les membres de l'équipe (développeur, non développeur, le client et le management)

Le coach TSP guide l’équipe durant cet atelier

L'atelier de lancement accélère la coalition de l’équipe:

Une compréhension commune du travail à effectuer

Un accord sur la façon d’effectuer le travail

Un engagement à un plan d'équipe

Un soutien du management sur le plan

But: Établir la meilleure stratégie et les processus pour atteindre les objectifs

Un plan prêt a être exécuté le lendemain

La simplicité - l'art de maximiser la quantité de travail à ne pas faire - est essentielle.

Un logiciel fonctionnel est la meilleure unité de mesure de la progression du projet

Quoi Comment Quand Qui Qualité Si

Objectifs du projetConception haut niveau“Backlog” prioriséLivrablesEstimation des livrablesEstimation des stories

StratégieProcessusBesoinsRègles d’engagement

Plan du projetCalendrierRythme

Attribution des rôlesDisponibilitéAttribution des tachesPlan détaillé du cycle

Plan qualitéCritères “Done”

Risque & MitigationPlans alternatifs

Page 15: Psp Tsp Agile 3 1 Fr

++

TestExécution des tests d’intégration, de non

regression et fonctionnels

SQLI, fournisseur d'innovation - Nom du document # 15

Adaptation à Agile

Plan

Test & Conception

Revue et Inspection conception

Code

Revue et Inspection Code

Analyse de code

Exécution des tests

PostMortem

Gu

ide

P

SP

Exigences & SpécificationsExigences du client, Exigence

techniques, Story, Test d’acceptation, ‘Backlog’ priorisé

Conception et Architecture de haute niveau

Modèles conceptuels, Ébauche des interfaces, Scénario, Cas

d’utilisation, ...

Relâche 1 Rel. 2 Rel. n

Itération1 Itération 2

...

...

Rencontre périodique du statut du projet

ValidationExécution des tests

d’acceptation

Intégration continue

DéploiementPréparation,

Démonstration et installation

Livrer fréquemment une application fonctionnelle, toutes les deux semaines à deux mois, avec une tendance pour la période la plus courte.

Notre première priorité est de satisfaire le client en livrant tôt et régulièrement des logiciels utiles.

Cyc

leRencontre debout

journalière

EnvironnementSalle de travail, Serveurs,Intégration continue, Outils de développement,

Machines de tests, Processus, standards, Formation, ...

Itération 3

ArchitectureVision de l’équipe de

l’architecture

Page 16: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 16

Exemple de rapport - valeur acquise

Graphiques réels obtenus à partir des outils PSP/TSP fournis ; basé ici sur des données anonymes.

Page 17: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 17

Exemple de rapport - Défauts

Graphiques réels obtenus à partir des outils PSP/TSP fournis ; basé ici sur des données anonymes.

Page 18: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 18

Exemple de rapport – Performance du Processus

Graphiques réels obtenus à partir des outils PSP/TSP fournis ; basé ici sur des données anonymes.

Page 19: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 19

Exemple de rapport

Graphiques réels obtenus à partir des outils PSP/TSP fournis ; basé ici sur des données anonymes.

Page 20: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 20

Ils l’utilisent

Page 21: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 21

Adhérance aux valeurs Agiles (1/2)

Personnes et interaction plutôt que processus et outilsLe TSP soutient que l’individu est la clé pour obtenir un produit de qualité et les interactions efficaces des membres sont nécessaires au succès de l'équipe :

Les lancements de projet créent des équipes soudées ;

La communication et le feedback sont essentiels pour supporter l’équipe ;

Les équipes définissent leurs propres processus lors du lancement ;

Le partage du leadership dans l’équipe améliore l’interaction ;

Logiciel fonctionnel plutôt que documentation complèteLa stratégie est décidée lors du lancement (nombre d’itérations, cycle de vie, etc) et s’assure d’obtenir un produit de qualité dès le début :

La documentation doit faciliter les revues et le partage d'informations ;

Les équipes TSP déterminent le niveau de la documentation produit basé sur les normes de l’organisation, les exigences du client, et des attributs du système ;

L’équipe accomplit les exigences et les objectifs qu’elle reçoit.

Karen Smiley, Papers comparing agile to TSP, TUG 2003 presentation

Page 22: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 22

Adhérance aux valeurs Agiles (2/2)

Collaboration avec le client plutôt que négociation de contratL'étude des exigences du client est l’accent du TSP :

La présence du client ou de son représentant est requise lors du lancement et des relancements du projet ;

La collaboration avec le client est soutenue par le rôle du « Responsable client ».

Réagir au changement plutôt que suivre un planLes équipes TSP prévoient les changements:

Périodiquement relançant et replanifiant toutes les fois que le plan n'est plus un guide utile ;

Ajuster/Améliorer les processus de l'équipe ;

Ajouter de nouvelles tâches à mesure qu’elles sont découvertes ; retirer les tâches qui ne sont plus nécessaires ;

Dynamiquement, rééquilibrer la charge de travail d'équipe au besoin pour finir plus rapidement ;

Identifier et gérer les risques.

Karen Smiley, Papers comparing agile to TSP, TUG 2003 presentation

Page 23: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 23

Quelques donnéesMesures Avec TSP

MoyenneMin - Max

Projet Typique

System test defects (defects/KLOC)

0.40 to 0.9

15

Released defects (defects/KLOC)

0.060 to 0.2

7.5

System test effort(% of total effort)

4%2% to 7%

40%

System test schedule (% of total duration)

18%8% to25%

40%

Duration of system test (days/KLOC)

0.50.2 to 0.8

51 to 7.7

Unit Test - cost of quality 17%4% to 38%

50%

Project schedule error 6%-20% to 27%

180%

The Team Software Process (TSP) in Practice: A Summary of Recent Results CMU/SEI-2003-TR-014 and CMU/SEI-2000-TR-015

7.5

6.24

4.73

2.28

1.050.06

0

1

2

3

4

5

6

7

8

Def

ects

/KL

OC

CMMLevel 1

CMMLevel 2

CMMLevel 3

CMMLevel 4

CMMLevel 5

TSP

Defect Density of Delivered Software

We developed a 450 KLOC business operating system in 55 000 hours. We delivered it on time. The customer reported 17 bugs for a total defect density of 0.038 bugs/KLOC.

Gerardo López, Towa, CEO & President

TSP Symposium 2008

Mesures Moyenne

Productivity improvement 78%

1/3 des projets n’ont pas de défaut

Page 24: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 24

Quelques données

Microsoft Corporation 2006

Gain d’opportunité après 4 Gain d’opportunité après 4 projets:projets:

2624 hours2624 hours+ $90,783+ $90,783

Gagné 1150 heures lors des phases de test.

Gagné 427 heures grâce à l’amélioration de la productivité.

Gagné 1047 heures et 90,783 $us grâce à un produit de

haute qualité.

Page 25: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 25

Quelques données

Intuit a rapporté une réduction des appels de support sur le produit QuickBooks 2007 sauvant ainsi plus de 20M$us.

Savings

Reqts Design Implement Test

Processus traditionnel

Équipe TSP

Reqts Design Implement Test

Page 26: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 26

PSP/TSP implémente CMMI

La durée par niveau CMMI est de 1½ à 2 ans.

Navair et ais avec le PSP/TSP2.5 ans pour le passage du niveau 1 à 4,

Au lieu de 6 ans.

Plusieurs projets pilotes au Mexique et au USA.

TSP is 5-6σ capability

(Honeywell SEPG

presentation, march 2000)

Symposium TSP 2009

Page 27: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 27

État du TSP

Méthode de travail pour tous;

Atout dans description de postes;Microsoft IT, Intuit, etc

Outil open sourcehttp://processdash.sourceforge.net/

Certification possible en 2010;

PSP/TSP 100% CMMI (2010);

PSP/TSP (CERT) produit hautement sécuritaire est disponible;

PSP/TSP – Services (à venir).

27

ABBAdobeAISBechtelBoeingBlackBerryCensus BureauDavis SystemsDFASEDS-SDRC

EricksonFujifilmHelsanaHitashi Soft EngineeringHoneywellIBMIntuitKPMGLockheedMicrosoft ITMotivaNASA Langley

Northrop GummanOracleQuarkSoftRaytheonSamsungSofttekSunTeradyneToshibaUSAF: Hill AFBUSN: NAVAIRVicarious Visions...

Everybody uses TSP, software developers, testers as well as artists and sound technicians. Do you know how to count defects made by an artist?

Dan Wall, VP Production Methods & TSP Coach chez Vicarious Visions

Gradué PSPGradué PSP

Page 28: Psp Tsp Agile 3 1 Fr

++PSP/TSP livre des produits que les clients aiment sans avoir sa présence continuelle.

PSP/TSP forme des équipes Agile en se souciant des individus et de son environnement.

PSP/TSP fournit le minimum de processus pour qu’une équipe soit hautement performante.

PSP/TSP contribue à l’amélioration continue des compétences des individus et de l’équipe.

PSP/TSP est pour tous les membres de l’équipe (Développeur et non-développeur).

PSP/TSP couvre les pratiques CMMI.

PSP/TSP livre des produits de haute qualité en améliorant la productivité.

PSP/TSP est moins collégial.

PSP/TSP est plus orienté données et plan que les autres méthodes.

PSP/TSP met moins d’accent sur les techniques de développement (Test automatisé, Stories, XUnit, etc) mais contribue à leur utilisation.

SQLI, fournisseur d'innovation - Nom du document # 28

Conclusion

Page 29: Psp Tsp Agile 3 1 Fr

++

SQLI, fournisseur d'innovation - Nom du document # 29

Merci de votre attention

Alcyonix offre l’implémentation PSP/TSP

Formation

Implémentation

Lancement

Accompagnement

29

Questions - Discussions

Frédérick Lussier ([email protected])

Conseiller senior/Senior Consultant

---> "SEI-Certified PSP Developer"

---> "SEI-Authorized Instructor for PSP“

---> “Certified SCRUM Master”

ALCYONIX Inc. ( www.alcyonix.com )

Groupe SQLI (www.sqli.com)

--->"Software Engineering Institute (SEI) Partner"

Tel.: +1 450 653-3533 Fax: +1 (514) 221-2018

Cell: +1 418 262 4175

http://www.sei.cmu.edu/tsp/index.cfm