![Page 1: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/1.jpg)
Personal Design and Development Software Process
PD2SP
“The unexamined life is not worth living.”
Plato
![Page 2: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/2.jpg)
Cynics’ Guide to Personnel Management
• Those who work get to keep their jobs.
• Raises become effective when you do.
• It’s better for you to tell them than for them to find out.
![Page 3: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/3.jpg)
How do you meet expectations and still have a life?
![Page 4: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/4.jpg)
What It Means to be Effective
• As software professionals you must know your own performance.
• You should measure, track, and analyze your work.
• You should learn from your performance variations.
• You should incorporate these lessons in your personal practices.
![Page 5: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/5.jpg)
Introduction
• Measure and analyze your personal design and development software process (PD2SP).
• Use process data to improve your personal performance.
• Understand variation in your work patterns.
• Plan and estimate software development tasks.
![Page 6: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/6.jpg)
What Metrics Do You Need?
• Time: – Class, Prep for class, Recording time, Design
time, Planning Time, Programming, Debugging.
– Provide both planned and actual times.
• Code: Quality and Quantity.
• Results: Demonstrated Correct, Complete Code.
![Page 7: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/7.jpg)
Cost of PD2DP
• The time required to learn and use it.
• The emotional cost of maintaining the needed discipline.
• The potential risk to your ego.
![Page 8: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/8.jpg)
Benefits of PD2DP
• The insight you gain into your talents and abilities.
• The stimulation of an almost unlimited stream of ideas.
• The framework provides for personal improvement.
• The degree of control you gain over your time and work.
• The feeling of pride and accomplishment.
• An improved basis for effective teamwork.
• The conviction to do the job the way you know you should.
![Page 9: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/9.jpg)
By the end of the semester:
• You will understand some methods are effective for you.
• You will do better work.
• You will have long-term improvement goals.
![Page 10: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/10.jpg)
PD2SP Principles
• The quality of a software system is governed by the quality of its worst components.
• The quality of a software component is governed by the individual who developed it.
• You are governed by your– knowledge – discipline– commitment
![Page 11: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/11.jpg)
What do you know about your software development skills?
• Can you– Design, estimate, and plan your work? – Meet your commitments?– Resist unreasonable commitment pressures?
• Do you– Understand your ability?– Have an improvement plan?
![Page 12: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/12.jpg)
A PD2SP Also Provides
• A basis for developing and practicing industrial-strength personal disciplines.
• A discipline that shows you how to improve your personal process.
• The data to continually improve the productivity, quality, and predictability of your work.
![Page 13: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/13.jpg)
What is a PD2SP?
• A personal process for developing software
• defined steps
• forms
• standards
• A measurement and analyses framework to help you characterize your process
• A defined procedure to help you to improve your performance
![Page 14: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/14.jpg)
SEI Capability Maturity Matrix
• Broadly agreed-upon definition of how a software organization matures and improves.
• Based on manufacturing process improvement and “best practices” from software engineering
• Some dramatic successes.
![Page 15: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/15.jpg)
Each key process area has five common features:
• Goals to be achieved;
• Ability to perform;
• Activities performed;
• Measurement and analysis;
• Verification
![Page 16: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/16.jpg)
PD2SP Overview
![Page 17: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/17.jpg)
PD2SP Overview
• Since this is so late in your education, can’t do it all in one course.
• Focus on how to make your more efficient in time
• We’ll just do the first step.
![Page 18: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/18.jpg)
PD2SP0
Identify your current software development process including:– Planning - Produce a plan to do the work.– Development - The actual software
development.– Postmortem - Comparison of actual
performance with your plan.
![Page 19: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/19.jpg)
The measurements will be
• Based on your current process.
• Measure where you spend the bulk of your time. We will use minutes as the base granularity for data to be meaningful.
• Defect Recording. A defect recording log is used to hold data on each defect found and corrected.
![Page 20: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/20.jpg)
Don’t Panic
You will NOT be graded on how long it takes or how many defects
you find
![Page 21: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/21.jpg)
ThePD2SP0 Summary
• Your original estimate of the LOC you expect to develop.
• The actual LOC you developed.
• Your original estimate of the time required for each phase.
• The actual time required for each phase.
• The total number and the percent of defects injected in each phase.
• The total number and the percent of defects removed in each phase
![Page 22: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/22.jpg)
Task Planning
• Task planning involves estimating the development time and completion data for each project task.
• It also provides a basis for tracking schedule progress.
![Page 23: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/23.jpg)
Process
• Time and Schedule Management
• Requirements Management
• Design and Work Breakdown Structure
• Development
• Reporting
• Earned Value Estimation
![Page 24: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/24.jpg)
Time and Schedule Management
• Enter initial project data in the project plan summary (PDSP0).
• Complete Initial Time Schedule Template (SPT).
• Begin Time Recording (TRT).
![Page 25: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/25.jpg)
Requirements Planning
• Complete the Requirements Work Template (RWT) in the Excel workbook.– Constraints are logical statements– Criteria are performance statements
![Page 26: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/26.jpg)
Design and Work Breakdown
• Use developed requirements document.
• Complete a Work Breakdown Structure
• Estimate the required development time.
• Complete the task plan (WBS).
![Page 27: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/27.jpg)
Reporting
• Complete the project plan summary with actual time, defect, and size data.
• Complete the PIP (PD2SP0).
• Coding Standard
• Size measurement
• Process improvement Proposal
![Page 28: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/28.jpg)
Rules of the Game
• Please keep accurate track of time.
• YOU WILL NOT BE GRADED ON YOUR TIME OR QUALITY from this report!! Quality measurement comes from testing
• Keep your programs simple. You will learn as much from small programs as from large ones.
• Keep your reports and standards simple and short.
• Do not hesitate to copy or build on the PD2SP materials.
![Page 29: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/29.jpg)
Rules of the Game II
• Do it right the first time. If you are not sure, find out.
• Software is not a solo business so you do not have to work alone.
• You must, however, produce your own estimates, designs, and code.
• You may have others review your work and you may change it as a result. You should note this help in your process report, include the review time you and your associates spend, and log the defects found.
![Page 30: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/30.jpg)
Grading
• Your process report must be:– complete – legible – in the specified order
• Your process data must be:– accurate– precise– self-consistent
![Page 31: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/31.jpg)
The PD2SP0 Process
• A simple defined personal process
• Use your current design and development methods.
• Gather data on your work:
• time spent by phase
• defects found in compile and test
![Page 32: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/32.jpg)
Prepare a summary report.
• A project plan summary form
• A process script
• A time recording log
• A defect reporting log
• A defect type standard
![Page 33: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/33.jpg)
More Process
• Planning - estimate development time
• Development - develop the product using your current methods
• Postmortem - complete the project plan summary, with the time spent and defects found and injected in each phase.
• Design - design the program, using your current design methods
![Page 34: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/34.jpg)
The End of the Beginning
![Page 35: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/35.jpg)
Defect type standard
• Date defect was found.
• Defect number.
• Defect type (documentation, syntax, assignment, interface, etc.).
• Phase where defect was injected.
• Phase where defect was removed.
• Time it took to fix the defect.
• If injected while fixing another defect, that defect’s number.
• A succinct description of the defect. The project plan summary holds the estimated and actual project data.
![Page 36: Personal Design and Development Software Process PD 2 SP](https://reader036.vdocuments.site/reader036/viewer/2022062517/56813af0550346895da3663e/html5/thumbnails/36.jpg)
The defect types
1. Documentation
2. Syntax
3. Assignment
4. Interface
5. Checking
6. Data
7. Function
8. Environment