1 software project management user needs lecture dr tracy hall

22
1 Software Project Management User Needs Lecture Dr Tracy Hall

Upload: derek-edwards

Post on 29-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

1

Software Project Management

User Needs Lecture

Dr Tracy Hall

2

Learning Outcomes

To recognise the role of the customer in a project

To understand a range of ways of relating to the customer that will help both sides achieve success.

3

Software & other types of projects

So

ftwa

re

pro

ject

s a

re

diff

ere

nt

So

ftwa

re

pro

ject

s a

re

sim

ilar

to o

ther

s

Software projects Other types of project

(a) Software products are less tangible than others• can be harder to specify…• …monitor…• …and sign-off on

(b) Software has a history of overspends & disappointment(c) The software community is not very accessible to outsiders(d) Software development is still quite a young discipline

(a) All projects need the same basic management skills• good planning• sound identification and management of risk• teams of good people, well resourced and managed intelligently

(b) All engineering communities are closed, to some extent(c) Most major projects today involve some level of software(d) Formal methods are increasingly common over the spectrum

Let’s focuson these

4

How do these set expectations?

Cadle & Yeates have some good ideas – “Client Management Issues” Ch 16 (3rd Ed) “Managing Stakeholders” Ch 18 (4th Ed).

Your sales team?

Marketing & publicity?Marketing & publicity?

The competition?

First impressions?

5

Moreover…

The customer’s

ideas often

change

Why?

Cadle & Yeates p 298

Expectations e.g. you promise a Ferrari & deliver a Punto

NB Why did Skoda beat Mercedes in a customer satisfaction survey?http://www.whatcar.co.uk/car-reviews/search?dimensionIds=368&dimensionIds=316

Sales phase Development phase In use

Exp

ecta

tion

Typical expectation curve (in my experience)

Ideal?

6

Two critical features

Sales phase Development phase In use

Exp

ecta

tion

Customer’s perception

satisfied

dissatisfiedPoor

satisfied

dissatisfiedGood

Big surprises are generally a bad idea

Is this possible?

7

Two critical features

Sales phase Development phase In use

Exp

ecta

tion

What can you do to control the shape of this curve?

8

Why do customers want to change things?…

Cadle & Yeates p 298

Expectations

LearningSuddenly, the

customer sees more

opportunities

Inte

rnal

Priorities change

Ext

erna

lLegislative or market forces

change

9

So…What the customer wants

flexi

bilit

y

What the Proj. Man. wants fixed requirements

Arrives on time & within

budget…

May never arrive

… but the customer may

hate it!McConnell case study 10-1

10

How can we manage this?

Process• Good processes provide a framework

within which to manage changes…• …and ways of managing the changes

themselves Relationships

• Get to know and trust your customer• Build for, and invest in, the future

11

Let’s start with process:Choose the process to fit the need

flexi

bilit

y

fixed requirements

Well understood req

uirements

‘Linear approach’ e.g. Waterfall

(Cadle & Yeates section 6.2)

Som

e flexibility desira

ble

‘Iterative approach’ e.g. Spiral (Cadle & Yeates section 6.5)

Requirem

ents unclear

‘Interactive approach’ e.g. RAD

(Cadle & Yeates section 6.10)

???????

Extreme Programming (Cadle

& Yeates section 6.13)

Push yourself a little further than you think you need to

12

Change Management:Some formalism may help

Requestfor change

Agree thechange

Implementthe change

DOCUMENTATIONRecordRecord

thetherequestrequest

RecordRecord agreementagreement

& reasons& reasons

Write downWrite down & circulate& circulate

new plannew plan

OptionsOptions

No, you can’tNo, you can’thave ithave it

Yes, you canYes, you canhave ithave it

Let’s put it intoLet’s put it intothe next releasethe next release

Yes, but it willYes, but it willcost youcost you

This implies you have a future together

13

Let’s think about relationships

Who is the customer?• The end user (buys your code from Game)?• A contractor engaging you for a large programme?• Someone in another part of the company?• Try to get a single person to be your customer.

Why should you engage with the customer? (McConnell section 10.1)• Often a critical success factor• Productivity• Reduced rework• Lower Risk

14

Some expectations

PMPM

SeniorManagement

ProfitSuccessHarmony

RewardSupport

Customer

Be decent

