Agile Project Management

80
Agile Project Management You, yes you, please write at least one Question, Concern or Topic of Interest and place it on the wall chart. 1 To answer today

description

Agile Project Management explained and examined from several angles. Agile Software Development delivers better results when it is managed in an agile way.

Transcript of Agile Project Management

Page 1: Agile Project Management

1Agile Project Management

You, yes you,

please write at least one

Question, Concern or Topic of Interest

and place it on the wall chart.

To answer today

Page 2: Agile Project Management

Agile Project Management

Andrew RuslingAgile Coach2014@andrewrusling

Page 3: Agile Project Management

3Administration

• Fire escape

• Toilets

• Breaks – A couple of very short breaks (no checking work e-mails)

• Lunch

• Slides >>>

Page 4: Agile Project Management

4Contents

1. The agile Manifesto

2. Declaration of Interdependence

3. Project Manager Role

4. Achieving the agile value proposition

5. Dependencies

6. Reporting on an agile project

Page 5: Agile Project Management

5Competencies to be gained

By the end of this session, I am hopeful that you will be able to:

1. Describe how the agile manifesto relates to project management

2. Summarise the agile value proposition

3. List several elements in agile that help to deliver the agile value proposition

4. Describe the Declaration of Interdependence (DOI)

5. Summarise how the DOI helps to deliver the agile value proposition

6. Contrast the difference between the PM role in traditional vs agile methodologies

7. Describe who is responsible for Project Management in Scrum

8. Summarise how the PM role changes in agile as Scale is introduced

9. Summarise the Disciplined Knowledge Acquisition approach

10. Prioritise a backlog by both value and risk

Page 6: Agile Project Management

6Competencies to be gained, continued

By the end of this session, I am hopeful that you will be able to:

11. Contrast the Traditional and Agile Iron Triangles

12. List several communication channels used in agile projects

13. Summarise the relationship between agility and dependencies

14. List several agile approaches for managing dependencies

15. Summarise queuing theory

16. List several approaches in queuing theory that benefit agile projects

17. Summarise the relationship between utilisation and throughput

18. List several traditional sources that are not useful for agile projects

19. List several sources that are useful and effective for agile reporting

Page 7: Agile Project Management

7

The agile Manifesto

Page 8: Agile Project Management

agile Manifesto value statement

Process and toolsIndividuals and

interactionsover

Following a planResponding to

changeover

Comprehensive documentation

Working software over

Contract negotiationCustomer

collaborationover

Full Manifesto: http://agilemanifesto.org/

Page 9: Agile Project Management

9Agile manifesto

• How does PM relate to this value statement?

• What is the impact of common sense?

Process and toolsIndividuals and

interactionsover

Page 10: Agile Project Management

10Agile manifesto

• How does PM relate to this value statement?

• Why do we put so much effort into Requirements, etc?

Comprehensive documentation

Working software over

Page 11: Agile Project Management

11Agile Manifesto

• How does PM relate to this value statement?

• Why is contract negotiation slow?

Contract negotiationCustomer

collaborationover

Page 12: Agile Project Management

12Agile Manifesto

• How does PM relate to this value statement?

• What are the basic questions management always ask?

Following a planResponding to

changeover

Page 13: Agile Project Management

13Agile manifesto – principles 1 to 6

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Page 14: Agile Project Management

14Agile manifesto – principles 7 to 12

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.

Page 15: Agile Project Management

15

Declaration of Interdependence

Page 16: Agile Project Management

16Completing the Declaration of Interdependence

1. Tear off the actions from the bottom of the page

2. Match the actions up to the outcomes

3. We will discuss the results

Page 17: Agile Project Management

17Declaration of Interdependence

Agile and adaptive approaches for linking people, projects and value

We are a community of project leaders that are highly successful at delivering results. To achieve these results:

• We increase return on investment by making continuous flow of value our focus.

• We deliver reliable results by engaging customers in frequent interactions and shared ownership.

• We expect uncertainty and manage for it through iterations, anticipation, and adaptation.

• We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference.

• We boost performance through group accountability for results and shared responsibility for team effectiveness.

• We improve effectiveness and reliability through situationally specific strategies, processes and practices.

