Getting Agile Right. Understanding the Elephant. Agile Development, Project Management, and the PMI-ACP Certification

P Certification AC IPM e th d an , nt me ge na Ma ct oje Pr , nt me lop ve Agile De Getting Agile Right Understanding the Elephant Andrew Stellman an...
Author: Anissa Gilmore
2 downloads 0 Views 17MB Size
P Certification AC IPM e th d an , nt me ge na Ma ct oje Pr , nt me lop ve Agile De

Getting Agile Right Understanding the Elephant Andrew Stellman and Jennifer Greene

http://www.stellman-greene.com

Jennifer Greene and Andrew Stellman have been building software projects and writing about project management together since they first met in 1998. Their first book, “Applied Software Project Management,” was published by O’Reilly in 2005 and received widespread praise from both working project managers and academic researchers. Their second book, Head First PMP, which is now in its second edition, has helped tens of thousands of project managers pass the PMP exam. Andrew and Jennifer have given talks at companies and conferences around the world.

2005

2007 (1st ed) 2009 (2nd ed)

2008 (1st ed) 2010 (2nd ed)

2010

m a te a r fo s m le b ro p g in us ca is ss ce A wate rf a ll p ro If you’d told me what you really wanted from the beginning, I’d have built something completely different! Now I’ve got to go back to the drawing board, and the code is going to suck.

What do you mean it’s going to take another six weeks just to get back to where we were last week? What you been working on the whole time?

Project Manager Programmer

You keep building the wrong thing! Can you just take a little time to understand our business?

Business User

The team’s getting real tired of this. Keep making them miserable and they’ll jump ship.

Team Lead

Changes happen to every project, but the way we used to run our projects seemed almost designed so that changes cause conflicts.

A g ile to th e re sc ue ! (R igh t?) Unit testing, refactoring, continuous integration, and automated builds are great! They’ll definitely help me build better code!

Between our task boards, project velocity, and burndown charts we’ll have way better control of the project.

Scrum Master Developer/Architect

Doing Release Planning with User Stories really lets me explain to the team exactly what the users need.

Daily Standups and Retrospectives will bring the team together. It’ll be great once we’re all talking about the project.

Team Lead Product Owner Everybody wants something different from the project, and they each see a few practices that do something specific to help them.

ce n re fe if d a s e k a m s ct je ro p to e il g Adding a We’re definitely building better code than before, but we had to make some technical sacrifices to meet the schedule.

I’ve got some control over the way the project is run. It’s not perfect, but it’s better.

Scrum Master Developer/Architect

Great. Now I’m expected to work for the team full time. I already have a job - Can’t they meet me halfway on this?

I guess we’re delivering more often, and that’s good. But this really doesn’t feel all that different from before.

Team Lead

Product Owner It was definitely worth “going agile,” but the team didn’t get the “astonishing results” they expected. Is this really all there is to agile?

A lot of teams had this experience!

83% Of respondents to the VersionOne State of Agile Development Survey 2010 felt that projects were the same or faster than non agile projects.

Leading Causes of Failed Agile Projects Lack of Experience using Agile Methods Company Philosophy at odds with Agile Values Don’t know External Pressure To Follow Waterfal Practices Lack of Cultural Transition

87% Of respondents to the VersionOne State of Agile Development Survey 2010 felt that Agile Methodologies either improved or significantly improved their ability to manage changing priorities

Lack of Management Support Unwillingness of the Team New To Agile/Haven’t Completed Project Yet Insufficient Training

3.5

Teams do see benefit in time to ability to respond to change, butcompletion and projects fail it’s often because when Agile philosophical differences betweenof cultural and Waterfall and Agile methodologies.

7

10.5

14

* Source: VersionOne “State of Agile Development” Survey 2010

“See! I was right all along!” When someone sees individual agile practices working, he recognizes that they take what works for him already and make it better by removing extraneous formalities. Now he’s sold on agile, which is good! A team that already gets software out the door finds it easy to embrace the individual agile practices, because they provide improvements to practices the team already does. But nobody’s really changed the way the build software. They’ve just made marginal improvements. In fact, each person is more convinced than ever that he was right all along, because he just thinks agile got everyone on board with his original ideas, and that’s what made a difference. When the team brings fractured perspective to agile, they get mixed but better-than-not-doing-it results.

