Fundamental of Software Project Management Team Assignment 1 – K15T2 – Team 07 What is a Software Development Process? A software development process, also known as a software development life cycle, is a set of activities, methods, and practices that are used in the development of software. There are several models for such processes, each describing approaches to a variety of tasks or activities that take place during the process. It helps us build and deliver high quality software to satisfy customers/ market demands. Software development activities 1 • Planning 2 • Implementation, testing and documenting 3 • Deployment and maintenance What is software development model? To develop software products, software engineers must establish a strategy consisting of the process, methods and tools, organizing them into a structure that guides the development called “Software Development Model”. Several models exist to streamline the development process. Each one has its pros and cons, and it's up to the development team to adopt the most appropriate one for the project. Sometimes a combination of the models may be more suitable. Waterfall Model is a tradition model, linear, sequential, this model is very risky. It just have followed sequential a thorough process, so if the previous phases have mistakes then the project is failure. Spiral Model How the TSP was developed? In 1996, Watts Humphrey developed the initial version of the TSP process. His objective was to provide an operation process to help engineers consistently do quality work. Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? How the TSP was developed? In 1996, Watts Humphrey developed the initial version of the TSP process. His objective was to provide an operation process to help engineers consistently do quality work. How the TSP was developed? 1. Engineer Team work 2. The Conditions for Teamwork 3. Effective Teams 4. Building Effective Teams Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? What is Team Software Process? Team Software Process (TSP) guides engineering teams that are developing software-intensive products. Using TSP helps organizations establish a mature and disciplined engineering practice that produces secure, reliable software in less time and at lower costs TSP is a process that is specifically designed for software teams. It’s purpose is to build high performance teams and help them : plan their work negotiate their commitments with management manage and track projects to a successful conclusion produce quality products in less time achieve their best performance without the “death march” ending Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? Why focus on teams? Launching a TSP team Launching a TSP team The team leader guide and motivate the team in doing its work take the time to reach full consensus on all important issues ensure that the team establishes high standards for the work provide management support to the team support the team with management protect the team so that it can concentrate on the project The team leader’s job is to use the team to build the product. The coaches • trains and facilitates the adoption of TSP • works with the team leader to build the team • observer that guides the team The coaches job is to use the project to build the team. Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? TSP Development Process TSP Development Process Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? The TSP Team working Process Once the TSP team is launched, the principal need is to ensure that all team members follow the plan. This includes major topics: Leading the team Process discipline Issue tracking Communication Management reporting Maintaining the plan Estimating project completion Rebalancing team workload Relaunching the project TSP quality management Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? TSP Quality Management Planning for quality TSP quality planning estimates the number of defects injected and removed at each phase based on historical injection rates and phase yields. Removal rates, review rates, phase time ratios, defect densities, and other quality indicators are then calculated by the tools. TSP Quality Management Measuring and tracking quality Developers track every defect found and fixed. Quality is reviewed weekly by the quality manager and the team. TSP Quality Management Defect removal filters Every activity that finds and removes defects can be thought of as a defect removal filter TSP has many such filters. Capture/Recapture TSP uses capture/recapture to estimate the defects missed in inspections. Defect prevention Every defect found in system test or later is analyzed to prevent future escapes. Every defective module is re-inspected. Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? Advantages of TSP Model Members of the team can support each other. Reductions in cost and schedule variance to less than +/- 10% Self-directed teams: develop their own plans, negotiate commitments, track their work, keep management informed of project status and risks. Productivity improvements of 25% or more. TSP have to planning for quality: estimates the number of defects injected and removed at each phase. It also measure and track quality: Developers track every defect found and fixed. Quality is reviewed weekly by the quality manager and the team. Advantages of TSP Model TSP schedule, time granularity is in hours, not days, weeks, or months. Time is a measure of time on task. Minus interruption time. TSP team members record their time as they work, not at the end of the day, week, or month. Disadvantages of TSP Model Training problem: It will take a lot of cost and time to training all the team. TSP model is suitable for big project with high risk because it is a complicated. TSP projects are divided into cycles. Each cycle starts with a launch or relaunch and ends with a postmortem. Summary Part 1: How the TSP was developed? Part 2: What is Team Software Process? Part 3: Why focus on teams? Part 4 : TSP Development Process Part 5: The TSP Team working Process Part 6: TSP Quality Management Part 7: Advantages and Disadvantages Part 8: Who is using TSP? Who is using TSP? Teradyne Hill Air Force Base, near Salt Lake City, Utah, is the first U.S. government organization to be rated at CMM Level 5 Boeing Thanks for your listening !