An Evolving View of
Project Management
Anthony Jones
Thanks for inviting me
Thanks for inviting me
Scope
• Discussion at level of “process models”
– Structured and agile methods of project
management (PM)

• Based on my o...
EFFECTIVE PROJECT MANAGEMENT
User

Developer
User

Developer

Client

Business
User

Developer

Client

Business
User

Developer

Client

Business

$
(solution price – costs) * effectiveness = PROFIT
User

Developer

Project
Management
Client

Business

$
(solution price – costs) * effectiveness = PROFIT
Effective project management
• Project management does not
provide value by itself
• Project management influences
the eff...
KEY POINTS
Manifesto for Agile software development

We are uncovering better ways of developing
software by doing it and helping oth...
Manifesto for Agile software development
Individuals and interactions
over processes and tools
Project management methods...
Comprehensive packages?

Or flexible tools?
Key points
• Project management is people management
• Software development methods as tools
• Favour explicit pragmatic a...
BUILDING YOUR PROJECT
MANAGEMENT TOOLBOX
Which project management method?

Select project management tools based on
TEAM MATURITY
Team maturity
• Roy Osherove
– Teams have varying levels
of maturity

• Chaotic Stage
– (most teams)

• Mid-Life stage
• M...
Instructed team  SCRUM
• Newly formed, less experienced teams
• Needs support and control to be effective
• Hierarchical ...
Mature team  MIXED METHODS
• More experienced team, strong relationships
• Needs steering and coaching to be effective
• ...
Mature team  MIXED METHODS
Free team  NOTHING!
• Very experienced, highly trusted teams
• Needs culture and community to be effective
• No distincti...
The Valve handbook
for new employees
Free team  NOTHING!
• Fred George
– Programmer Anarchy
Programmer Anarchy
Agile best practices not used:
•
•
•
•
•

Stand ups
Unit tests
Story narratives
Acceptance tests
Retros...
Programmer Anarchy
Agile roles used:
•
•
•
•
•
•

Customer ✓
Project manager X
Business analyst X
Developer ✓
Quality assu...
Key points
• Project management is people management
• Software development methods as tools
• Favour explicit pragmatic a...
If there is time...

ESTIMATION AS AN
OPTIONAL TOOL
Estimation in project management
• Certain project management methods require
the developers to estimate the complexity of...
We don’t do this...

DEADLINES BASED ON ESTIMATES
Estimate or guess?
• Depends on availability of relevant knowledge
• Task = known work + unknown work
3 days

+ ? days

Er...
Estimate or guess?
• Unknown work
– Learning
– Problem solving
– Emergent complexity

• Can you really estimate these?
• F...
Estimate or guess?
• Depends on availability of relevant knowledge
• Task = known work + unknown work
+ around
3 days
2 da...
Estimate or guess?
• Unknown work
– Learning
– Problem solving
– Emergent complexity

• Can you really estimate these?
Estimate or guess?
• Unknown work
– Learning
– Problem solving
– Emergent complexity

• Can you really estimate these?
Rubik’s Cube
Four stages of competence

• You don’t know what you don’t know!
Estimate or guess?
• Padding is a common tactic
• Task = known work + unknown work
3 days

+ ? days

Erm...

Developer

Pr...
Estimate or guess?
• Padding is a common tactic
• Task = known work + unknown work
(3 days

+ around 2 days) * 3
Around
15...
Estimate or guess?

Around
15 days?
Developer

Project
Management

User
Estimate or guess?
$!?*&

Developer

Project
Management

Be careful when setting user expectations

User
More honest communication?

...

Ok.

Project
Management

User

Can we agree on releases based on dates or features,
but a...
We do estimate sometimes...

ESTIMATION AS A USEFUL TOOL
Not having an estimate

I don’t
know

Ok.

Developer

Project
Management

Not having an estimate is a useful sign of uncer...
Having different estimates

Around
8 days?

3 days

Developer

Developer

Having different estimates is another useful sig...
Estimates and even guesses
can be useful for prioritisation

Task A is
smaller than
Task B

Let’s do
Task A
first
Develope...
Key points
• Project management is people management
• Software development methods as tools
• Favour explicit pragmatic a...
THANKS FOR LISTENING
An evolving view of project management
Upcoming SlideShare
Loading in …5
×

An evolving view of project management

149 views
102 views

Published on

A lecture given to Aston University Computer Science students on 5th November 2013.

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
149
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

