Metody statystyczne Copyright, 2001 © Jerzy R. Nawrocki Doskonalenie Procesów Programowych.

Slides:



Advertisements
Similar presentations
Extreme Programming Copyright, 1999 © Jerzy R. Nawrocki Personal Software Process Lecture.
Advertisements

Effort and Schedule Estimation Copyright, 1999 © Jerzy R. Nawrocki Personal Software.
Chapter 9: Simple Regression Continued
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 4 1 Software Size Estimation II Material adapted from: Disciplined.
Planning at CMM level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements Engineering.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
The Baseline Personal Process Copyright, 1999 © Jerzy R. Nawrocki Jerzy Nawrocki Personal Software Process Lecture 3.
Procedures for CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Intuicyjne zarządzanie przedsięwzięciem Copyright, 2001 © Jerzy R. Nawrocki Doskonalenie.
Software Engineering Lab Session Session 4 – Feedback on Assignment 1 © Jorge Aranda, 2005.
PRO2 - 1 Introduction to the Personal Software Process SWENET PRO2 Module Developed with support from the National Science Foundation.
SE 501 Software Development Processes Dr. Basit Qureshi College of Computer Science and Information Systems Prince Sultan University Lecture for Week 7.
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
Aplicaciones de Ingeniería de Software
Questions? Cycle 1 Process details Process Dashboard Coding vs. Testing ??? SE-280 Dr. Mark L. Hornick 1.
Personal software process Mohammed ahmed ali. What is psp The personal software process (psp) is a structured set of process descriptions, measurements.
Application of reliability prediction model adapted for the analysis of the ERP system Frane Urem, Krešimir Fertalj, Željko Mikulić College of Šibenik,
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #5 Software Engineering.
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.
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.
SE 501 Software Development Processes Dr. Basit Qureshi College of Computer Science and Information Systems Prince Sultan University Lecture for Week 8.
Disciplined Software Engineering Lecture #4 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Disciplined Software Engineering Lecture #6 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
INFO 636 Software Engineering Process I Prof. Glenn Booker Week 6 – Estimating Resources and Schedule 1INFO636 Week 6.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Personal Estimation with PROBE CS3300 Fall Code Size Estimation Wide Band Delphi (Boehm) Give the team the specs to study Discuss the project goals.
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.
CMM Level 2: Repeatable Copyright, 2000 © Jerzy R. Nawrocki Quality Management.
Lecture 4 Software Metrics
Experimental Evaluation of Pair Programming Copyright, 2001 © Jerzy R. Nawrocki European Software Control & Metrics ESCOM’01 ESCOM’01 Poznan University.
SE 501 Software Development Processes Dr. Basit Qureshi College of Computer Science and Information Systems Prince Sultan University Lecture for Week 9.
Software Engineering Prof. Dr. Bertrand Meyer March–June 2007 Chair of Software Engineering Lecture 2: The Personal Software Process.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 3 1 Software Size Estimation I Material adapted from: Disciplined.
Effort and Schedule Estimation Copyright, 2006 © L. Ouyang Liubo Ouyang Personal Software Process Lecture.
1 PSP4a Introduction to the Personal Software Process Watts Humphrey Addison Wesley Longman c1997.
1 PSP4a Introduction to the Personal Software Process Watts Humphrey Addison Wesley Longman c1997.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #4 Software Engineering.
Introduction to SoDA Copyright, 2001 © Jerzy R. Nawrocki Requirements Engineering.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
CS 350: Introduction to Software Engineering Slide Set 3 Estimating with Probe I C. M. Overstreet Old Dominion University Fall 2005.
Disciplined Software Engineering Lecture #3 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Disciplined Software Engineering Lecture #2 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #2 Software Engineering.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
SOFTWARE METRICS. Software Process Revisited The Software Process has a common process framework containing: u framework activities - for all software.
Implementation Phase CS4311 – Spring 2008 References: Shach, Object Oriented and Classical Software Engineering E. Braude, Software Engineering, an Object-Oriented.
INFO 636 Software Engineering Process I Prof. Glenn Booker Weeks 4-5 – Estimating Software Size 1INFO636 Weeks 4-5.
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.
Software Size Estimation Copyright, 2006 © L. Ouyang Liubo Ouyang Personal Software Process Lecture 5.
Copyright © 1998, Triola, Elementary Statistics Addison Wesley Longman 1 Estimates and Sample Sizes Chapter 6 M A R I O F. T R I O L A Copyright © 1998,
Configuration Management at CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
Statistics for Business and Economics 8 th Edition Chapter 7 Estimation: Single Population Copyright © 2013 Pearson Education, Inc. Publishing as Prentice.
Personal Estimation with PROBE CS3300 Fall Process Everybody has one !!! Formal – Completely defined and documented Informal – Just the way things.
Introduction to Quality Management Copyright, 2000 © Jerzy R. Nawrocki Quality.
Introduction to the Personal Software Process. Overview Process Fundamentals PSP Concepts and Structure PSP Planning and Measurement PSP Quality Management.
1 Chapter 8 Interval Estimation. 2 Chapter Outline  Population Mean: Known  Population Mean: Unknown  Population Proportion.
Chapter 10: Software Size Estimation Omar Meqdadi SE 273 Lecture 10 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Quality Assurance at CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Requirements.
CS 350: Introduction to Software Engineering Slide Set 3 Estimating with Probe I C. M. Overstreet Old Dominion University Spring 2006.
Introduction to SoDA Copyright, 2001 © Jerzy R. Nawrocki Quality Management Lecture.
Requirements Management and Changes Copyright, 2003 © Jerzy R. Nawrocki Requirements.
Watts Humphrey IBM director of programming and vice-president of technical development Joined CMU Software Engineering Institute in 1986 Initiator and.
Requirements Engineering Lecture 4
Disciplined Software Engineering Lecture #6
Estimating with PROBE II
Personal Software Process Software Estimation
Presentation transcript:

