copyright © 1994 carnegie mellon university csci511personal software process - personal...

33
Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture #15 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Sponsored by the U.S. Department of Defense

Upload: felix-ryan

Post on 17-Jan-2016

222 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 1

Disciplined Software Engineering Lecture #15

Software Engineering Institute

Carnegie Mellon University

Pittsburgh, PA 15213

Sponsored by the U.S. Department of Defense

Page 2: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 2

Lecture # 15 Overview The personal implications of the PSP

The costs and benefits of the PSP

Introducing and using the PSP in an organization

The responsible professional

What do you want from software engineering?

Page 3: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 3

Personal PSP Implications - 1 If you seek personal excellence, the PSP can help you to attain it.

By defining and measuring your work, you gain the knowledge to improve your personal performance.

The question is, “do you want to improve?”

Page 4: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 4

Personal PSP Implications - 2 To consistently improve, you must critically examine your own performance.

To do this, you need a process framework and performance measurements.

The PSP provides a suitable framework and set of measurements.

Page 5: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 5

Personal PSP Implications - 3 As a software professional you need to

•make commitments you can meet•deal with unreasonable commitment pressures

•review status and plans with customers, managers, and coworkers

The PSP will help you to perform professionally even when your customers, managers, or coworkers do not.

Page 6: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 6

Personal PSP Implications - 4 The PSP involves change and change involves risk.•your methods may have sufficed in the past•no one else may use disciplined personal practices

But the problems of the future will be more challenging than those of today.•will your current methods be adequate?•do you know a better way?

Page 7: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 7

Personal PSP Implications - 5 In using the PSP, you may face resistance.

•do you have a supportive environment?•does your management agree with your interest in personal improvement?

Your PSP efforts will be most rewarding when your management and your teammates share your interests and objectives.

Page 8: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 8

The Costs of the PSP - 1 The time investment

•process development takes about 1 to 2 hours per form and script

•process updates will be needed at least every 3 months

•data entry and analysis will take about an hour for each PSP-sized project

Page 9: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 9

The Costs of the PSP - 2 The emotional investment

•the PSP takes a lot of work•there will be occasional frustrations

You will clearly see your own limitations•if you can’t face your personal limitations, you should not use the PSP

•and perhaps you should reconsider your decision to be a software engineer

Page 10: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 10

The Benefits of the PSP - 1 Insight

•you will better understand your strengths and weaknesses

•you will be better able to maximize your assets

•the PSP will help you to objectively deal with your weaknesses

Page 11: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 11

The Benefits of the PSP - 2 Ideas

•by defining your process, you assert control over it

•you can then act like a process owner•your critical facilities will be in gear•you will unconsciously observe your working self

•you will see many ways to improve your process and your performance

Page 12: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 12

The Benefits of the PSP - 3 Improvement framework

•a defined process provides a language for thinking about your work

•you can better see how the process parts relate

•you can better focus on priority areas for improvement

Page 13: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 13

The Benefits of the PSP - 4 Personal control

•you will have a planning framework•you will have the data on which to base your plans

•your plans will be more reliable•you will be better able to track your status•you will be better able to manage your work

Page 14: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 14

The Benefits of the PSP - 5 Accomplishments and personal bests

•you will recognize your personal bests•you will better understand how to repeat and to surpass them

•you will see where and how you have improved

•you will have your own personal improvement goals

•you will have the satisfaction that comes with knowing you are doing superior work

Page 15: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 15

The Benefits of the PSP - 6 When your team’s processes are defined

•you can better back up and support each other

•you will more precisely relate to each other•you will no longer need to protect yourself from your peers’ failures

•they won’t need to protect against your failures

Teams perform better when they can concentrate on the job and not worry about being defensive.

Page 16: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 16

Using the PSP in an Organization

Introducing the PSP into an organization involves 2 situations.•the solo PSP performer - you are the only person using the PSP in your organization

•the lone PSP team - your team uses the PSP but they are the only team in the organization to do so

You will also need management support for PSP introduction.

Page 17: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 17

The Solo PSP Performer - 1 It is hard to maintain personal discipline without the support of peers and managers.

It is easy to get discouraged by a slow rate of personal progress.

Your peers may kid you for wasting your time with the PSP.