Page 18: Agile Project Management

18Interdependence

Team members are interdependent

Page 19: Agile Project Management

19Interdependence

Customers

Team

Stakeholders

Are all interdependent, if we want to succeed

Page 20: Agile Project Management

20

Project Manager Role

Page 21: Agile Project Management

21Project Management in agile

It is not explicitly mentioned

Page 22: Agile Project Management

22Project Management in Scrum

Project Management

Responsibilities

Team

Product Owner

Scrum Master

Project Manager

Page 23: Agile Project Management

23Responsibilities in agile - exercise

Aim: allocate responsibilities to roles in an agile environment

Step 1: Shuffle responsibilities cards and distribute amongst yourselves

Step 2: In silence, place your cards under the role that is primarily responsible.

Step 3: In silence, move your teams cards if you disagree.

Step 4: Discuss all placements as a group

Team Servant LeaderProduct Owner Project Manager

Page 24: Agile Project Management

24Project Manager working in Agile

Shift of focus, Command & Control to Servant Leadership:

• Push responsibility down• Establish clear expectations and boundaries

• Ask, don’t tell

• Inspire and support• Set clear elevating goals

• Early involvement in key decisions

• Resolve impediments as a priority

• Visual progress • Long & medium term goals

• In very public places

• Very transparent

Page 25: Agile Project Management

25Project Manager working in Agile

Still involves:

• Stakeholder Management

• Reporting, especially upwards

• Budget control

Page 26: Agile Project Management

26Focus changes with Scale

1-3 Teams

•Servant Leader for team(s)•Inspire & support team(s)•Stakeholder management•Report team & project status•Resolve cross team issues

4+ Teams•Align team goals•Inspire & support servant leaders•Stakeholder management•Report project status•Assist resolving cross team issues

Page 27: Agile Project Management

27Three agile teams, an example (no PM)

Team Team

Product Owner

Scrum Master

Team

Scrum Master Scrum Master

Page 28: Agile Project Management

28Three agile teams, an example (with APM)

Team Team

Product Owner

Team

AgileProject

Manager

Page 29: Agile Project Management

29Lots of teams, an example

Head Product Owner

AgileProject

Manager

Team

SM

Team

Team

SM

TeamTeam

SM

Team

Team

SM

TeamTeam

SM

Team

PO PO

Page 30: Agile Project Management

30

Achieving the

agile Value Proposition

Page 31: Agile Project Management

31Agile value propositionB

usin

ess

Val

ueR

isk

Ada

ptab

ility

Vis

ibili

ty

Time

Time

Time

Time

Page 32: Agile Project Management

32Reducing risk early

• Working Software

• Retrospectives

• Short Cycles

• Disciplined Knowledge Acquisition

Ris

k

Time

Page 33: Agile Project Management

33Delivering Working Software reduces risk

Find issues early via:

• Testing, especially these types of tests• Integration & System

• User & Acceptance

• Performance

• Scalability

• Business review of working software

• Deployment (aka the last mile)

Page 34: Agile Project Management

34Retrospectives

Regular Retrospectives uncover several types of risks early:

• Project

• Team / People

• Technology

• Tools

Page 35: Agile Project Management

35Short Cycles / Iterations / Sprints

They enforce

• Fast delivery of Working Software

• Frequent Retrospectives

• Frequent Re-Planning and Adaptation

Hence find and address issues early.

Page 36: Agile Project Management

36Disciplined Knowledge Acquisition

Time

Project Spend

Business Value

Knowledge,Risk Reduction

Value

ROI / when to stop

Story

Spike

Page 37: Agile Project Management

37‘Holiday Planner’ Backlog Prioritisation - Exercise

https://www.flickr.com/photos/navaneethkn/

https://www.flickr.com/photos/quinet/ https://www.flickr.com/photos/photographerglen

https://www.flickr.com/photos/lendog64/

Page 38: Agile Project Management

38Delivering business value early

• Working Software

• Agile Iron Triangle

• Disciplined Knowledge Acquisition

• Effective User Stories

• Daily business involvement

Bus

ines

s V

alue

Time

Page 39: Agile Project Management

