Mining PSP Data. Dan Burton and Watts Humphrey Software Engineering Institute Carnegie Mellon University

Similar documents
Basics of PSP and TSP for Systems Engineering

Process Improvement at NAVAIR using TSP and CMM

MISC PMT. Should Mean More Than Just an Anagram. Mike Konrad Software Engineering Institute Carnegie Mellon University. September 18, 2006

Overview of the New Introduction to CMMI Course and Changes to the Intermediate Concepts and Instructor Training Courses

Guide to the SEI Partner Network

Reducing System Acquisition Risk with Software Architecture Analysis and Evaluation

SCAMPI B&C Tutorial. Software Engineering Process Group Conference SEPG Will Hayes Gene Miluk Jack Ferguson

Sub-title: Monitoring of Optimal Use of MCH e Registry, Evaluation and Action Plans. Effective date: 15 th January 2017 Review date: 1 st May 2017

COTS Selection and Adoption in a Small Business Environment. How Do You Downsize the Process?

Sustaining Software-Intensive Systems - A Conundrum

University of Michigan Health System. Current State Analysis of the Main Adult Emergency Department

Facility Assessment: How to Use the Toolkit

Carnegie Mellon University OFFICE OF STUDENT LEADERSHIP, INVOLVEMENT, AND CIVIC ENGAGEMENT OFFICER TRANSITION GUIDE

Patient Assignment Version 4.81

Risk themes from ATAM data: preliminary results

Practical Applications on Efficiency

20 STEPS FROM STUDY IDEA INCEPTION TO PUBLISHING RESEARCH/ Evidence-Based Practice

Nevada Department of Transportation Traffic Operations Policy Memorandum Traffic Signal Warrant Approval Process

Government of India Ministry of Finance Central Board of Direct Taxes Directorate of Income Tax (Systems) Notification No.

A Game-Theoretic Approach to Optimizing Behaviors in Acquisition

Implementation Guide Version 4.0 Tools

Software Architecture and Product Quality

HHA Medicare Cost Reporting

Visitor Information - Surveys and Countings

MINUTES SAOF MANAGEMENT COMMITTEE MEETING

Reports To The President reports to the membership and to the Board of Directors.

A GUIDE TO Understanding & Sharing Your Survey Results

Unified Communications Improves Business Outcomes, Lowers Costs, and Enhances Environmental Sustainability

Contents. CLUB LICENSING QUALITY STANDARD Edition 2012

The CUSP Phaseline: A Checklist to Independence for Unit-Based Teams

Financial Administrator Development Program: Indirect Costs/Facilities & Administrative/Overhead

A GUIDE TO Understanding & Sharing Your Survey Results. Organizational Development

Transportation Management Plan Overview

A NATIONAL SURVEY OF MEDICAID READINESS FOR ELECTRONIC VISIT VERIFICATION

Domain Reuse. Mr. Neil Patterson & Mr. Milton Smith

This document describes the purpose and functions of University Health and Safety Committees.

Schedule 3. Services Schedule. Speech-Language Pathology

Managing Job Requisitions. Contingent Workforce Solutions Training for Client Users

H2020 Programme. Guidelines on Open Access to Scientific Publications and Research Data in Horizon 2020

TE18 Review Process and Responsibilities

Organization Review Process Guide Perinatal Care Certification

FiXs Configuration Control Board Procedures Version 3.0 September 1, 2010

OACHC and ACS HPV Practice Change Project Kickoff June 6, 2017

Applying CMMI for Services (CMMI-SVC) to Health Care

Summer Internships at the Port Authority of NY & NJ 2018

GUIDEBOOK FOR MEETING The GuideBook App for the Governing Board created by members of ITCom and CommCom is now live and available for download.

EFFICIENCY MAINE TRUST REQUEST FOR PROPOSALS FOR TECHNICAL SERVICES TO DEVELOP A SPREADSHEET TOOL

The African Regulatory Collaborative:

Project Presenter Information

ANNUAL REPORT FY 17. July 1, 2016 June 30, 2017 report for Performance and Quality Improvement

Western State Hospital

AHRQ Quality Indicators. Maryland Health Services Cost Review Commission October 21, 2005 Marybeth Farquhar, AHRQ

The National Research Council Assessment of The Small Business Innovation Research Program

Educator Awards. Nominator Information. Nominee Information. Questions? hmhco.com

NEXTGEN E&M CODING DEMONSTRATION

2018 IATA Ground Handling Conference Innovator Competition (IGHC Innovator 2018) Terms & Conditions

METHODOLOGY - Scope of Work

The Health Plan with you in mind. AmeriHealth HMO

MDS and Staffing Focus Surveys

AIM Alberta Online Measurement Tool Manual. Instructions for Use Part 1: Set Up and Data Collection