Low painGet job doneValue-for-money

Team

RewardFun work

Get the job done

So let’s focus on this

15

Benefits of building a relationship

BidBid

•Better grasp of real needs•Better concept of customer’s constraints•Clearer view of future plans•Firmer idea of business context

•Capture real requirements•Good ideas of how it will be used•Better prioritizing of ideas

RequirementsRequirementscapturecapture

DevelopmentDevelopment

•Warning of surprises•More room for flexbility•LESS FRICTION

•LESS FRICTION•Better management of bugs and bug fixes•More business

OperationalOperational

16

How do I manage the customer relationship?

How do youmanage any other relationship?

Be open

Spend time

Be honest & fair

Don’t be afraid to apologise when things

go wrong

Let’s give this some thought

17

An overheard conversation…How can I help you, Madam?

You changed the battery in my car key and now it doesn’t work.

Just leave the car with us, and we’ll investigate…

I don’t have the car with me – I’m in our other car. It was working before you changed it and now it doesn’t work

Changing the battery means reprogramming, we’ll have to charge £100. Why not let us check it out?

Our other key works – this one doesn’t… unless you hold it 2cm from the lock. I’ve just paid £100 for a new battery in this – please fix it.

Sorry, we can’t do anything without checking it out

(Customer eventually walks out in disgust)

What is the technical problem?

What is the customer management problem?

18

Let’s think through a couple of scenarios

You are about half way through a £20M, 2 year, programme to provide an interactive website and data base plus a call centre software suite for an international bank. With 9 months to go, you are asked to add a new raft of security measures. Your team estimates that these will cost at least £2.5M that has not been budgeted and add 5 months to the duration. How might you proceed?

You have had a torrid time as project manager with a demanding customer and an inexperienced team that has taken a long time to settle. You hear on the grapevine that your customer has a new, much larger, project in mind, but is definitely not planning to go with your company. What steps might you take to change the situation?

19

Sometimes IS puts the user at the centreW

ell u

nd

ersto

od

req

uire

me

nts

So

me

flexib

ility de

sirab

le

Re

qu

irem

en

ts un

clea

r

??

??

??

?

‘Linear approach’ e.g. Waterfall

(Cadle & Yeates section 6.2)

‘Iterative approach’ e.g. Spiral (Cadle & Yeates section 6.5)

‘Interactive approach’ e.g. RAD

(Cadle & Yeates section 6.10)

Extreme Programming (Cadle

& Yeates section 6.13)

20

Sometimes IS puts the user at the centreW

ell u

nd

ersto

od

req

uire

me

nts

‘Linear approach’ e.g. Waterfall

(Cadle & Yeates section 6.2)Feasibility

Require-ments

Design

Coding

Test

Users

http://ocw.mit.edu/NR/rdonlyres/Aeronautics-and-Astronautics/16-355JFall-2005/3EA9949A-7CB1-4AEC-9EB9-33BC8BAA4126/0/cnotes2.pdf

21

Sometimes IS puts the user at the centreW

ell u

nd

ersto

od

req

uire

me

nts

So

me

flexib

ility de

sirab

le

‘Linear approach’ e.g. Waterfall

(Cadle & Yeates section 6.2)

‘Iterative approach’ e.g. Spiral (Cadle & Yeates section 6.5)

Feasibility

Require-ments

Design

Coding

Test

cost

review

2. Identify & resolve risks

1. Determine objectives

3. Development & test

3. Plan the next iteration

Prototypes

User needs

http://courses.ischool.berkeley.edu/i290-1/f08/lectures/ISSD-20080827.pdf

22

Sometimes IS puts the user at the centreW

ell u

nd

ersto

od

req

uire

me

nts

So

me

flexib

ility de

sirab

le

Re

qu

irem

en

ts un

clea

r

??

??

??

?

‘Linear approach’ e.g. Waterfall

(Cadle & Yeates section 6.2)

‘Iterative approach’ e.g. Spiral (Cadle & Yeates section 6.5)

‘Interactive approach’ e.g. RAD

(Cadle & Yeates section 6.10)

Extreme Programming (Cadle

& Yeates section 6.13)

Feasibility

Require-ments

Design

Coding

Test

cost

review

2. Identify & resolve risks

1. Determine objectives

3. Development & test

3. Plan the next iteration

How about these?