Page 18: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 18

The Solo PSP Performer - 2 If you are not confident that the PSP helps you, it will be hard to withstand such criticism. •normal statistical fluctuations will seem like major disasters

•instead of learning from your mistakes you may get defensive about them

Until you have data to support the benefits of the PSP, you would be wise to say little about it.

Page 19: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 19

The Lone PSP Team - 1 When your team has been trained in the PSP, you will have a powerful base of support.

You will be able to•review each others’ work•share process improvement ideas and results•celebrate successes •get support when you need it

Page 20: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 20

The Lone PSP Team - 2 Be cautious about describing your results. Other groups may•critique your results•argue that they already do better work

They are probably comparing their occasional best results with your normal performance.

Without consistent data, such comparisons are meaningless and should be avoided.

Page 21: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 21

The Lone PSP Team - 3 If your results are superior, others may feel defensive.

Be careful not to seem critical of other peoples’ work•do not imply that your results apply to them•suggest they try the PSP for themselves

Concentrate on how the PSP has helped you to improve

Page 22: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 22

Organizational PSP Support - 1 To be most effective, you need organizational support.•education and training•database and analysis•process definition •tools

To get these, you will need management’s help.

Page 23: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 23

Organizational PSP Support - 2 You may have trouble getting management support unless•they see your work as a prototype for the organization

•you have data to demonstrate the benefits of the PSP for your team

Seek to interest others in exploring the PSP•other projects•SQA and the SEPG

Page 24: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 24

Organizational PSP Support - 3 Support champions on other teams who wish to try the PSP.

Seek the support of the process, quality assurance, and training groups.

When other groups are interested in the PSP, management will be more willing to support you.

Page 25: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 25

Introducing the PSP - 1 In getting management support, show enough of your own and other groups’ data to convince them that•there are important benefits•the costs are controllable

When they understand the potential value of the PSP, they will more likely provide support for long enough to produce measurable results.

Page 26: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 26

Introducing the PSP - 2 In introducing the PSP, it is essential that

•it be introduced with a formal course•all professionals voluntarily participate•the engineers be given time to do the work•the managers provide weekly support and encouragement to their engineers to complete the PSP exercises

•the engineers’ personal data be respected as their private property

Page 27: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 27

Introducing the PSP - 3 Where possible, do the PSP training by project team.

Attempt to build clusters of PSP-trained teams that can reinforce and support each other.

In selecting the initial projects, try to pick ones that are not in perpetual crisis.

Page 28: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 28

Introducing the PSP - 4 After PSP training, adapt the PSP to each project by•measuring and planning the current process•adjusting PSP2.1 or PSP3 to the project needs•testing each process change before general introduction

•planning for continuous process improvement

Page 29: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 29

Introducing the PSP - 5 Don’t try to introduce the PSP without support.

Time is required to take the PSP course and to do the exercises.

An experienced instructor is required.

Course support will require at least 3/4 time from one engineer.

Page 30: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 30

The Responsible Professional As a responsible professional, you need to

•find and learn new methods•use these methods in your work•recognize your strengths and weaknesses•identify areas for improvement•practice, practice, practice•publicize the methods you find helpful•learn from history

This will assure your continuing improvement.

Page 31: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 31

Coaching And Improvement A coach can help you to improve your personal performance by•motivating superior performance•demanding personal commitment•insisting on a dedication to excellence•supporting and guiding your development

Seek coaching support from your peers and your managers

Page 32: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 32

What do You Want from Software Engineering?

What are your personal objectives?

Surprisingly often we achieve our objectives in ways we did not expect, so keep an open mind and keep looking.

Since we all reach the same end, we should concentrate on the route

If you can occasionally achieve excellence, it could be well worth the trip.

Page 33: Copyright © 1994 Carnegie Mellon University CSCI511Personal Software Process - Personal Implications of PxP 1 Disciplined Software Engineering Lecture

Copyright © 1994 Carnegie Mellon University CSCI511 Personal Software Process - Personal Implications of PxP 33

Messages to Remember from Lecture 15

1. The PSP is designed to help you.

2. Use it to improve your performance and to

help you to act professionally in difficult

situations.

3. Emphasize what the PSP has done for you

and urge others to find out for themselves

what it will do for them.