Primary Health Care System Level Indicators. Presentation March 2015

The Care Transitions Network

Techstreet Enterprise: Admin Guide

National Association of Rural Health Clinics

Chapter Three Operational Area Planning/Intelligence Section Function Specific Handbook

Knowledge Translation Plan

SPH Seed Funding Program

Impact Grant Application COVER SHEET

NEXTGEN E&M CODING DEMONSTRATION

Scheduling & Physician/Staff Utilization

Guidance for the Texas Accountability Intervention System

Request for Proposals (RFP) Software Maintenance and Modifications/Enhancements Subcontractor

A Qualitative Study of Mozilla s Process Management Practices

Request for Proposals. For. Clinical Skills Assessment Pilot Project

SMU GLOBAL IMPACT SCHOLARSHIP AWARD

CMMI Version 1.2 and Beyond

Measuring Readiness to Promote Resiliency Operational Metrics and Standards

How to submit course or program proposals to the Academic Affairs Committee

Job Match. Parse Data. Regardless of the resume creation method chosen, you will initially begin in the resume builder.

Home and Community- Based Services Waiver Program. HP Provider Relations/October 2014

Capability Maturity Model for Business Development, Version 2.0

Key Population Engagement in Global Fund

Product Stewardship for End of Life Tyres (ELT)

Mapping Acquisition Requirements from Capabilities in a Net-Centric Enterprise Creating a Capabilities Engineering Framework

Purpose of the PSO/MSO Base Funding Program

Tips & Tricks of Research Administration #UDResearch April 13, 2016

BOARD OF TRUSTEES MARCH MEETING MINUTES WEDNESDAY, April 1, :00 P.M.

Schedule 3. Services Schedule. Occupational Therapy

Gregory Taddeo, DDS, Dental Director, Community Healthcare Network

MDS and STAFFING FOCUS SURVEYS

CMMI Version 1.2 and Beyond a Tutorial

Why Isn t Someone Coding Yet (WISCY)? Avoiding Ineffective Requirements

5/28/2010. w w w. w a t t c h o i c e s. c o m. Agenda

State of Nebraska DHHS- Division of Developmental Disabilities

Student Awards OFFICIAL RULES: HOUGHTON MIFFLIN HARCOURT 180 STUDENT AWARDS CONTEST; NO PURCHASE NECESSARY. hmhco.com

Reconciling Abstracted to Electronic Quality Measures

FOIA PROCESS EXECUTIVE SUMMARY

Test and Evaluation of Highly Complex Systems

Computer System. Computer hardware. Application software: Time-Sharing Environment. Introduction to Computer and C++ Programming.

FY 2016 PERFORMANCE PLAN

Transcription:

Sponsored by the U.S. Department of Defense 26 by Carnegie Mellon University Mining PSP Data Dan Burton and Watts Humphrey Software Engineering Institute Carnegie Mellon University page 1

Agenda SM Overview the PSP and PSP data Defect-removal analysis Language-impact analysis Summary and conclusions SM Personal Software Process and PSP are service marks of Carnegie-Mellon University. 26 by Carnegie Mellon University 2

Overview - PSP The Personal Software Process (PSP) is a process framework to guide developers in defining their own processes planning and tracking their own work managing the quality of the products they produce PSP principles Project success is governed by team performance. Team performance depends on member performance. Member performance is determined by member practices. To consistently improve, developers must use defined and measured processes. 26 by Carnegie Mellon University 3

The PSP Course Team Software Process Teambuilding Risk management Project planning and tracking PSP2 Code reviews Design reviews PSP2.1 Design templates Introduces quality management and design 4 programs PSP1 Size estimating Test report PSP1.1 Task planning Schedule planning Introduces estimating and planning 2 or 3 programs PSP Current process Basic measures PSP.1 Coding standard Process improvement proposal Size measurement Introduces process discipline and measurement 2 or 3 programs 26 by Carnegie Mellon University 4

Overview PSP Course In the PSP course, developers write 8 to 1 programs. The standard PSP programs are 1 or 2 size counters and 7 or 8 statistical calculations. Average program size is 17.8 lines of code. Average development time is 3.98 hours per program. 26 by Carnegie Mellon University 5

Overview - PSP Data - 1 When using the PSP, developers gather and use data. Time data The time in minutes spent by development task Interruption time is not counted. Size data Product size in db elements, pages, LOC, etc. Categories: base, added, deleted, modified, reused Defect data All defects removed in compile, test, review, etc. Type, phases injected & removed, fix time, description 26 by Carnegie Mellon University 6

Overview - PSP Data - 2 The PSP course has now been taught for more than ten years. The SEI has course data on 31,14 programs 3,355,882 lines of code 123,996.53 hours of work 221,346 defects A great deal can be learned from analyzing these data. 26 by Carnegie Mellon University 7