Metody statystyczne Copyright, 2001 © Jerzy R. Nawrocki Doskonalenie Procesów Programowych Wykład 8

J. Nawrocki, DPP, Wykład 8 Introduction.. Project planning.. Size estimating

J. Nawrocki, DPP, Wykład 8 Introduction Time & defect recording Time & defect recording Coding strd+Size measuremnt+PIP Coding strd+Size measuremnt+PIP Size estimating + Test report Task & schedule planning Code & design reviews Code & design reviews Design templates Design templates Cyclic dev. Cyclic dev. Baseline Planning Quality Cyclic

J. Nawrocki, DPP, Wykład 8 Plan of the lecture IntroductionIntroduction The Probe methodThe Probe method ExampleExample Effort estimationEffort estimation

J. Nawrocki, DPP, Wykład 8 Probe method Humphrey, CMU, 1995 PROxy-Based Estimating Objects as proxies HistoricaldataStatisticalmethods Probemethod

J. Nawrocki, DPP, Wykład 8 Planning a software project Conceptual design Size estimates Resource estimates The schedule The product RequirementsRequirements Size database Productivity database Resources available Size, res., sched. data

J. Nawrocki, DPP, Wykład 8 Probe method Conceptual design Calculate projected and modified LOC Estimate program size Calculate prediction interval Identify objects Number of Object Relative Reuse methods type size categories Identify objects Number of Object Relative Reuse methods type size categories

J. Nawrocki, DPP, Wykład 8 Probe method 1. Prepare a conceptual design (objects and methods + their function)

J. Nawrocki, DPP, Wykład 8 Probe method 2. For each object assign its type. Skyscraper Church Garage Logic Logic I/O I/O Text Text Calculation Calculation Data Data Set-up Set-up

J. Nawrocki, DPP, Wykład 8 Probe method 3. For each object assign one of size ranges. Very big Big Medium Small Very small

J. Nawrocki, DPP, Wykład 8 Probe method 4. Knowing: programming language object type size ranges the number of methods estimate, using historical data, size of each object.

J. Nawrocki, DPP, Wykład 8 Probe method 5. Determine initial program estimated size, X, adding the values received in the previous step = = 5

J. Nawrocki, DPP, Wykład 8 Probe method 6. Apply linear regression to get estimated program size Y: Y =  1 X +  0 5 means 10 5 means 10

