Psp Tsp Agile 3 1 En


Published on

The Agile method of CMMI is TSP/PSP.

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • “… That 
absolutes! SCRUM, XP, DSDM, TDD, Orange, FDD
  • Psp Tsp Agile 3 1 En

    1. 1. # Confidential | © Alcyonix / SQLI 2007 tm Personal Software Process, PSP and Team Software Process, TSP are service marks of Carnegie Mellon University ® Capability Maturity Model, Capability Maturity Modeling, Carnegie Mellon, CMM, and CMMI are registered in the U.S. Patent and Trademark Office by Carnegie Mellon University CMMI ® Agile Process Personal Software Process tm / Team Software Process tm + + 03 / 08 / 2011 V. 04 +
    2. 2. <ul><li>Agile ? </li></ul><ul><li>CMMI ® ? </li></ul><ul><li>PSP/TSP tm : CMMI ® Agile process </li></ul><ul><li>TSP /PSP tm : Results </li></ul># + Confidential | © Alcyonix / SQLI 2007 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) Agenda + +
    3. 3. Agile – Manifesto <ul><ul><li>« We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: » </li></ul></ul><ul><ul><li>The Agile Manifesto includes 4 values and 12 principles. </li></ul></ul><ul><li>The Agile values are : </li></ul><ul><ul><li>Individuals and interactions over processes and tools </li></ul></ul><ul><ul><li>Working software over comprehensive documentation </li></ul></ul><ul><ul><li>Customer collaboration over contract negotiation </li></ul></ul><ul><ul><li>Responding to change over following a plan </li></ul></ul><ul><li>What means implementing Agile ? </li></ul><ul><ul><li>Change organization values </li></ul></ul><ul><ul><li>Implement Agile methods and practices </li></ul></ul># Confidential | © Alcyonix / SQLI 2007 <ul><ul><li> </li></ul></ul>
    4. 4. Agile typical concepts <ul><li>Iterative, incremental et adaptive development which release value </li></ul><ul><li>Active implication of the customer </li></ul><ul><li>Continuous Integration </li></ul><ul><li>Wave planning </li></ul><ul><li>Frequent delivery and of short duration of functional applications </li></ul><ul><li>Changes are seen as a competitive advantage </li></ul><ul><li>Test first and code </li></ul><ul><li>Continuous attention to technical excellence and good design </li></ul><ul><li>Natural reverse engineering (clean code) </li></ul><ul><li>Autonomous, engaged and self-directed team </li></ul><ul><li>Face to face communication </li></ul><ul><li>Craftsmanship aver execution </li></ul>Confidential | © Alcyonix / SQLI 2007 #
    5. 5. Criticism / Misunderstandings <ul><li>Customer does not have time (planning, meetings, tests) </li></ul><ul><li>Frequent releases = bad quality perception from the customers </li></ul><ul><li>Agile is feature driven, non-functional are hard to be placed as user stories </li></ul><ul><li>Impossible to develop realistic estimates of work effort needed to provide a quote </li></ul><ul><li>Difficult contractual negotiations </li></ul><ul><li>Bleed money from customers through lack of defining a deliverable </li></ul><ul><li>Lack of structure, processes and necessary documentation </li></ul><ul><li>Insufficient software design </li></ul><ul><li>Requires too much cultural change to adopt </li></ul><ul><li>Can be very inefficient “Code rework” </li></ul><ul><li>Can increase the risk of scope creep due to the lack of detailed requirements documentation </li></ul><ul><li>Lack of discipline </li></ul><ul><li>Lack of roles definition </li></ul><ul><li>Only works with senior-level developers </li></ul>Confidential | © Alcyonix / SQLI 2007 # Several 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.
    6. 6. CMMI <ul><li>CMMI is a Model, not a process. </li></ul><ul><ul><li>It describes characteristics of effective processes, not the processes themselves. </li></ul></ul><ul><li>What does it mean to implement CMMI? </li></ul><ul><ul><li>Define and implement your own process based on the model definition. </li></ul></ul># Confidential | © Alcyonix / SQLI 2007 2 5 4 3 Organizational Innovation and Deployment Causal Analysis and Resolution Organizational Process Performance Quantitative Project Management Requirements Development Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management Decision Analysis and Resolution Requirements Management Project Planning Project Monitoring and Control Supplier Agreement Management Measurement and Analysis Process and Product Quality Assurance Configuration Management
    7. 7. Historical <ul><li>Watts S. Humphrey - Standard Engineering Institute (SEI) </li></ul><ul><li>CMM v1.1 was introduced in 1991 </li></ul><ul><li>But questions raised in the community : </li></ul><ul><ul><li>How to deploy CMMI in my small organization (I fear CMMI is too &quot;big&quot; for us)? </li></ul></ul><ul><ul><li>How to keep my flexibility and reactivity ( I fear that writing series of processes will turn my organization into a bureaucracy)? </li></ul></ul><ul><ul><li>How can I deploy the principles of CMMI on a smaller scale, project by project (I fear budgeting for CMMI organization-wide will be killing the idea)? </li></ul></ul><ul><li>PSP was introduced in 1994 </li></ul><ul><li>TSP was introduced in 2000 </li></ul><ul><li>Since then: substantial restructuring to adapt to business constraints </li></ul>Confidential | © Alcyonix / SQLI 2007 #
    8. 8. Team sport <ul><li>Software products are developed by teams. </li></ul><ul><li>Individual and team skill, discipline, and commitment govern the result. </li></ul><ul><li>To improve organizational performance you must improve the performance of teams and team members. </li></ul><ul><li>Team members are: </li></ul><ul><ul><li>Motivate himself </li></ul></ul><ul><ul><li>Negotiate commitments </li></ul></ul><ul><ul><li>Track their plans </li></ul></ul><ul><ul><li>Dedicate to excellence and high-quality </li></ul></ul><ul><ul><li>Trust in its capacity </li></ul></ul><ul><ul><li>Discipline in work </li></ul></ul><ul><li>What team members need? </li></ul><ul><ul><li>Be challenged by goals </li></ul></ul><ul><ul><li>Be trusted by management </li></ul></ul><ul><ul><li>Be supported by the management </li></ul></ul>Confidential | © Alcyonix / SQLI 2007 # <ul><ul><li>Have feedback </li></ul></ul><ul><ul><li>Have an environment </li></ul></ul>
    9. 9. PSP tm /TSP tm has CMMI Agile process <ul><li>The TSP guides a self-directed team of developers disciplined by the PSP, in the realization of a product using the coaching and leadership . </li></ul><ul><li>The PSP is a work method conceived for individual use which serves to organize , control and improve the way you work. </li></ul><ul><li>1 to 10 teams of 2 to 20 members </li></ul><ul><li>Just enough processes for a team to cover CMMI level 5. </li></ul># Confidential | © Alcyonix / SQLI 2007
    10. 10. Individual competencies <ul><li>PSP provides the knowledge and skills that developers need to work on a teams </li></ul>Confidential | © Alcyonix / SQLI 2007 # Continuous attention to technical excellence and good design enhances agility. <ul><li>TDD </li></ul><ul><li>XUnit, FIT/Fitness </li></ul><ul><li>Pair programming </li></ul><ul><li>Agile estimation technique </li></ul><ul><li>Requirements management </li></ul><ul><li>Process management </li></ul><ul><li>Cyclic development </li></ul><ul><li>Estimation and planning </li></ul><ul><li>Track plan </li></ul><ul><li>Sound design </li></ul><ul><li>Quality management </li></ul><ul><li>Test </li></ul><ul><li>Review </li></ul><ul><li>Code analysis (Clean code) </li></ul><ul><li>Personal data/metrics </li></ul><ul><li>Self improvement </li></ul>
    11. 11. Project team <ul><li>Conduct its projects; </li></ul><ul><li>Take its commitments; </li></ul><ul><li>Execute the best work; </li></ul><ul><li>Is more creative and innovating; </li></ul><ul><li>Own its processes and its plan; </li></ul><ul><li>Is dedicated to excellence and success; </li></ul><ul><li>Actively solve the problems and the conflicts; </li></ul><ul><li>Communicate openly. </li></ul>Confidential | © Alcyonix / SQLI 2007 # Team leader Customer Interface Manager Test Manager Support Manager Implementation Manager Design Manager Quality Manager Process Manager Planning Manager Etc. The best architectures, requirements, and designs emerge from self-organizing teams. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Business people and developers must work together daily throughout the project. # Coach
    12. 12. Building an Efficient Team Confidential | © Alcyonix / SQLI 2007 # The TSP builds efficient teams starting from the individuals PSP : Individual Skills TSP: Team Building TSP : Team Management <ul><li>Project goals </li></ul><ul><li>Roles </li></ul><ul><li>Process tailloring </li></ul><ul><li>Project plans </li></ul><ul><li>Communication </li></ul><ul><li>Resources coordination </li></ul><ul><li>Project tracking </li></ul><ul><li>Risk tracking </li></ul><ul><li>Process management </li></ul><ul><li>Performance measurements </li></ul><ul><li>Estimation, planning and tracking </li></ul><ul><li>Quality management </li></ul>
    13. 13. Iterations <ul><li>TSP cycles can be implemented in phase and/or iteration </li></ul><ul><li>Each cycle starts with a launch or re-launch and ends with a post-mortem. </li></ul><ul><li>TSP cycles are a few weeks to a few months in duration. </li></ul>Cycle de développement Cycle de développement Cycle de développement Confidential | © Alcyonix / SQLI 2007 # Development Lessons learned Requirements changes Team changes Goals changes Risk changes Etc. Intermediate Product Cycle backlog, Team strategy Estimation, project plan refined, Process, Team commitment, Detailed plan of current cycle Final product Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Launch Prep Business and technical goals; Requirements summary
    14. 14. Launch <ul><li>The TSP launch is a workshop involving all team members (Developer, non-developer, customer and management) </li></ul><ul><li>The TSP coach guides the team members </li></ul><ul><li>The launch workshop accelerates team building: </li></ul><ul><ul><li>A common understanding of the job </li></ul></ul><ul><ul><li>Agreement on how to do the work </li></ul></ul><ul><ul><li>Commitment to a team plan </li></ul></ul><ul><ul><li>Management support for the plan </li></ul></ul><ul><ul><li>The products needed to get management support </li></ul></ul><ul><li>Objective: Establish the best strategy and the processes to achieve the project goals. </li></ul><ul><li>A plan ready to be carried out the following day </li></ul>Confidential | © Alcyonix / SQLI 2007 # Simplicity--the art of maximizing the amount of work not done--is essential. Working software is the primary measure of progress. Quoi Comment Quand Qui Qualité Si Project goals High level design Priorized “Backlog” Deliverables Deliverables estimation Stories estimation Strategies Processes Needs Rules Project Plan Schedule Pace Roles assignation Availability Tasks assignation Detailed plan of the cycle Quality Plan “ Done” criteria Risk & Mitigation Alternate plans
    15. 15. Agile adaptation Test Integration, non regression and functional test execution Confidential | © Alcyonix / SQLI 2007 # Plan Tests & Design Design Review & Inspection Code Code Review & Inspection Code Analysis Tests Execution PostMortem PSP Guide Requirements & Spec. Customer requirements, Technical requirements, Story, Acceptance Test, Priorized ‘Backlog’ High level architecture & design Conceptual design , Interfaces, Scenario, Use case, ... Release 1 Rel. 2 Rel. n Iteration1 Iteration 2 ... ... Regular project status meeting Validation Acceptance test Continuous integration Implementation Preparation, Demonstration and installation Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Cycle Daily standup meeting Environment War room, Servers, Continuous integration, development tools, Tests environment, Processes, Standards, Training, ... Iteration 3 Architecture Team vision Iteration0 Coach
    16. 16. Report example – Earn value Confidential | © Alcyonix / SQLI 2007 # Actual graphs obtained by running the PSP/TSP tools provided; based on anonymous data here.
    17. 17. Report example – Defects Confidential | © Alcyonix / SQLI 2007 # Actual graphs obtained by running the PSP/TSP tools provided; based on anonymous data here.
    18. 18. Report example – Process Performance Confidential | © Alcyonix / SQLI 2007 # Actual graphs obtained by running the PSP/TSP tools provided; based on anonymous data here.
    19. 19. Report example Confidential | © Alcyonix / SQLI 2007 # Actual graphs obtained by running the PSP/TSP tools provided; based on anonymous data here.
    20. 20. They use it Confidential | © Alcyonix / SQLI 2007 #
    21. 21. TSP and Agile(1/2) <ul><li>Individuals and interactions over processes and tools </li></ul><ul><ul><li>TSP holds that the individual being key to product quality and effective member interactions are necessary to the team's success. </li></ul></ul><ul><ul><ul><li>Project launches strive to create gelled teams. </li></ul></ul></ul><ul><ul><ul><li>Weekly meetings and communication are essential to sustain them. </li></ul></ul></ul><ul><ul><ul><li>Teams define their own processes in the launch. </li></ul></ul></ul><ul><ul><ul><li>Sharing leadership responsibilities helps interaction between members. </li></ul></ul></ul><ul><li>Working software over comprehensive documentation </li></ul><ul><ul><li>TSP teams can choose evolutionary or iterative lifecycle models to deliver early functionality—the focus is on high quality working software from the start. TSP does not require heavy documentation. </li></ul></ul><ul><ul><ul><li>Documentation should merely be sufficient to facilitate effective reviews and information sharing. </li></ul></ul></ul><ul><ul><ul><li>TSP teams can determine the level of documentation produced based on organizational standards, customer needs, and system attributes. </li></ul></ul></ul>Confidential | © Alcyonix / SQLI 2007 # Karen Smiley, Papers comparing agile to TSP, TUG 2003 presentation
    22. 22. TSP and Agile(2/2) <ul><li>Customer collaboration over contract negociation </li></ul><ul><ul><li>Learning what the customer wants is a key focus of the TSP. </li></ul></ul><ul><ul><ul><li>The customer or a customer representative is required to be present when TSP teams start planning the project and the first cycle. </li></ul></ul></ul><ul><ul><ul><li>The customer or customer representative can also attend each re-launch to guide plans for the next cycle. </li></ul></ul></ul><ul><ul><ul><li>The TSP has a team member role, the Customer Interface Manager, for the purpose of collaboration with the customer. </li></ul></ul></ul><ul><li>Responding to change over following a plan </li></ul><ul><ul><li>TSP teams expect and plan for change. </li></ul></ul><ul><ul><ul><li>TSP teams re-plan whenever the plan is no longer a useful guide. </li></ul></ul></ul><ul><ul><ul><li>New tasks are added as they are discovered. </li></ul></ul></ul><ul><ul><ul><li>They dynamically rebalance the team workload as required to finish faster. </li></ul></ul></ul><ul><ul><ul><li>The team's process is adjusted as needed to improve performance. </li></ul></ul></ul><ul><ul><ul><li>The team continuously manages risk and uses early-warning indicators to identify and avoid technical and planning issues. </li></ul></ul></ul>Confidential | © Alcyonix / SQLI 2007 # Karen Smiley, Papers comparing agile to TSP, TUG 2003 presentation
    23. 23. Results Confidential | © Alcyonix / SQLI 2007 # The Team Software Process (TSP) in Practice: A Summary of Recent Results CMU/SEI-2003-TR-014 and CMU/SEI-2000-TR-015 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 1/3 project has no defects Measures With TSP Average Min – Max Typical Project System test defects (defects/KLOC) 0.4 0 to 0.9 15 Released defects (defects/KLOC) 0.06 0 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.5 0.2 to 0.8 5 1 to 7.7 Unit Test - cost of quality 17% 4% to 38% 50% Project schedule error 6% -20% to 27% 180% Measures Average Productivity improvement 78%
    24. 24. Results # Microsoft Corporation 2006 Saved 1150 hours due to lower development costs. Saved 427 hours due to improved productivity. Saved 1047 hours and 90,783.00$us due to fewer defects in acceptance & production. Confidential | © Alcyonix / SQLI 2007 Opportunity after 4 projects: 2624 hours + 90,783.00 $
    25. 25. Results Confidential | © Alcyonix / SQLI 2007 # Intuit has also recently reported a savings of $20M from a reduction in customer support calls on QuickBooks 2007. Savings Reqts Design Implement Test Actually TSP Team Reqts Design Implement Test
    26. 26. PSP/TSP implement CMMI <ul><li>Time between CMMI level is 1½ à 2 years. </li></ul><ul><li>Navair and ais with PSP/TSP </li></ul><ul><ul><li>2.5 years to go level 1 to level 4, </li></ul></ul><ul><ul><li>Instead of 6 years. </li></ul></ul><ul><li>Several pilot projects in Mexico and US are currently running. </li></ul>SQLI, fournisseur d'innovation - Nom du document # <ul><ul><li>TSP is 5-6σ capability (Honeywell SEPG presentation, march 2000) </li></ul></ul>Symposium TSP 2009
    27. 27. PSP/TSP state <ul><li>For all; </li></ul><ul><li>Job description; </li></ul><ul><ul><li>Microsoft IT, Intuit, etc </li></ul></ul><ul><li>Open source tool </li></ul><ul><li>Possible certification in 2010; </li></ul><ul><li>PSP/TSP 100% CMMI (2010) </li></ul><ul><li>PSP/TSP (CERT) product highly safe is available </li></ul><ul><li>PSP/TSP – Services (in progress) </li></ul>Confidential | © Alcyonix / SQLI 2007 # 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 Graduate with PSP ABB Adobe AIS Bechtel Boeing BlackBerry Census Bureau Davis Systems DFAS EDS-SDRC Erickson Fujifilm Helsana Hitashi Soft Engineering Honeywell IBM Intuit KPMG Lockheed Microsoft IT Motiva NASA Langley Northrop Gumman Oracle QuarkSoft Raytheon Samsung Softtek Sun Teradyne Toshiba USAF: Hill AFB USN: NAVAIR Vicarious Visions ...
    28. 28. Conclusion <ul><li>PSP/TSP delivers products which customers like without having his continual presence. </li></ul><ul><li>PSP/TSP builds Agile teams while being concerned about individuals and his environment. </li></ul><ul><li>PSP/TSP provides the minimum of process to CMMI. </li></ul><ul><li>PSP/TSP contributes to the continuous improvement of competences of the individuals and the team. </li></ul><ul><li>PSP/TSP is for all the members of the team (Developer and not-developer). </li></ul><ul><li>PSP/TSP delivers products of high-quality by improving the productivity. </li></ul><ul><li>PSP/TSP is less collegial. </li></ul><ul><li>PSP/TSP is more plan oriented then the other methods. </li></ul><ul><li>PSP/TSP is least concern about development techniques (automated Test, Stories, XUnit, etc) but contributes to their use. </li></ul>SQLI, fournisseur d'innovation - Nom du document #
    29. 29. Thank you for your attention <ul><li>Alcyonix can help you to implement PSP/TSP </li></ul><ul><ul><li>Training </li></ul></ul><ul><ul><li>Implementing Project Pilot </li></ul></ul><ul><ul><li>Launching </li></ul></ul><ul><ul><li>Coching </li></ul></ul>Confidential | © Alcyonix / SQLI 2007 # Questions - Discussions Frédérick Lussier ( Conseiller senior/Senior Consultant ---> &quot;SEI-Certified PSP Developer&quot; ---> &quot;SEI-Authorized Instructor for PSP“ ---> “Certified SCRUM Master” ALCYONIX Inc. ( ) Groupe SQLI ( --->&quot;Software Engineering Institute (SEI) Partner&quot; Tel.: +1 450 653-3533 Fax: +1 (514) 221-2018 Cell: +1 418 262 4175