Personal Software Process

Slides:



Advertisements
Similar presentations
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Advertisements

The Personal Software Process (PSP) Lecture #1 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #7 Software Engineering.
PRO2 - 1 Introduction to the Personal Software Process SWENET PRO2 Module Developed with support from the National Science Foundation.
Overview Lesson 10,11 - Software Quality Assurance
The Software Process Strategy The Software Process Strategy Part III.
CS 350: Introduction to Software Engineering Slide Set 5 Software Quality C. M. Overstreet Old Dominion University Spring 2006.
Aplicaciones de Ingeniería de Software
Fundamental of Software Project Management Team Assignment 1 – K15T2 – Team 07.
Using A Defined and Measured Personal Software Process Watts S. Humphrey CS 5391 Article 8.
Personal software process Mohammed ahmed ali. What is psp The personal software process (psp) is a structured set of process descriptions, measurements.
Personal Software Process Overview CIS 376 Bruce R. Maxim UM-Dearborn.
Capability Maturity Model
Personal Software Process Software Quality CIS 376 Bruce R. Maxim UM-Dearborn.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Software Quality Chapter Software Quality  How can you tell if software has high quality?  How can we measure the quality of software?  How.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Chapter 15 Projecting Defects( 缺陷预测 ). 山东大学齐鲁软件学院 2 outline  Analyze and use your defect data to help improve both planning accuracy and product quality.
N By: Md Rezaul Huda Reza n
Disciplined Software Engineering Lecture #8 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
INFO 637Lecture #41 Software Engineering Process II Development Plan INFO 637 Glenn Booker.
1 9/19/2015ã 2007, Spencer Rugaber Personal Software Process (PSP) Application of CMM principles to individuals Developed by Watts Humphrey of the Software.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Disciplined Software Engineering Lecture #6 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
CS 350, slide set 6 M. Overstreet Old Dominion University Spring 2005.
Software Engineering - Spring 2003 (C) Vasudeva Varma, IIITHClass of 39 CS3600: Software Engineering: Standards in Process Modeling CMM and PSP.
SE 501 Software Development Processes Dr. Basit Qureshi College of Computer Science and Information Systems Prince Sultan University Lecture for Week 6.
Humboldt University Berlin, University of Novi Sad, University of Plovdiv, University of Skopje, University of Belgrade, University of Niš, University.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Lecture: The Personal Software Process. 2 Overview  Personal Software Process assumptions process stages measures and quality strategy results.
Disciplined Software Engineering Lecture #7 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
© 1998 Carnegie Mellon UniversityTutorial The Personal Software Process (PSP) The overview of the PSP that follows has been built from material made.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #8 Software Engineering.
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
Software Engineering Prof. Dr. Bertrand Meyer March–June 2007 Chair of Software Engineering Lecture 2: The Personal Software Process.
CS 350, slide set 5 M. Overstreet Old Dominion University Spring 2005.
INFO 636 Software Engineering Process I Prof. Glenn Booker Week 9 – Quality Management 1INFO636 Week 9.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 3 1 Software Size Estimation I Material adapted from: Disciplined.
INFO 636 Software Engineering Process I Prof. Glenn Booker Week 8 – Reviews 1INFO636 Week 8.
PSP Quality Strategy [SE-280 Dr. Mark L. Hornick 1.
CS 350: Introduction to Software Engineering Slide Set 3 Estimating with Probe I C. M. Overstreet Old Dominion University Fall 2005.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 7 1 Design and Code Reviews - Overview What are design and code.
Disciplined Software Engineering Lecture #3 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
INFO 636 Software Engineering Process I Prof. Glenn Booker Weeks 1-2 – Introduction 1INFO636 Weeks 1-2.
Implementation Phase CS4311 – Spring 2008 References: Shach, Object Oriented and Classical Software Engineering E. Braude, Software Engineering, an Object-Oriented.
Watts Humphrey IBM director of programming and vice-president of technical development Joined CMU Software Engineering Institute in 1986 Initiator and.
CS 350: Introduction to Software Engineering Slide Set 2 Process Measurement C. M. Overstreet Old Dominion University Fall 2005.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
The Personal Software Process Alan Kelon Oliveira de Moraes May 15, Recife.
Carnegie Mellon Software Engineering Institute © 2006 by Carnegie Mellon University Software Process Performance Measures James Over Software Engineering.
Advanced Software Engineering Lecture 4: Process & Project Metrics.
Personal Design and Development Software Process PD 2 SP “The unexamined life is not worth living.” Plato.
Introduction to the Personal Software Process. Overview Process Fundamentals PSP Concepts and Structure PSP Planning and Measurement PSP Quality Management.
Chapter 10: Software Size Estimation Omar Meqdadi SE 273 Lecture 10 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
CSC 480 Software Engineering PSP Project 1 August 20, 2004.
CS 350: Introduction to Software Engineering Slide Set 3 Estimating with Probe I C. M. Overstreet Old Dominion University Spring 2006.
CSC 205 Programming II Lecture 1 PSP. The Importance of High-Quality Work Three aspects to doing an effective software engineering job producing quality.
TMP3413 Software Engineering Lab Lab 01: TSPi Tool Support.
A possible solution: Personal Software Process (PSP)
SWE 3643_2016_Lesson_3 PSP Data / Review / Inspection from kindergarten to college SWE 3643 Lesson 3 PSP & Review/Inspection.
Software Inspections and Testing
Capability Maturity Model
Capability Maturity Model
Team Software Process (TSP)
Presentation transcript:

Personal Software Process CSEM01 SE Evolution & Management Anne Comer Helen Edwards CSEM01 - wk 6 - PSP

Personal Software Process Objectives To describe the personal software process (PSP) To show where and how the PSP can be used to improve individual software engineering performance CSEM01 - wk 6 - PSP

The Software Problem Poor software quality in delivered systems is expensive expensive service and enhancement potential for accident or loss of life Organizational progress with process improvement is limited because process improvement takes time, and is hard to sell CSEM01 - wk 6 - PSP

The PSP Solution The PSP addresses these problems by providing convincing evidence of the benefits of process improvement exposing the engineers to the benefits of using effective processes in their work teaching the engineers effective process improvement methods providing the historical data to better manage cost, schedule, and quality CSEM01 - wk 6 - PSP

The PSP Paradigm The PSP is based on process improvement principles. Software engineers establish personal process goals they define the methods to use they measure their work they analyze the results based on the results, they adjust their methods to improve towards personal goals CSEM01 - wk 6 - PSP

The PSP Strategy Start with the s/w engineer’s current process Gradually introduce new methods Practice these methods on module-sized programs The engineers then see for themselves how these methods help them. CSEM01 - wk 6 - PSP

PSP Overview (i) The PSP is a process for individuals to use. It applies to most structured tasks. writing small programs or documents defining requirements or processes conducting reviews or tests, etc. It is extendible to team development of large-scale software systems. CSEM01 - wk 6 - PSP

PSP Overview (ii) Individuals learn the PSP in seven steps. When learning PSP s/w engineers write 10 module-sized programs using the PSP steps. they gather and analyze data on their work based on these analyses they improve their working methods The PSP exercises provide the rapid feedback needed for effective learning. CSEM01 - wk 6 - PSP

Size estimating report Process imprvmt proposal The PSP – seven steps Team Software Process PSP 3 Cyclic development PSP 2-3 Design templates PSP 2 Code reviews Design reviews PSP 1-2 Task planning Schedule planning PSP 1 Size estimating report Test report PSP 0-1 Coding standard Process imprvmt proposal Size measurement PSP 0 Current Process Basic measures CSEM01 - wk 6 - PSP

The PSP0 Process With PSP0, engineers use their current design and development methods. They gather data on their work. the time spent by phase the defects found in compile and test They analyze and report these data. CSEM01 - wk 6 - PSP

The PSP0 Lessons With PSP0, engineers learn to use a basic personal process. they gather data on their personal work and personal processes they learn how and why to measure the sizes of the products they produce CSEM01 - wk 6 - PSP

The PSP1 Process The PSP0 is augmented to include coding standards size estimating resource estimating schedule estimating test report earned value tracking process improvement proposal (PIP) CSEM01 - wk 6 - PSP

The PSP1 Lessons With PSP1, engineers estimate the sizes and development times of the work they produce. they use their historical data to improve their estimates they project the likely statistical ranges of their estimates and learn how to reduce these ranges CSEM01 - wk 6 - PSP

PSP2 and PSP3 Lessons With PSP2, engineers use their historical data to improve the quality of the program modules they produce. they measure the efficiency of their defect removal methods they use various process quality measures, including yield, COQ (cost of quality), and A/FR (appraisal/failure ratio) With PSP3, engineers learn how to adjust their personal processes for different types of work. CSEM01 - wk 6 - PSP

The Basic PSP Elements A process script A project plan summary form A time recording log A defect reporting log A defect type standard CSEM01 - wk 6 - PSP

Process Script Scripts guide the engineers through the process. purpose inputs required process phases exit criteria CSEM01 - wk 6 - PSP

Project Plan Summary The project plan summary form holds project plan data actual project results size times defect data cumulative data on all PSP projects to date CSEM01 - wk 6 - PSP

Time Recording Log Time spent working on each PSP phase is recorded. start time stop time interrupt time phase comments CSEM01 - wk 6 - PSP

Defect Recording Log Information on each defect found in reviews, compiling, and test is recorded. Number type phase injected phase removed find/fix time description CSEM01 - wk 6 - PSP

The PSP Process Flow Requirements PSP Process Planning Development Design Code Compile Test Design review Code review Postmortem Make a plan, with an estimate of development time and size, and record on the project plan summary Develop the product using current methods Complete the project plan summary by entering the time spent, the defects injected per phase, and the defects found per phase Development includes these steps: design the program implement the design compile the program until it is defect free test the program and fix all defects During the process, record all defects found in the defect log and the time spent per phase in the time recording log Process scripts guide Time and defect logs Project plan summary Project and process data summary report Finished product CSEM01 - wk 6 - PSP 27

PSP Planning In the PSP, engineers use their personal data to make plans. Planning consists of size estimating resource estimating schedule estimating In the PSP, lines of code (LOC) are used as the size measure Other measures could be used. CSEM01 - wk 6 - PSP

Why Estimate Size? To make better plans to better size the job to divide the job into separable elements To assist in tracking progress can judge when job scope changes can better measure the work Value for the PSP learn estimating methods build estimating skills CSEM01 - wk 6 - PSP

Size Estimating Principles Estimating is an uncertain and intuitive process. The estimating objectives are to make consistent estimates understand estimate variability balance under and over estimates Advantages of a defined estimating method are You have a known practice you can improve. It provides a framework for gathering data. consistent method + historical data = consistent estimates CSEM01 - wk 6 - PSP

The PSP Quality Strategy - 1 In the PSP, defects are the basic quality measure. Note -- defects are not important to the user as long as they do not affect operations cause inconvenience cost time or money cause loss of confidence in the program’s results CSEM01 - wk 6 - PSP

The PSP Quality Strategy - 2 Low defect content is essential to a quality software process. Experienced software engineers typically inject around 100 defects per KLOC. Defects are injected at the ‘PSP level’ and this is where the engineers should remove them determine their causes learn to prevent them CSEM01 - wk 6 - PSP

The PSP Quality Strategy - 3 If you want a quality product out of test, you must put a quality product into test. testing removes only a fraction of the defects test is only meant to find defects - correction goes to developers (PC) To manage defects, they must be addressed where they are injected - by each software engineer. CSEM01 - wk 6 - PSP

The PSP Quality Strategy - 4 Data show that it is much more efficient to find defects in reviews than in testing. in unit test, typically only about 2 to 4 defects are found per hour code reviews typically find about 10 defects per hour experienced reviewers can find 70% or more of the defects in a product unit test rarely exceeds a 50% yield PSP data show that reviews find 2 to 5 times as many defects per hour as unit test. CSEM01 - wk 6 - PSP

PSP Reviews In a personal design or code review Professionals privately review their products. Their objective is to find all defects before the first compile and test. Reviews are most effective when structured and measured. Reviews can be used for requirements, designs, and code. CSEM01 - wk 6 - PSP

The Cost of Quality (COQ) Failure costs repair, rework, and scrap PSP failure costs are compile and test time Appraisal costs costs of inspecting for defects PSP appraisal costs are design review and code review time Prevention costs are finding and resolving defect causes. CSEM01 - wk 6 - PSP

Key Points A defined and measured process provides a repeatable basis for improvement. The PSP quality strategy helps engineers produce high quality products. CSEM01 - wk 6 - PSP