An evolving view of project management

  1. 1. An Evolving View of Project Management Anthony Jones
  2. 2. Thanks for inviting me
  3. 3. Thanks for inviting me
  4. 4. Scope • Discussion at level of “process models” – Structured and agile methods of project management (PM) • Based on my own experience and research
  5. 5. EFFECTIVE PROJECT MANAGEMENT
  6. 6. User Developer
  7. 7. User Developer Client Business
  8. 8. User Developer Client Business
  9. 9. User Developer Client Business $ (solution price – costs) * effectiveness = PROFIT
  10. 10. User Developer Project Management Client Business $ (solution price – costs) * effectiveness = PROFIT
  11. 11. Effective project management • Project management does not provide value by itself • Project management influences the effectiveness of an existing system to amplify success • Establishing and maintaining project management costs both Project Management time and money • Effective project management * effectiveness represents a good return on investment (ROI)
  12. 12. KEY POINTS
  13. 13. Manifesto for Agile software development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.
  14. 14. Manifesto for Agile software development Individuals and interactions over processes and tools
  15. 15. Project management methods... Comprehensive packages? Or flexible tools?
  16. 16. Key points • Project management is people management • Software development methods as tools • Favour explicit pragmatic application based on people, culture, context and goals
  17. 17. BUILDING YOUR PROJECT MANAGEMENT TOOLBOX
  18. 18. Which project management method? Select project management tools based on TEAM MATURITY
  19. 19. Team maturity • Roy Osherove – Teams have varying levels of maturity • Chaotic Stage – (most teams) • Mid-Life stage • Mature stage • I’m expanding Roy’s idea...
  20. 20. Instructed team  SCRUM • Newly formed, less experienced teams • Needs support and control to be effective • Hierarchical roles in “service model” – Product Owner, Scrum Master, Developers • Limited and supported decision making • Regular reviews
  21. 21. Mature team  MIXED METHODS • More experienced team, strong relationships • Needs steering and coaching to be effective • Peer roles based on suitability – Including leadership roles • Decisions primarily based on discussion, convincing others and reaching a consensus • Regular discussions
  22. 22. Mature team  MIXED METHODS
  23. 23. Free team  NOTHING! • Very experienced, highly trusted teams • Needs culture and community to be effective • No distinctive roles – Developers adopt roles according to suitability • Actions based on everyone doing what they feel is the right thing for the business
  24. 24. The Valve handbook for new employees
  25. 25. Free team  NOTHING! • Fred George – Programmer Anarchy
  26. 26. Programmer Anarchy Agile best practices not used: • • • • • Stand ups Unit tests Story narratives Acceptance tests Retrospectives • • • • • • Refactoring Estimates Patterns Iterations Continuous integration Mandatory pairing Copyright © 2011 by Forward Internet Group, Ltd 10
  27. 27. Programmer Anarchy Agile roles used: • • • • • • Customer ✓ Project manager X Business analyst X Developer ✓ Quality assurance / tester X Manager of programmers X Copyright © 2011 by Forward Internet Group, Ltd 10
  28. 28. Key points • Project management is people management • Software development methods as tools • Favour explicit pragmatic application based on people, culture, context and goals
  29. 29. If there is time... ESTIMATION AS AN OPTIONAL TOOL
  30. 30. Estimation in project management • Certain project management methods require the developers to estimate the complexity of a task or the time required to complete it • Estimates may be used to prioritise work, to establish deadlines and release dates • Is this an effective tool?
  31. 31. We don’t do this... DEADLINES BASED ON ESTIMATES
  32. 32. Estimate or guess? • Depends on availability of relevant knowledge • Task = known work + unknown work 3 days + ? days Erm... Developer Project Management
  33. 33. Estimate or guess? • Unknown work – Learning – Problem solving – Emergent complexity • Can you really estimate these? • For familiar tasks these may be constrained unknowns that may be given a rough estimate
  34. 34. Estimate or guess? • Depends on availability of relevant knowledge • Task = known work + unknown work + around 3 days 2 days Around 5 days Developer Project Management
  35. 35. Estimate or guess? • Unknown work – Learning – Problem solving – Emergent complexity • Can you really estimate these?
  36. 36. Estimate or guess? • Unknown work – Learning – Problem solving – Emergent complexity • Can you really estimate these?
  37. 37. Rubik’s Cube
  38. 38. Four stages of competence • You don’t know what you don’t know!
  39. 39. Estimate or guess? • Padding is a common tactic • Task = known work + unknown work 3 days + ? days Erm... Developer Project Management
  40. 40. Estimate or guess? • Padding is a common tactic • Task = known work + unknown work (3 days + around 2 days) * 3 Around 15 days? Developer Project Management
  41. 41. Estimate or guess? Around 15 days? Developer Project Management User
  42. 42. Estimate or guess? $!?*& Developer Project Management Be careful when setting user expectations User
  43. 43. More honest communication? ... Ok. Project Management User Can we agree on releases based on dates or features, but acknowledge that doing both is much harder?
  44. 44. We do estimate sometimes... ESTIMATION AS A USEFUL TOOL
  45. 45. Not having an estimate I don’t know Ok. Developer Project Management Not having an estimate is a useful sign of uncertainty, risk or training opportunities
  46. 46. Having different estimates Around 8 days? 3 days Developer Developer Having different estimates is another useful sign of uncertainty, risk or training opportunities
  47. 47. Estimates and even guesses can be useful for prioritisation Task A is smaller than Task B Let’s do Task A first Developer Project Management
  48. 48. Key points • Project management is people management • Software development methods as tools • Favour explicit pragmatic application based on people, culture, context and goals
  49. 49. THANKS FOR LISTENING

×