Why does a fractured perspective lead to just “better-than-not-doing-it” results? If I’m a project manager, then I naturally ask myself, “What does a project manager do in agile?” I’ll try to do that job the best that I can. But if I only care about doing that job, I can overplan, and guide the team away from changes that might alter the plan. It’s not just project managers. Programmers can goldplate, product owners can overreact to minor customer requests, testers can overautomate, architects can overengineer, team leads can micromanage. Just being really good at our jobs isn’t enough to become hyperproductive. We need to find a way to all work together - in a way that lets us respond to changes.

Is there a way to “un-fracture” the team’s perspective?

e h t e e s s m a te s lp e h o t s e if Th e A g ile M a n p u r p o s e b e h in d e ach p rac t ic e e on n o y r e v e g in t t e g t u o b a This is ates m m a e t ir e h t o t g in lk a t the team es iv t c e sp r e p ir e h t g in d n a and underst g on n si u c o f r e p y h st ju f o d instea t. one aspect of the projec

By keeping everyone end goals instead of focused on the intermediate proble stumbling on keep the project m ms, the team an oving forward.

The Agile Manifesto Individuals and interactions

Customer collaboration over

over processes and tools

contract negotiation

Working software over

Responding to change over

comprehensive documentation

following a plan

It’s easy for a to lose track hyper-focused team actually need. of what the users the users’ pers This makes sure that genuinely repre pectives and ideas are sented.

...because working the wrong plan causes the team to build the wrong software.

That’s what “principles over practices” means Satisfy the customer through continuous delivery Welcome changing requirements Deliver working software frequently Business and developers work together Motivate people with environment, support, and trust Face-to-face conversation is most effective

Measure progress through working software Use a process to maintain a constant pace Technical excellence and good design Simplicity is essential Self-organizing teams deliver the best designs The team regularly reflects and adjust

e v ti ec sp er p t n re fe if d a om fr ct Ever yo ne se e s th e p ro je It’s technical Design and Code.

It’s work that needs to be done.

Scrum Master Developer/Architect

It’s something valuable that solves a Real business need.

It’s a goal that the team needs to meet by working together.

Team Lead Product Owner And they're all right... but none of them can see the whole picture alone -- and that's why the adoption somehow feels incomplete.

e v ti ec sp er p t n re fe if d a om fr ct Ever yo ne se e s th e p ro je It’s a Rope!

It’s A WALL.

Scrum Master Developer/Architect

It’s A Pipe. It’s a Pillar.

Team Lead Product Owner “All of you are right. The reason every one of you is telling it differently is because each one of you touched the different part of the elephant. So, actually the elephant has all the features you mentioned." http://en.wikipedia.org/wiki/Blind_men_and_an_elephant

Agile is made up of many practices but it’s more than just the sum of those practices

User s tories Retrospe

d

ona

I

O R

n atio

b Test-first k s Ta Cumulative Flow Diagrams

m c com i t o Osm

g

IRR

Epic

I Reteration plan lea P DSDM ning se roce Atern pla ss ta ilor nn ing Pe ing rs

defe c

ped

Esca

Ri Sp sk-b ik as ed e Pro gre ssiv Co ela lla b e o bo rat rat ion ion

Daily stand-ups

g

liance

rn

Bu s Val ue graph stre a map m ping

in

Comp

V

NP

XP

el

m

Tea

od m

flict n n o C utio ce l o s re spa

ip

ersh

lead

Burn up Charts Crystal Clear

le

ant

to

gence

Definition of done

gi A

of ation nce r a l c De de depen inter

ally Minim able et Mark e r Featu

ts

Iter

ve ue va rific nt lid at at ion ion development an

Relative st ranking or Spike A Th em y p g c tives Iterative oi e R i pr ela le n C Cycle timeing Development ha io tiv rte ts ri e M rin m lphi Kanban boards ti e g ir ram D za a Ris d a n P og a ti k b Responding to change ni Pr on adj Wide Ba ust ck ed Emotio f b a Burn down y lo t i ckl n g Veloc k n o s intelli al es i w g R o Charts d

Adaptive leadership

v Ser

Product r oadmap

y

r Sto

in ol

s d r oa

pFsr a m eq