J. Nawrocki, DPP, Wykład 8 Probe method  x i y i - n x avg y avg  x i y i - n x avg y avg  x i 2 - n x avg 2  x i 2 - n x avg 2 1 = 1 = 1 = 1 =  0 = y avg -  1 x avg  0 = y avg -  1 x avg

J. Nawrocki, DPP, Wykład 8 Probe method 7. Using the t distribution and standard deviation compute the prediction interval for a given percentage. For 100% the For 100% the interval is [0; +  ]

J. Nawrocki, DPP, Wykład 8 Probe method 7a. Calculate the standard deviation, , of your historical data around the regression line. 1  2 = (y i -  0 -  1 x i ) 2 n-2 n-2  i=1n

J. Nawrocki, DPP, Wykład 8 Probe method 7b. To find the two-sided value of t for the probability q, look in a table of the t distribution under p(  )= (1+q)/2 and n-2 degree of freedom.

J. Nawrocki, DPP, Wykład 8 The t distribution

J. Nawrocki, DPP, Wykład 8 Probe method (X - x avg ) 2  (x i - x avg ) n +1  Range = t    7c. Compute the range as follows: Initial estimate obtained in Step 5

J. Nawrocki, DPP, Wykład 8 Plan of the lecture IntroductionIntroduction Probe methodProbe method ExampleExample Effort estimationEffort estimation

J. Nawrocki, DPP, Wykład 8 Example Program to be modified MatrixMatrixLinearsystemLinearsystemLinkedlistLinkedlist Data entry Base program

J. Nawrocki, DPP, Wykład 8 Example Program to be modified MatrixMatrixLinearsystemLinearsystemLinkedlist1Linkedlist1 Data entry Base program Linkedlist2Linkedlist2

J. Nawrocki, DPP, Wykład 8 Example Assignment of numbers to fuzzy values

J. Nawrocki, DPP, Wykład 8 Example Base program LOC modified (M) LOC modified (M) New objects Type Methods Size Total LOC Matrix Data 13 Medium 115 Matrix Data 13 Medium 115 Linear sys. Calc. 8 Large 197 Linear sys. Calc. 8 Large 197 Linked list 1 Data 3 Large 49 Linked list 1 Data 3 Large 49 Total new & modified (X)     Estimated new & modified (Y)

J. Nawrocki, DPP, Wykład 8 Example Estimated new & modified (Y) Prediction percent % p = (1 + percent)/ Number of programs in historical DB (n) Std deviation  from regression line Degrees of freedom (n-2) t (8, 0.9)  (1 + 1/ ) Prediction range Upper interval (Y + range) Lower interval (Y - range)

J. Nawrocki, DPP, Wykład 8 Plan of the lecture IntroductionIntroduction The Probe methodThe Probe method ExampleExample Effort estimationEffort estimation

J. Nawrocki, DPP, Wykład 8 Effort estimation begin.. end Programs written so far Historical data It should take... a man month to finish the project

J. Nawrocki, DPP, Wykład 8 Effort estimation begin.. end Estimatedsize Actualtime Historical data

J. Nawrocki, DPP, Wykład 8 Effort estimation begin.. end Estimatedsize Actualtime Historical data r 2  0.5

J. Nawrocki, DPP, Wykład 8 Effort estimation Estimated size Actual time 1.  0,  1 2. Effort =  1 * Estimated_size +  n +1  3. Range = t    r 2  Effort min = Effort - Range

J. Nawrocki, DPP, Wykład 8 Summary Size estimation is a basis for effort estimation and planning The Probe method: Historical data are needed. Statistical methods are used. Programmer obtains not only the estimate but also a prediction interval.

J. Nawrocki, DPP, Wykład 8 Further readings W. Humphrey, A Discipline for Software Engineering, Addison- Wesley, Reading, 1995, Chapter 5.

J. Nawrocki, DPP, Wykład 8 Quality assessment 1. What is your general impression ? (1 - 6) 2. Was it too slow or too fast ? 3. Did you learn something important to you ? 4. What to improve and how ?