Introduction to the Personal Software Process
170 likes | 391 Vues
Introduction to the Personal Software Process. Watts Humphrey Addison Wesley Longman c1997. Humphrey on PSP. “a guide to using disciplined personal practices to do superior software engineering”
Introduction to the Personal Software Process
E N D
Presentation Transcript
Introduction to the Personal Software Process Watts Humphrey Addison Wesley Longman c1997
Humphrey on PSP • “a guide to using disciplined personal practices to do superior software engineering” • “The PSP will show you how to plan and track your work and how to consistently produce high-quality software.”
Software Development • Do you know how many lines of code you write per day? (or function points? or modules?) • Do you know how many errors you make? • Watts Humphrey knows how many LOC/day he writes and how many errors/KLOC he makes!
Measurement • Could a person train for running an olympic event without timing their performance? • Would an archer train by shooting at a target but not seeing if the arrows hit the target?
Time Log Entries • Date • Start - time in hours:minutes • Stop - time in hours:minutes • Interrupt - time of each interruption in minutes • Delta - start - stop - interrupt • Activity - category
Engineering Notebook • Record all activities related to class • Post on web page – update semi-weekly
Class Discussion • What can we learn from a programming time log? • What are different uses of any knowledge gained from a time log?
Possible Categories • Drawing and revising object model • Writing code • Compiling and correcting syntax errors • Testing code (no currently known errors) • Debugging logic errors (that is, there is an error and you are trying to locate and correct the error - note)
C2 time log • This is a time log that I kept while design a programming problem and producing a solution • My values
Class Discussion • Where my categories good? • What would have been better categories? • Any knowledge from this time log?
Process Improvement • 1. Measure • 2. Evaluate • 3. Modify • Repeat steps 1-3
Planning is essential • You can estimate the effort required for your next project • Accurate estimation comes only with practice. • Estimate the next and then keep log to evaluate and improve estimates
Personal Estimation • The past is the best estimate of the future • Find some size measure of the product • e.g. loc, number of classes, number of functions • determine your productivity based on size • estimate size of next task • calculate effort estimate
Group Discussion • How can we manage our time more effectively? • How can we manage our team members’ time more effectively? • How can we use PSP to improve our team members’ performance?
Class Discussion • What can we learn from a time log of our studying? • What categories would be good for studying?
L4aS17 time log • Keep a time log of your class work for the next week – 6/19 to 6/26 • Develop an extensive set of categories • Summary including pie charts and productivity • Turn in your log and an evaluation, summary on 6/27 (on and off)