Transcript
Page 1: Personal Design and Development Software Process PD 2 SP

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

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

How do you meet expectations and still have a life?

Page 4: Personal Design and Development Software Process PD 2 SP

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

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

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

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

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

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

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

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

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

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

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

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

PD2SP Overview

Page 17: Personal Design and Development Software Process PD 2 SP

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

The End of the Beginning

Page 35: Personal Design and Development Software Process PD 2 SP

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

The defect types

1. Documentation

2. Syntax

3. Assignment

4. Interface

5. Checking

6. Data

7. Function

8. Environment


Top Related