Development Team Building ( Team Software Process™/Personal Software Process™ ) Presented by : Frédérick Lussier November ...
Agenda <ul><ul><li>Team </li></ul></ul><ul><ul><li>TSP/PSP Presentation </li></ul></ul><ul><ul><li>Building a Team </li></...
<ul><li>Building a development team ( Team Software Process™/Personal Software Process™ ) </li></ul>Team
Team <ul><li>Because of the product complexity, several knowledge and practices are necessary to develop a product. </li><...
Development teams are like sport teams <ul><li>Software products are developed by teams.  </li></ul><ul><li>Individual and...
Players of a development team <ul><ul><li>Developing a product is an intellectual activity which requires knowledge worker...
A self-directed team does the best work <ul><ul><li>Because it: </li></ul></ul><ul><ul><li>is more creative and innovating...
What team members need? <ul><ul><li>Be challenged by goals. </li></ul></ul><ul><ul><li>Know they are trusted by management...
<ul><li>Development team building  ( Team Software Process™/Personal Software Process™ ) </li></ul>TSP ™ /PS P™
History of TSP/PSP <ul><li>CMM v1.1  was introduced  by  Watts S. Humphrey –  Standard Engineering Institute (SEI) in 1991...
TSP/PSP  definition <ul><li>TSP guides a  self-directed team  of developers disciplined by the PSP, in the realization of ...
An efficient team <ul><li>TSP builds efficient teams based on individuals. </li></ul>1 to10 teams of 2 to 20 members PSP p...
<ul><li>Development team building  ( Team Software Process™/Personal Software Process™ ) </li></ul>Team Building
Team Building <ul><li>TSP uses strategic plan workshops to build a self-directed team. </li></ul><ul><li>A set of workshop...
Launch activity <ul><li>The launch accelerates team building: </li></ul><ul><ul><ul><li>A common understanding of the job ...
Workshop 1 – Goals and requirements <ul><li>The first step is for the team to understand what it has to do. </li></ul><ul>...
Workshop 2 – 8 <ul><ul><li>Define team goals and assign team roles. </li></ul></ul><ul><ul><li>Define the best strategy an...
Workshop 9 – Management review <ul><li>The team presents to the manager and the customer (representative) the best strateg...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 2
Workshop 2 – Assign roles and define team goals Team goals <ul><li>The team writes project goals </li></ul><ul><ul><ul><li...
Workshop 2 – Assign roles and define team goals Roles <ul><li>Team members accompany and direct their pairs. </li></ul><ul...
Workshop 2 – Assign roles and define team goals  Establish roles Train leadership <ul><ul><li>Communicate and track goals ...
Workshop 2 – Assign roles and define team goals Roles summary (1/5)
Workshop 2 – Assign roles and define team goals  Roles summary (2/5)  The test manager is not necessarily an official test...
Workshop 2 – Assign roles and define team goals  Roles summary (3/5)
Workshop 2 – Assign roles and define team goals Roles summary (4/5)  Your team leader is too busy to be responsible for qu...
Workshop 2 – Assign roles and define team goals   Roles summary (5/5)  Use title names that have meanings for you.
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 3
Workshop  3 –  Establish development process and strategy Establishing the strategy <ul><ul><li>Draw a draft of the archit...
Workshop 3 – Produce development process and strategy Define/tailor processes <ul><ul><li>For various kinds of products or...
Workshop 3 – Produce development process and strategy  Development cycle <ul><li>TSP cycles can be implemented in phase an...
Workshop  3 –  Produce development process and strategy   Agile adaptation Test Integration, non regression and functional...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 4
Workshop  4 –  Evaluate tasks and resources availability <ul><ul><li>Assign deliverables and tasks to team members. </li><...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 5
Atelier 5 –  Develop the quality plan <ul><li>Human activities are prone to defects. </li></ul><ul><li>The most economic a...
Atelier 5 –  Develop the quality plan <ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul><ul><ul><li>Determine ...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 6
Atelier 6 –  Build bottom-up procedure  and balanced  plans <ul><ul><li>Assign the tasks of the next phase/cycle/iteration...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 7
Atelier   7 –  Conduct risk assessment <ul><ul><li>Identify the risks. </li></ul></ul><ul><ul><ul><ul><li>There is a risk ...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Multiple Teams Building
Multiple teams <ul><li>A team which has too many members becomes ineffective; the solution is to create several teams. </l...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>Strategy Execution
Strategy execution <ul><li>Once you have the support of the customer and the manager to apply the strategy, you must susta...
<ul><li>Development team building  (Team Software Process™/Personal Software Process™) </li></ul>TSP™/PSP™ State
TSP/PSP state <ul><li>For all </li></ul><ul><li>Asset in the job description: </li></ul><ul><ul><ul><li>Certified PSP deve...
For all... <ul><li>TSP/PSP is used in various domains, here are some examples: </li></ul><ul><ul><ul><li>Teams of managers...
Performance data The Team Software Process (TSP) in Practice: A Summary of Recent Results CMU/SEI-2003-TR-014 and CMU/SEI-...
<ul><li>M y goal is to show you how this approach helps build highly efficient and performing teams in your organization. ...
Thank you for your attention
References <ul><li>http://www.sei.cmu.edu/tsp/ </li></ul><ul><li>Mapping TSP to CMMI </li></ul><ul><ul><li>CMU/SEI-2004-TR...
Upcoming SlideShare
Loading in …5
×