to

Re

Scrum

e

Ti

ing factor

tion a c i n u

Planning Poker

le gi

g n i x o b e m

te

Working Software

tion

im

am TDD Negotiation at r f e rm r ous g u r in t n o n o i C i f iz lf n ato I W Se gan n i io t a tegr d in F Or ams a M r M

Co-loca

A

ion

Improvement

Individuals and s interaction

s

Test-driven develo pment

lt

WI

ed prioritizati on

ea

s t i m es P li

Relative sizing FD D Continuous

Customer-valu

Id

Affinity Estimatin g

Greater than the sum of the parts Daily standup Self-organizing teams

The team understood some relationships between practices right away... Task board organizes user stories

Task boards

Release planning gives a big picture for task board User stories

Release planning Incremental design

Burndown chart and project velocity help check release planning goals

...but there’s so much more at work Self-organizing teams manage their work with task boards

Project velocity

Daily standup help teams self-organize Refactoring

Test-driven development Burndown chart

User stories and the task board drive incremental design Incremental design allows self-organizing teams to build robust architecture Test-driven development and refactoring enforce and expand incremental design Project velocity is impacted by TDD and refactoring work ... and more ...

Methodologies help you get it all in place at once Teams that pick and choose from the agile practices select only those practices that are similar to the ones they already have in place. They end up with an incrementally better version of what they have today. Adopting a whole methodolgy all at once fills in the missing links, and puts the team on the path to astonishing results.

LEAN

XP Scrum

Al l ag ile me th odolo gie s are ba se d on th e same pr inc iples, an d rel y on ever yo ne on th e te am to wo rk to ge th er an d co lle ct ive ly ow n ever y as pe ct of th e proje ct.

"These roles, each one complete and strong in itself, do not stand alone. It takes all three, operating well together, to give teams a chance at creating astonishing results and unleashing agile as a competitive advantage weapon for their company." -- Lyssa Adkins, Coaching Agile Teams

If you adopt XP incrementally, every new practice will disrupt the equilibrium you'll be fighting to achieve. You'll actually extend the period of chaos and uncertainty, making the transition all the more difficult. In my experience, teams that adopt XP incrementally make substantial improvements, but it's the teams that adopt it all at once that really excel." James Shore & Shane Warden, The Art of Agile Development "People are guided by their value systems, so creating an agile team depends on aligning with a value system-- which is why implementing APM will be nearly impossible for some teams and organizations. APM is value driven because people are are value driven . A team can employ agile practices but it won't achieve the potential benefit of agile development without embracing agile values and principles" Jim Highsmith Agile Project Management

The PMI-ACP certification gives us a framework for learning You and your team have a better chance of succeeding if you follow an existing methodology. But diving into agile from the top down can be overwhelming for a team. Even if you choose the right methodology, there are many different ways to approach it. If you’re exposed to schools of thought, you can assess for yourself the strengths and weaknesses of each methodology and approach. PMI-ACP helps you understand the entire field and the many different views of agile, so you can choose the right methodology and approach for your team. Employers know that someone with a PMI-ACP credential has a broad-based understanding of the agile principles, and how they apply to real-world projects.

How to apply for the PMI-ACP certification PMI Agile Certification Eligibility Requirements General Project Management Experience 2,000 hours working on project teams. These hours must be earned within the last 5 years. Agile Project Management Experience 1,500 hours working on agile project teams. These hours are in addition to the 2,000 hours required in general project management experience. These hours must be earned within the last 2 years. Agile Project Management Training 21 contact hours; hours must be earned in agile project management topics

PMI-ACP Certification Fees Computer based testing Computer based testing

member

$435 / €365

nonmember

$495 / €415

Paper based testing

member

$385 / €320

Paper based testing

nonmember

$445 / €370 er (PMI-ACP)SM Handbook

source: PMI Agile Certified Practition

source: http://www.pmi.org/en/Certification/New-PMI-Agile-Certification.as px

You can download the examination handbook, get more information, and apply for the exam at the PMI website: http://www.pmi.org/agile

Questions?

Keep an eye out for our next book, a guide to agile development, project management, and the PMI-ACP certification. It’s due out in 3Q 2012 from O’Reilly! Contact us at our website: http://www.stellman-greene.com