39Delivering Working Software

• Requirements documents are not value

• Design documents and model are not value

• Architecture is not value

• Code is not value

• Tested code is not value

• Working Software is value

Page 40: Agile Project Management

Traditional Iron Triangle

Effort Schedule

Scope

Constraints

Page 41: Agile Project Management

Agile Iron Triangle

Value (Releasable Features, Usability)

(aka Extrinsic quality)

Aspects(Reliable, Adaptable Product)

(aka Intrinsic quality)

Constraints(Scope, Effort, Schedule)

Page 42: Agile Project Management

42Disciplined Knowledge Acquisition

Time

Project Spend

Business Value

Knowledge,Risk Reduction

Value

ROI / when to stop

Story

Spike

Page 43: Agile Project Management

43Effective User Stories

INVEST• Independent• Negotiable• Valuable• Estimatable• Small• Testable

Page 44: Agile Project Management

44Maintain high visibility

• Working Software

• Daily business involvement

• Effective communication

Vis

ibili

ty

Time

Page 45: Agile Project Management

Delivering Working Software, shows real status

• We do the Hard stuff first

• Can look worse then ‘Traditional’, e.g.

Page 46: Agile Project Management

46Expected Team to PM communications

Agile Project Manager

Team(s)

• Expected & Actual Velocity• Team Risks & Issues• Cross team Dependencies• Cross team Risks & Issues• Resources to acquire

• Medium & Long term goals• Expectations of teams/project• Project Status• Project Risks & Issues• Resourcing status

Page 47: Agile Project Management

47Communication Channels - Exercise

Accuracy & Effectiveness

?

Cost to project

Page 48: Agile Project Management

48Maintaining good adaptability

• Technical Practices

• Definition of Done

• Manage Technical Debt

Ada

ptab

ility

Time

Page 49: Agile Project Management

49Technical Practices

• Version Control

• Coding Standards

• Peer Reviews of code, tests, documents, etc.

• Pair Programming

• Simple Design, Just in-time Design

• Evolutionary Architecture

• Continuous Design/UX

• Test Driven Development

• Automated Acceptance Testing

• Continuous Integration, Continuous Deployment

• Continuous Delivery

Page 50: Agile Project Management

50Definitions of Done

• Prevents the build up on undone work

• Can be multi level, i.e.• User Story DOD

• Feature DOD

• Release DOD

Page 51: Agile Project Management

51Managing Technical Debt

• Stop digging!

• Have a publicly stated management plan

• Identify any existing or new debt

• Make conscious decisions

Page 52: Agile Project Management

52DOI mapped to Agile Value Proposition

DOI Statement Helps to deliver

We increase return on investment by making continuous flow of value our focus

We deliver reliable results by engaging customers in frequent interactions and shared ownership

We expect uncertainty and manage for it through iterations, anticipation, and adaptation

Page 53: Agile Project Management

53DOI mapped to Agile Value Proposition

DOI Statement Helps to deliver

We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference

We boost performance through group accountability for results and shared responsibility for team effectiveness

We improve effectiveness and reliability through situationally specific strategies, processes and practices.

Page 54: Agile Project Management

54

Dependencies

Page 55: Agile Project Management

55Dependencies kill agility

Dependencies

Agility

• Why is this the case?• What can we do about it?

Page 56: Agile Project Management

56More teams, potentially more dependencies

3 Teams3 relationships that may have dependencies

5 Teams10 relationships that may have dependencies

Page 57: Agile Project Management

57Minimising inter team dependencies

• Should be a focus of “Management”, including APM.

• Should be a focus on Product Owner(s)

• Avoid Component Teams • i.e. GUI team, Middleware team, etc.

• Structure Teams by decoupled business areas• i.e. Customer Acquisition, Payments, Single Player, Tournaments, etc.

Page 58: Agile Project Management

58Managing Dependencies

• It is minimisation, not avoidance, some will occur.

• Set expectations that teams should manage their own dependencies.

• Approaches that can help:• Decouple software and work to interfaces

• Scrum of Scrums

• Release / multi team planning boards

Page 59: Agile Project Management

59Scrum of Scrums

