32
Being The Manager Of An Agile Team Jeffrey Palermo CTO, Headspring Systems www.headspringsystems.com www.JeffreyPalermo.com [email protected]

Presentation 7-7-09: Managing an Agile Team

Embed Size (px)

Citation preview

Page 1: Presentation 7-7-09: Managing an Agile Team

Being The Manager Of An Agile Team

Jeffrey PalermoCTO, Headspring Systems

www.headspringsystems.com

www.JeffreyPalermo.com

[email protected]

Page 2: Presentation 7-7-09: Managing an Agile Team

Quarterly Giveaway

• Drop a business card

• Win iPod Touch

Page 3: Presentation 7-7-09: Managing an Agile Team

About me

• CTO, Headspring Systems

• Agilist since 2004, XPer since 2005, pragmatist always

• U.S. Army Veteran (Iraq, 2003-2004)

• Founding member, AgileAustin board of directors

• Microsoft MVP (Solution Architecture)

• Director, Austin .Net User Group

• INETA speakers bureau

• www.partywithpalermo.com

• Headspring’s Agile Boot Camp• Certified ScrumMaster

Page 4: Presentation 7-7-09: Managing an Agile Team
Page 5: Presentation 7-7-09: Managing an Agile Team

Agenda

• What does a manager do?

• How to deal with risk

• Predicting issues

• Forecasting

• Hiring and firing

• No broken windows (defects)

• Feedback and metrics

• Managing scope & setting expectations

• Questions up-front!

Page 6: Presentation 7-7-09: Managing an Agile Team

Overview

Extreme Programming has lots to say about the

customer, agile management, agile planning, agile

software engineering and testing. Scrum has a lot

to say about the process of iterating and organizing

priority. Lean has a lot to say about increasing

production and production quality as well as

eliminating waste.

Lots of clients, even with agile training, remain with

questions about where management fits in within an

agile culture. This session is a blend of project

management and people management.

Agile: agilemanifesto.org

Page 7: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

Why is it different managing software

projects?

Why can’t we manage it the same as

managing a Taco Bell?

Page 8: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

The best architectures, requirements,

and designs emerge from self-

organizing teams.- agilemanifesto.org

Page 9: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

• Self-organizing does not mean self-directing.

– What is the size of the team?

– What do individuals on the team get paid?

– What type of office space will we pay for?

– What project will make us money?

• Teams will always self-organize, even in the absence

of management.

– How will we run the project?

– How will we involve stakeholders?

• http://tech.groups.yahoo.com/group

/agilemanagement/

Page 10: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

• Chain of command is important

• Authority must be delegated

Page 11: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

Everything that is right or wrong with an

organization is managements’ fault

The “free love” hippie culture doesn’t jive with stockholder

expectations.

Page 12: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

• How organized is the strategic roadmap?

• How are requirements coming?

• Is delivery on track?

• What about quality control? Defects?

• How is feedback getting absorbed?

• Are operations going smoothly?

• The right people

• The right things

• The right time

(what IF these things are challenged?)

Page 13: Presentation 7-7-09: Managing an Agile Team

What does a manager do?

Page 14: Presentation 7-7-09: Managing an Agile Team

How to deal with risk

Risk: What might go wrong

What does the Agile Manifesto say about dealing

with risk?

Agile risk management:

“Responding to change over following a plan”

-agilemanifesto.org

Page 15: Presentation 7-7-09: Managing an Agile Team

Predicting issues

As a manager, you cannot predict every issue

that may arise.

Individuals and interactions over processes and

tools-agilemanifesto.org

Page 16: Presentation 7-7-09: Managing an Agile Team

Forecasting

Which metric do you use?

1. Hours

2. Ideal hours

3. Function points

4. Story points tied to complexity

5. Story points tied to size

6. Man-days

Page 17: Presentation 7-7-09: Managing an Agile Team

Forecasting

Units tied to time/effort are a moving

target.• Similar tasks get easier over time

• Programmer skills increase

• Libraries/componentization

Page 18: Presentation 7-7-09: Managing an Agile Team

Forecasting

Choose a unit that remains the same in

the presence of improvement

• Function Point

• Story Point

Page 19: Presentation 7-7-09: Managing an Agile Team

Hiring and firing

“I don’t know exactly what you do, but I know

that problems arise when you are on

vacation.”

Page 20: Presentation 7-7-09: Managing an Agile Team

Hiring and firing

“I don’t know exactly what you do, but I know

that problems go away when you are on

vacation.”

Page 21: Presentation 7-7-09: Managing an Agile Team

Hiring and firing

• Topgrading

• It’s not a mystery who the weakest team

members are

• Staff ROI & opportunity cost

Page 22: Presentation 7-7-09: Managing an Agile Team

Hiring and firing

Senior/junior mix

• Highly repeatable processes

– More junior staff

• Novel or emerging processes

– More senior staff

Page 23: Presentation 7-7-09: Managing an Agile Team

No broken windows (defects)

• No bug database – The Art of Agile Development

• Stop the presses quality control

• QA as a strategy, not a job role

• Automation

• Define “DONE”

• Working software is the primary measure of progress.

• Agile processes promote sustainable development.

The sponsors, developers, and users should be able

to maintain a constant pace indefinitely.

• Continuous attention to technical excellence

and good design enhances agility.-agilemanifesto.org

Page 24: Presentation 7-7-09: Managing an Agile Team

No broken windows (defects)

Quality

• Strategic direction

• Requirements definition

• Architectural specifications

• Construction quality

• Functional test automation

• Operations monitoring & deployments

Page 25: Presentation 7-7-09: Managing an Agile Team

Feedback and metrics

As a manager, what are your metrics?

As a manager, what type of concrete feedback

do you receive?

Why is it difficult to measure management?

Page 26: Presentation 7-7-09: Managing an Agile Team

Feedback and metrics

Management is knowledge work.

Slack by Tom DeMarco

• Efficient secretaries

• Fully utilized highway

Page 27: Presentation 7-7-09: Managing an Agile Team

Feedback and metrics

Software delivery metrics

• Consistent # of points delivered per unit of time (not a

programmer metric)

• Number of defects released (ZERO)

Whatever you measure will improve

- keep all the plates spinning

- modify metrics as you see weaknesses

Page 28: Presentation 7-7-09: Managing an Agile Team

Managing scope & setting expectations

source:dsdm.org

Page 29: Presentation 7-7-09: Managing an Agile Team

Managing scope & setting expectations

Customer collaboration over contract negotiation

Simplicity--the art of maximizing the amount

of work not done--is essential.

At regular intervals, the team reflects on how

to become more effective, then tunes and adjusts

its behavior accordingly.-agilemanifesto.org

Page 30: Presentation 7-7-09: Managing an Agile Team

Managing scope & setting expectations

• Small team

– Whiteboard, throw-away documentation

– Verbal agreements

• Large team

– Written, persistent documentation

– Documented agreements

– Meeting minutes

– Requirements traceability

– Story specifications

Page 31: Presentation 7-7-09: Managing an Agile Team

Wrap-up

• Management is an enabler of an effective

software organization

• Beware of the pendulum swing

• Leverage Agile values and principles to make

your organization more effective

• Don’t implement “Agile”.

Implement effectiveness

Page 32: Presentation 7-7-09: Managing an Agile Team

Questions?

• Jeffrey Palermo• CTO, Headspring Systems

[email protected]

• www.headspringsystems.com

• www.JeffreyPalermo.com