Team Building F Lussier V1.3 Eng

1,771 views

Published on

This presentation shows how the Team Software Process (TSP) creates a highly efficient and effective project team.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,771
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
130
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • On ne peut pas être plus fort que le plus faible des maillons d’une chaîne.
  • Réactions négatives sont interdites
  • Ne prenez jamais un engagement sans un plan. Si vous ne pouvez pas prévoir précisément, prévoyez souvent. Prévoyez ce que vous savez et prévoyez à un niveau qui adapte le travail. ( Plan what you know and plan at a level that fits the job. )
  • Team Building F Lussier V1.3 Eng

    1. 1. Development Team Building ( Team Software Process™/Personal Software Process™ ) Presented by : Frédérick Lussier November 2009, version 1.2 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.
    2. 2. Agenda <ul><ul><li>Team </li></ul></ul><ul><ul><li>TSP/PSP Presentation </li></ul></ul><ul><ul><li>Building a Team </li></ul></ul><ul><ul><li>Working with the Team </li></ul></ul><ul><ul><li>TSP/PSP State </li></ul></ul>sm 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. Team Software Process – TSP™ Personal Software Process – PSP™ Capability Maturity Model Integration – CMMI® Software Engineering Institute – SEI
    3. 3. <ul><li>Building a development team ( Team Software Process™/Personal Software Process™ ) </li></ul>Team
    4. 4. Team <ul><li>Because of the product complexity, several knowledge and practices are necessary to develop a product. </li></ul><ul><li>Often the number of knowledge and practices exceeds one individual. </li></ul><ul><li>We need several qualified people who together have the knowledge and the practices necessary to develop a product. </li></ul><ul><li>For these reason, we need a team: People having complementary knowledge and practices, working together for a common goal. </li></ul><ul><li>This presentation shows how the Team Software Process (TSP) creates a highly efficient and effective project team. </li></ul>
    5. 5. Development teams are like sport teams <ul><li>Software products are developed by teams. </li></ul><ul><li>Individual and team skills, discipline, and commitment govern the result. </li></ul><ul><li>To improve organizational performance you must improve the performance of teams but do that you must begin with your players. </li></ul><ul><li>Player: </li></ul><ul><ul><li>Motivates himself </li></ul></ul><ul><ul><li>Negotiates commitments </li></ul></ul><ul><ul><li>Tracks his plans </li></ul></ul><ul><ul><li>Is dedicate to excellence and high quality </li></ul></ul><ul><ul><li>Trusts in his capacities </li></ul></ul><ul><ul><li>Is rigorous in his work </li></ul></ul><ul><ul><li>Has fun with what he is doing </li></ul></ul>
    6. 6. Players of a development team <ul><ul><li>Developing a product is an intellectual activity which requires knowledge workers. </li></ul></ul><ul><ul><li>Knowledge workers create knowledge, new ideas, and new products, and they establish relationships that make processes truly work. </li></ul></ul><ul><ul><li>The more specific the knowledge is, the more the worker becomes a supporter in your organization. </li></ul></ul><ul><ul><li>Losing a knowledge worker puts the organization’s intellectual and social capital at risk. </li></ul></ul><ul><li>“ The key rule in managing knowledge work is this: managers can’t manage it, the workers must manage themselves.” </li></ul><ul><li>Watts Humphrey </li></ul>
    7. 7. A self-directed team does the best work <ul><ul><li>Because it: </li></ul></ul><ul><ul><li>is more creative and innovating. </li></ul></ul><ul><ul><li>resolves problems efficiently. </li></ul></ul><ul><ul><li>develops better quality products. </li></ul></ul><ul><ul><li>is more satisfactory for its members. </li></ul></ul><ul><ul><li>helps, motivates, and betters each other. </li></ul></ul><ul><ul><li>optimizes managers’ implication in projects. </li></ul></ul><ul><ul><li>has a high degree of autonomy. </li></ul></ul><ul><ul><li>shares leadership and team responsibilities. </li></ul></ul><ul><ul><li>develops the best strategy to achieve its goals. </li></ul></ul><ul><ul><li>has the sense of membership. </li></ul></ul><ul><ul><li>owns its processes and plans. </li></ul></ul><ul><ul><li>manages its projects. </li></ul></ul>
    8. 8. What team members need? <ul><ul><li>Be challenged by goals. </li></ul></ul><ul><ul><li>Know they are trusted by management. </li></ul></ul><ul><ul><li>Be supported by management. </li></ul></ul><ul><ul><li>Have competent teammates. </li></ul></ul><ul><ul><li>Have feedback on their performance. </li></ul></ul><ul><ul><li>Be in an environment that permits unbound progression. </li></ul></ul><ul><ul><li>Have fun. </li></ul></ul>“ Coming together is a beginning; keeping together is progress; working together is success.” Henry Ford
    9. 9. <ul><li>Development team building ( Team Software Process™/Personal Software Process™ ) </li></ul>TSP ™ /PS P™
    10. 10. History of TSP/PSP <ul><li>CMM v1.1 was introduced by Watts S. Humphrey – Standard Engineering Institute (SEI) in 1991. </li></ul><ul><li>But questions were raised in the community: </li></ul><ul><ul><li>How to deploy CMM in my small organization (I fear CMM 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 CMM on a smaller scale, project by project (I fear budgeting for CMM organization-wide will be killing the idea)? </li></ul></ul><ul><ul><li>To answer these questions, Watts S. Humphrey developed processes and methods so that an individual conforms to CMM level 5 while preserving his agility and flexibility. PSP was introduced in 1994 then TSP in 2000. </li></ul></ul><ul><li>Since then, restructuring has been done to adapt to business constraints. </li></ul><ul><ul><ul><li>CMMI, security , etc. </li></ul></ul></ul>
    11. 11. TSP/PSP definition <ul><li>TSP guides a self-directed team of developers disciplined by the PSP, in the realization of a product using coaching and leadership . </li></ul><ul><li>PSP is used to guide a person to self-organize , self­control, and self-improve to become a useful and efficient teammate. </li></ul>How many developers do you need to build a defective product? The answer is one. <ul><li>I do not make tests, there is already a tester on the team. </li></ul><ul><li>I do not have time for designing. </li></ul><ul><li>Bah! this code is too simple; no need for inspection. </li></ul><ul><li>Yes I fixed this problem; it seemed to have no impact so I released it to the customer. </li></ul>
    12. 12. An efficient team <ul><li>TSP builds efficient teams based on individuals. </li></ul>1 to10 teams of 2 to 20 members PSP provides the knowledge and skills that individual need to work in a team. TSP establishes the environment that organizes and supports self-directed team. PSP is about individual Skills TSP is about team Building TSP is about team Management <ul><li>Project goals </li></ul><ul><li>Role assignment </li></ul><ul><li>Process tailoring </li></ul><ul><li>Project plans </li></ul><ul><li>Communication </li></ul><ul><li>Resource coordination </li></ul><ul><li>Project tracking </li></ul><ul><li>Risk analysis </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. <ul><li>Development team building ( Team Software Process™/Personal Software Process™ ) </li></ul>Team Building
    14. 14. Team Building <ul><li>TSP uses strategic plan workshops to build a self-directed team. </li></ul><ul><li>A set of workshops is called a “launch”. </li></ul><ul><li>All team members participate in the launch: developers, non-developers, managers, and customers. </li></ul><ul><li>The launch objective is to establish the best strategy and processes to achieve the project goals required by the customer and the manager. </li></ul>
    15. 15. Launch activity <ul><li>The launch accelerates team building: </li></ul><ul><ul><ul><li>A common understanding of the job . </li></ul></ul></ul><ul><ul><ul><li>Agreement on how to do the work. </li></ul></ul></ul><ul><ul><ul><li>Commitment to a team plan. </li></ul></ul></ul><ul><ul><ul><li>Management support for the plan. </li></ul></ul></ul><ul><ul><ul><li>Products needed to get management support. </li></ul></ul></ul><ul><li>The coach guides the team during the launch. </li></ul>It is easier to obtain commitment and motivation when the team defines the way to make the product. Launch post mortem
    16. 16. Workshop 1 – Goals and requirements <ul><li>The first step is for the team to understand what it has to do. </li></ul><ul><li>Team </li></ul><ul><li>Listens and understands </li></ul><ul><li>Asks questions </li></ul><ul><ul><li>Does not commit on anything </li></ul></ul><ul><ul><li>Does not have negative attitude </li></ul></ul>Dates Costs Requirements Quality <ul><li>Manager and customer (representative) </li></ul><ul><li>Communicate the critical requirements </li></ul><ul><ul><li>Nice-to-have </li></ul></ul><ul><ul><li>Highly important requirements </li></ul></ul><ul><li>Communicate the goals of the organization </li></ul>• What to develop? • When is it necessary? • Which resources are available? • What flexibility the team has? • Why is this important? • How will management measure success?
    17. 17. Workshop 2 – 8 <ul><ul><li>Define team goals and assign team roles. </li></ul></ul><ul><ul><li>Define the best strategy and the team rules. </li></ul></ul><ul><ul><li>Define and tailors processes for each deliverable. </li></ul></ul><ul><ul><li>Produce a work schedule for each member. </li></ul></ul><ul><ul><li>Produce a realistic project plan. </li></ul></ul><ul><ul><li>Produce a quality plan. </li></ul></ul><ul><ul><li>Identify risks, opportunities, and assumptions of the plan. </li></ul></ul><ul><ul><li>Prepare the presentation for manager review. </li></ul></ul><ul><li>Ends with a plan ready to be carried out the following day. </li></ul>
    18. 18. Workshop 9 – Management review <ul><li>The team presents to the manager and the customer (representative) the best strategy to use to achieve the requested goals. </li></ul><ul><li>Team </li></ul><ul><ul><li>Presents its strategy </li></ul></ul><ul><ul><li>Answers the questions </li></ul></ul><ul><ul><li>Shows the facts </li></ul></ul><ul><ul><li>Demonstrates its commitment </li></ul></ul><ul><li>Manager and the customer (representative) </li></ul><ul><li>Challenge the plan </li></ul><ul><ul><li>Take note of the risks </li></ul></ul><ul><ul><li>Take note of the team needs </li></ul></ul>
    19. 19. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 2
    20. 20. Workshop 2 – Assign roles and define team goals Team goals <ul><li>The team writes project goals </li></ul><ul><ul><ul><li>Have a common comprehension of the goals given by the customer and the management. </li></ul></ul></ul><ul><ul><ul><li>Establish team goals that allow achieving project goals. </li></ul></ul></ul><ul><li>Example of project goal, zero defect </li></ul><ul><ul><ul><li>Team and individual goal would be 80% yield </li></ul></ul></ul><ul><ul><ul><ul><li>In TSP, “yield” is the number of defects found and fixed during the design and the realization of the product. </li></ul></ul></ul></ul>
    21. 21. Workshop 2 – Assign roles and define team goals Roles <ul><li>Team members accompany and direct their pairs. </li></ul><ul><li>A role gives leadership in a domain. </li></ul><ul><li>The coach helps the roles to operate. </li></ul><ul><li>Reinforce communication and collaboration between members </li></ul><ul><ul><li>Volunteers are assigned to the roles. </li></ul></ul><ul><ul><ul><li>On top of their tasks in the project </li></ul></ul></ul><ul><ul><li>One member can play many roles, but not all of them. </li></ul></ul><ul><ul><li>Roles are reassigned during the project “relaunch”. </li></ul></ul><ul><ul><ul><li>Allowing for rotation </li></ul></ul></ul>Planning Manager Test Manager Implementation Manager Design Manager Team Leader Process Manager Quality Manager Support Manager Team Member Coach Client The customer is invited to play his representative part, if desired. Customer Interface Manager
    22. 22. Workshop 2 – Assign roles and define team goals Establish roles Train leadership <ul><ul><li>Communicate and track goals </li></ul></ul><ul><ul><li>Support the team </li></ul></ul><ul><ul><li>Give feedback </li></ul></ul>
    23. 23. Workshop 2 – Assign roles and define team goals Roles summary (1/5)
    24. 24. Workshop 2 – Assign roles and define team goals Roles summary (2/5) The test manager is not necessarily an official tester in your organization. If you want to introduce a new unit test methodology, it would be preferable to assign the tester manager role to a unit test “expert”; so it could be a developer.
    25. 25. Workshop 2 – Assign roles and define team goals Roles summary (3/5)
    26. 26. Workshop 2 – Assign roles and define team goals Roles summary (4/5) Your team leader is too busy to be responsible for quality. If nobody is in charge of quality, then nobody will take time to make things right.
    27. 27. Workshop 2 – Assign roles and define team goals Roles summary (5/5) Use title names that have meanings for you.
    28. 28. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 3
    29. 29. Workshop 3 – Establish development process and strategy Establishing the strategy <ul><ul><li>Draw a draft of the architecture </li></ul></ul><ul><ul><li>Determine deliverables </li></ul></ul><ul><ul><li>For each deliverable, determine the building process </li></ul></ul><ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul><ul><ul><li>Evaluate the size and the complexity of deliverables </li></ul></ul><ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul><ul><ul><li>Determine your needs </li></ul></ul><ul><ul><ul><li>Tools </li></ul></ul></ul><ul><ul><ul><li>Training </li></ul></ul></ul><ul><ul><ul><li>Resources </li></ul></ul></ul><ul><ul><ul><li>Etc. </li></ul></ul></ul><ul><ul><li>Determine the number of cycle and the duration </li></ul></ul><ul><ul><ul><li>Determine cycle contents according to requirement priorities </li></ul></ul></ul>Developing is not necessarily the fastest and least expensive way to accomplish the goals. You can buy, acquire and/or re-use, etc. How will you provide me my product?
    30. 30. Workshop 3 – Produce development process and strategy Define/tailor processes <ul><ul><li>For various kinds of products or deliverables, use various processes </li></ul></ul><ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul><ul><ul><li>Guide for planning and follow-up tasks </li></ul></ul><ul><ul><li>Steps to correctly and entirely develop a product; </li></ul></ul><ul><ul><li>Helps to control the project goals </li></ul></ul><ul><ul><li>Tools to manage product quality </li></ul></ul><ul><ul><li>Tools to coach </li></ul></ul><ul><ul><li>Tools for improvement </li></ul></ul>The cyclic development is encouraged, specially at the individual level. How will you ensure the quality of your product? You are missing review stages. Test and design Code Post mortem Individual development process example Unit test execution Plan
    31. 31. Workshop 3 – Produce development process and strategy Development cycle <ul><li>TSP cycles can be implemented in phase and/or iteration. </li></ul><ul><ul><ul><li>It is more effective to make several short cycles. </li></ul></ul></ul><ul><li>Each cycle starts with a launch or re-launch and ends with a post-mortem. </li></ul><ul><ul><ul><li>It is more effective to analyze the performance once the phase is accomplished than to do it at the end of the project. </li></ul></ul></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 Development Lessons learned Requirements changes Team changes Goals changes Risk changes Etc. Intermediate product Cycle backlog, team strategy evaluation, project plan refined, process, team commitment, detailed plan of current cycle Final product Launch preparation Business and technical goals Requirements summary Recognize that the project conditions can change over time.
    32. 32. Workshop 3 – Produce development process and strategy Agile adaptation Test Integration, non regression and functional test execution Plan Tests and design Design review and inspection Code Code review and inspection Code analysis Tests execution Post mortem Requirements and spec. Customer requirements, Technical requirements, Story, Acceptance test, Prioritized “backlog” High level architecture and 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 Daily standup meeting Environment War room, Servers, Continuous integration, Development tools, Tests environment, Processes, Standards, Training, ... Iteration 3 Architecture Team vision Iteration 0 Coach Cycle
    33. 33. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 4
    34. 34. Workshop 4 – Evaluate tasks and resources availability <ul><ul><li>Assign deliverables and tasks to team members. </li></ul></ul><ul><ul><li>Determine the availability of each team member and resource: </li></ul></ul><ul><ul><ul><li>Think of the holidays and vacation </li></ul></ul></ul><ul><ul><ul><li>Think of meetings </li></ul></ul></ul><ul><ul><ul><li>Think that you must pick up your kid at 4 o’clock </li></ul></ul></ul><ul><ul><li>Determine the necessary time for each task. </li></ul></ul><ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul>Do you know much time you spend developing? a) 40 hours/week b) 32 hours/week c) Average 12 hours/week According to studies the answer is C. How much time do you need?
    35. 35. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 5
    36. 36. Atelier 5 – Develop the quality plan <ul><li>Human activities are prone to defects. </li></ul><ul><li>The most economic and most effective time to fix defects is when they are injected. </li></ul><ul><li>It is more effective to prevent defects than to seek and fix them. </li></ul><ul><li>To develop high quality products, quality must be considered at the beginning of the project. </li></ul>
    37. 37. Atelier 5 – Develop the quality plan <ul><ul><ul><li>PSP provides this ability </li></ul></ul></ul><ul><ul><li>Determine if you have sufficient steps to ensure a quality product. </li></ul></ul><ul><ul><li>Evaluate the number of defects you will inject and the number of defects you will fixe per step. </li></ul></ul><ul><ul><li>Consider time spent for quality (Review, inspection, code analysis and execution of tests). </li></ul></ul><ul><ul><ul><li>Do you spend enough time? </li></ul></ul></ul>You want to review 50 pages of code in 1 hour, in hope to find 50% of the defects. Well! That’s not enough time. How will you ensure us of a quality product? Test and design Design review Code Code analysis Code review Unitary test
    38. 38. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 6
    39. 39. Atelier 6 – Build bottom-up procedure and balanced plans <ul><ul><li>Assign the tasks of the next phase/cycle/iteration to the team members. </li></ul></ul><ul><ul><li>Negotiate dependant tasks and tasks using multiple resources. </li></ul></ul><ul><ul><li>Consolidate individual plans in the project plan. </li></ul></ul><ul><ul><li>Review plans and workloads. </li></ul></ul>John, how can we help you? When will you show me something? Workload week 23 Pierre 163% Jean 20% Jacques 60% Johanne 80%
    40. 40. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Launch – Workshop 7
    41. 41. Atelier 7 – Conduct risk assessment <ul><ul><li>Identify the risks. </li></ul></ul><ul><ul><ul><ul><li>There is a risk that… caused by… impacting … </li></ul></ul></ul></ul><ul><ul><li>Evaluate probabilities. </li></ul></ul><ul><ul><li>Determine triggering elements. </li></ul></ul><ul><ul><li>Mitigate critical risks. </li></ul></ul><ul><ul><li>Assign a person in charge (to follow the risk). </li></ul></ul>What are the obstacles you are expecting over the course of development?
    42. 42. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Multiple Teams Building
    43. 43. Multiple teams <ul><li>A team which has too many members becomes ineffective; the solution is to create several teams. </li></ul><ul><li>TSP has scripts and the structure. </li></ul><ul><li>Coaches put it in operation. </li></ul>Manager Client EPG QA Test Marketing Organisation Project 1 Project 2 Project 3 Project 4 Communication and collaboration Objectives and requirements PMO Customer representative Test manager Quality manager Process manager Team leader Etc. Planning manager
    44. 44. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>Strategy Execution
    45. 45. Strategy execution <ul><li>Once you have the support of the customer and the manager to apply the strategy, you must sustain this support. </li></ul><ul><ul><li>This requires that teammates: </li></ul></ul><ul><ul><ul><li>Follow the definite process </li></ul></ul></ul><ul><ul><ul><li>Maintain the individual plans of the team </li></ul></ul></ul><ul><ul><ul><li>Control the quality of the product </li></ul></ul></ul><ul><ul><ul><li>Regularly track and reports their progress </li></ul></ul></ul><ul><ul><ul><li>Continuously demonstrate high performance </li></ul></ul></ul><ul><li>The coach and the team leader are there to help you; they are trained for that. </li></ul>When the plan does not guide you anymore, relaunch the project .
    46. 46. <ul><li>Development team building (Team Software Process™/Personal Software Process™) </li></ul>TSP™/PSP™ State
    47. 47. TSP/PSP state <ul><li>For all </li></ul><ul><li>Asset in the job description: </li></ul><ul><ul><ul><li>Certified PSP developer </li></ul></ul></ul><ul><ul><ul><li>Microsoft IT, Intuit, etc. </li></ul></ul></ul><ul><li>Open source tool http://processdash.sourceforge.net/ </li></ul>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 ...
    48. 48. For all... <ul><li>TSP/PSP is used in various domains, here are some examples: </li></ul><ul><ul><ul><li>Teams of managers to establish the organisation strategic plan </li></ul></ul></ul><ul><ul><ul><li>Software development teams </li></ul></ul></ul><ul><ul><ul><li>Hardware development teams </li></ul></ul></ul><ul><ul><ul><li>Electronic games development teams </li></ul></ul></ul><ul><ul><ul><li>Teams of testers </li></ul></ul></ul><ul><ul><ul><li>Teams of systems </li></ul></ul></ul><ul><ul><ul><li>Service teams: maintenance, support, installation </li></ul></ul></ul><ul><ul><ul><li>Etc. </li></ul></ul></ul>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 and TSP Coach at Vicarious Visions
    49. 49. Performance data 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 of projects have no defects Measures With TSP average min. – max. Typicalproject 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%
    50. 50. <ul><li>M y goal is to show you how this approach helps build highly efficient and performing teams in your organization. A proven methodology and accessible… </li></ul><ul><li>… because you don’t have to tackle its implementation on your own since I am here to assist you. </li></ul>Frédérick Lussier (frederick.lussier@mail.com) Coach ---> SEI-Certified PSP Developer ---> SEI-Authorized Instructor for PSP ---> Certified SCRUM Master
    51. 51. Thank you for your attention
    52. 52. References <ul><li>http://www.sei.cmu.edu/tsp/ </li></ul><ul><li>Mapping TSP to CMMI </li></ul><ul><ul><li>CMU/SEI-2004-TR-014 James McHale & Daniel S. Wall </li></ul></ul><ul><li>The Team Software Process (TSP) in Practice: A Summary of Recent Results </li></ul><ul><ul><li>CMU/SEI-2003-TR-014 (see also CMU/SEI-2000-TR-015) Noopur Davis, Julia Mullaney </li></ul></ul><ul><li>Relating the Team Software Process (TSP) to the Capability Maturity Model for Software (SW-CMM) </li></ul><ul><ul><li>CMU/SEI-2002-TR-008 Noopur Davis, Jim McHale, with Strategy & Overview by Watts Humphrey </li></ul></ul><ul><li>The Personal Software Process (PSP) </li></ul><ul><ul><li>CMU/SEI-2000-TR-022 </li></ul></ul><ul><li>The Team Software Process (TSP) </li></ul><ul><ul><li>CMU/SEI-2000-TR-023 Watts Humphrey </li></ul></ul>

    ×