PSP Data Analyses The following charts show summary analyses of defect injection and removal rates productivity development time Many more analyses can be made. Based on their PSP data, developers can determine where and how to improve personal practices how and when to best find defects the amount of time required to do a job the likely number of defects to be found in test 26 by Carnegie Mellon University 8

PSP Data by Language Language Programs LOC Hours Defects C 4,984 532,529 21,46.8 36,426 C++ 3,255 448,517 14,913.4 3,785 C# 1,213 163,233 3,696.6 6,661 VB 1,353 144,621 5,18.5 7,45 Java 1,383 199,493 6,311. 11,131 Ada 286 33,6 1,869. 3,477 Total 12,474 1,521,453 53,359.2 95,885 26 by Carnegie Mellon University 9

Coding Defects Injected per Hour 2 Defects Injected per Hour in Coding 18 16 14 12 1 8 6 4 2 C C++ C# VB Java Ada Prog. 1 Prog. 1 26 by Carnegie Mellon University 1

Defect Fix Time vs. Size Minutes per Test Defect vs. Program Size Test Time per Defect (minutes) 18 16 14 12 1 8 6 4 2-1 1-2 2-3 3-4 4+ Program Size Range (LOC) 26 by Carnegie Mellon University 11

Unit Test Time vs. Quality 35 Time per Defect - Minutes 3 25 2 15 1 5 -.1.1 -.2.2-.3.3 -.4.4 -.5.5-1. PQI 26 by Carnegie Mellon University 12

Language Impact Analysis This analysis looks at the data separated by the following languages and sample sizes. Language Sample Size C 455 to 521 C++ 271 to 343 C# 17 to 127 VB 119 to 146 Java 129 to 144 26 by Carnegie Mellon University 13

Program Size Average LOC 3 25 LOC 2 15 1 C++ C C# Java VB 5 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 14

Development Time Average Development Time 5 45 Development Minutes 4 35 3 25 2 15 1 C++ C C# Java VB 5 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 15

Total Defects Average Total Defects 14 12 1 Defects 8 6 C++ C C# VB Java 4 2 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University

Productivity Average Productivity 8 7 6 Loc/Hour 5 4 3 C++ C C# Java VB 2 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University

Total Defect Density Average Total Def/KLOC 14 12 1 Def/KLOC 8 6 C++ C C# Java VB 4 2 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University

Compile Defect Density Average Defects/KLOC Removed in Compile 9 8 7 Def/KLOC 6 5 4 3 C++ C C# Java VB 2 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University

Test Defect Density Average Defects/KLOC Removed in Test 7 6 5 Def/KLOC 4 3 2 C++ C C# Java VB 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University

Defects/Hour Injected in Design Average Defects/Hour Injected in Design 7 6 5 Def/Hour 4 3 C++ C C# Java VB 2 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 21

Defects/Hour Injected in Code Average Defects/Hour Injected in Code 1 9 8 7 Def/Hour 6 5 4 3 C++ C C# Java VB 2 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 22

Defects/Hour Removed in Design Review Average Defects/Hour Removed in Design Review 4.5 4 3.5 Def/Hour 3 2.5 2 1.5 C++ C C# Java VB 1.5 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 23

Defects/Hour Removed in Code Review Average Defects/Hour Removed in Code Review 9 8 7 Def/Hour 6 5 4 3 C++ C C# Java VB 2 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 24

Compile + Test Time as % Total Average Compile + Test Time as % Total Time 4 35 3 Percent 25 2 15 C++ C C# Java VB 1 5 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 25

Yield Average Yield 6 5 Yield 4 3 2 C++ C C# Java VB 1 1 2 3 4 5 6 7 8 9 1 Program Number 26 by Carnegie Mellon University 26

Conclusions The Personal Software Process (PSP), when properly used provides comprehensive data. Developers and their teams can use these data to manage their work. With the aid of PSP data, teams have improved their productivity and shortened development time. The large volume of PSP data provides a valuable source of information on software engineering practice. 26 by Carnegie Mellon University 27

For More Information Visit the PSP/TSP web site http://www.sei.cmu.edu/tsp Contact a TSP transition partner http://www.sei.cmu.edu/collaborating/partners/trans.part.psp.html Contact SEI customer relations Phone, voice mail, and on-demand FAX: 412/268-58 E-mail: customer-relations@sei.cmu.edu See the books PSP: A Self-Improvement Process for Software Engineers, by Watts Humphrey, Addison-Wesley, 25. Winning with Software, by Watts Humphrey, Addison-Wesley, 22 TSP: Leading a Development Team, by Watts Humphrey, Addison- Wesley, 26. TSP: Coaching Development Teams, by Watts Humphrey, Addison- Wesley, 26. 26 by Carnegie Mellon University 28