1 or 2 relevant* team members from each team, attend the S.O.S.

The relevance of any attendee changes, with the work of the team and their dependencies on other teams.

Scrum of Scrums

Daily Scrums

Page 60: Agile Project Management

60Release Planning Board

www.journey-to-better.com provided with permission

Page 61: Agile Project Management

61

Reporting

on an agile project

Page 62: Agile Project Management

62Same high level questions

1. When will the project be complete?

2. What will the project deliver?

3. Is the budget on track?

4. Do we have enough of the right resources?

5. What can we do to help the project succeed?• i.e. What risks & issues exist, will resolving them help us?

Page 63: Agile Project Management

63Completely different direct questions

When will the project be complete?

• When will Bob finish the code for the Widget?

• Mr Architect is the XYZ task dependent on the ABC task?

• Can we cancel Sally’s holidays to get her to finish the Design?

What will the project deliver?

• Has the requirements specification been reviewed and signed off?

• Will the Forgot your password, make you answer all of your secret questions or just a couple of them?

Page 64: Agile Project Management

64Different sources for answers

• Sprint Review

• Team task board

• Sprint burn charts

• Project burn charts

• Feature charts

• User story map

Page 65: Agile Project Management

65Reporting - Team task board

Team task boards provide lots of information:

• Sprint progress

• Impediments (issues holding up the team)

• Bottlenecks

• Over/under utilisation of people

• Risks

• Dependencies

Page 66: Agile Project Management

66Reporting - Sprint burn charts

• Burn down in hours • Aim: track progress of combined sprint backlog

• Burn up to limit in hours • Aim: help to balance delivery of value to progressing background tasks

• Burn down in story points • Aim: track progress of delivering value (User Stories to done)

• Can highlight process issues

Page 67: Agile Project Management

67Reporting - Project burn charts

• Burn down in story points• Aim: Track predicted end date

• Shows difference between To Do and Done as a single line

• Burn up in story points, with scope line• Aim: Track predicted end date

• Shows Done and To Do as separate lines

• Hence showing the impact of Velocity (Done) changes and To Do changes separately.

Page 68: Agile Project Management

68Project Burn up – predicting completion date

Story Points

Scope

Done

Time

Page 69: Agile Project Management

69Reporting - Feature charts

• Show progress on Feature by Feature basis

• Combined with a Project Burn Up provide a great overview of a project

Feature A Feature B

Feature C Feature D

Feature A Feature B

Feature C Feature D

Page 70: Agile Project Management

70Reporting - User Story Map

Can track progress, by marking off User Story completion

Page 71: Agile Project Management

71

Summary

Page 72: Agile Project Management

72Summary

Page 73: Agile Project Management

73Summary

Page 74: Agile Project Management

74Summary

Page 75: Agile Project Management

75Competencies

I am hopeful that you now can:

1. Describe how the agile manifesto relates to project management

2. Summarise the agile value proposition

3. List several elements in agile that help to deliver the agile value proposition

4. Describe the Declaration of Interdependence (DOI)

5. Summarise how the DOI helps to deliver the agile value proposition

6. Contrast the difference between the PM role in traditional vs agile methodologies

7. Describe who is responsible for Project Management in Scrum

8. Summarise how the PM role changes in agile as Scale is introduced

9. Summarise the Disciplined Knowledge Acquisition approach

10. Prioritise a backlog by both value and risk

Page 76: Agile Project Management

76Competencies, continued

I am hopeful that you now can:

11. Contrast the Traditional and Agile Iron Triangles

12. List several communication channels used in agile projects

13. Summarise the relationship between agility and dependencies

14. List several agile approaches for managing dependencies

15. Summarise queuing theory

16. List several approaches in queuing theory that benefit agile projects

17. Summarise the relationship between utilisation and throughput

18. List several traditional sources that are not useful for agile projects

19. List several sources that are useful and effective for agile reporting

Page 77: Agile Project Management

77Time to share

1 - 3 Key Learning Points

One person at a time

Your answers don’t have to be unique

https://www.flickr.com/photos/kellysue/

Page 78: Agile Project Management

78

Reference Material

Page 79: Agile Project Management

79Books of interest