36
Arin Sime [email protected] 434 996 5226 How to sell a traditional client on an Agile project plan Presented to AgileCville 7/16/2009

AgileCville: How to sell a traditional client on an Agile project plan

Embed Size (px)

DESCRIPTION

Presentation given to AgileCville on 7/16/2009, describing different strategies for convincing a traditional software development client to use an Agile project plan. Presented by Arin Sime, Senior Consultant to OpenSource Connections in Charlottesville Virginia.

Citation preview

Page 1: AgileCville:  How to sell a traditional client on an Agile project plan

Arin Sime [email protected] 434 996 5226

How to sell a traditional client on an Agile project plan

Presented to AgileCville 7/16/2009

Page 2: AgileCville:  How to sell a traditional client on an Agile project plan

• Why do we need to sell it?• Background/Bio• Defining a “traditional” environment• Survey on Selling Agile• Strategies for persuasion• The importance of continuing to sell

the process throughout the project

Outline

Page 3: AgileCville:  How to sell a traditional client on an Agile project plan

The Project Plan they are afraid of....

Page 4: AgileCville:  How to sell a traditional client on an Agile project plan

“Some kind of structure (or architecture) is imperative because decentralization without structure is chaos.”

- J.A. Zachman, 1987, “A framework for information systems architecture”

Page 5: AgileCville:  How to sell a traditional client on an Agile project plan

2

Page 6: AgileCville:  How to sell a traditional client on an Agile project plan

“The architect must convince the owner that the owner’s desires are understood well enough so that the owner will pay for the creative work to follow, and in effect, initiate the project.”

We need to convince our clients that we understand their desires, and that Agile can substitute for most, if not all, of the up front documentation

More from Zachman...

Page 7: AgileCville:  How to sell a traditional client on an Agile project plan

Senior Consultant, OpenSource Connections

Custom software development consulting for entrepreneurial, government, and military clients

A little about me...

Automating the Science To Enable the Art

Adjunct Instructor in a corporate software engineering program for Virginia Commonwealth University

Graduate student (M.S. in Management of I.T.) at the University of Virginia’s McIntire School of Commerce

Page 8: AgileCville:  How to sell a traditional client on an Agile project plan

Some of our clients....

Platforms and Languages

ASP .Net C C# Java

Linux MySQL Oracle PHP

Python Ruby Solaris SQL Server

Automating the Science To Enable the Art

Page 9: AgileCville:  How to sell a traditional client on an Agile project plan

Survey on

“Selling Agile”

Surveyed fellow students of MSMIT program and other colleagues for examples of how they have sold Agile or been sold on Agile.

http://www.tinyurl.com/SellingAgileSurvey/

Booz Allen HamiltonSAICCapitol OneInternational Monetary FundUS Air ForceAutoZoneQinetiQUS Department of JusticeFannie MaeFreddie MacAOLIBMManTechDepartment of Veterans AffairsUniversity of Virginia

Page 10: AgileCville:  How to sell a traditional client on an Agile project plan

“Agile seems to carry the connotation of 'code-like-hell' or just, 'work faster'.”

Survey Results....

comment from an IT consultant

“I am skeptical of any methods that that could be interpreted as ‘cutting corners’”

comment from a manager

Page 11: AgileCville:  How to sell a traditional client on an Agile project plan

“Plan Driven methods are generally considered the traditional way to develop software. Based on concepts drawn from the mainline engineering fields, these methods approach development in a

requirements/design/build paradigm with standard, well-defined processes that organizations improve continuously.”

What exactly is a traditional environment?

Page 12: AgileCville:  How to sell a traditional client on an Agile project plan

1. Trial by Sprint2. Case Studies of Success3. Client/Customer Testimonials4. Finding a champion in Key Stakeholders5. Using metrics of success6. Showing how Agile combats common IT project failures7. Examples of industry/government leaders using Agile8. Comparison to other methodologies9. Listen to their needs and address them10. Sneak it in11. Compromise

Strategies for Persuasion

Page 13: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“You need to show a success to get adoption.”comment from a program manager

Page 14: AgileCville:  How to sell a traditional client on an Agile project plan

“Trust me for two weeks. If you hate it, you can fire me.”

Dwight Gibbs, CTO at Legg Mason Capital Management, promising the Director of Research that if he didn’t see development team improvements after only one sprint, then they would abandon Agile.

Strategy #1: Trial by Sprint

Dwight Gibbs, Senior Vice President of Technology for INPUT, formerly the

CTO at Legg Mason CapitalManagement

“The sprint went well and we stayed with Scrum”

Page 15: AgileCville:  How to sell a traditional client on an Agile project plan

• Present case studies of Agile success from your own client history

• Example burndowns

• Stories of benefits to teams

• Highlight how the process caught risks early, and addressed them

• Use graphics

• Present industry examples of Agile success

Strategy #2: Case Studies in Success

Links to Agile Case Studies can be found at: http://www.notesfromatooluser.com/2008/11/scrum-case-studies.html

Page 16: AgileCville:  How to sell a traditional client on an Agile project plan

“certainly one of the most successful projects ever here”

Strategy #3: Client/Customer Testimonials

“Scrum helps me manage projects the way I wanted to anyways”

“Eliminated biases of what developers can do by letting them self-select”

“Complexity dictated we couldn’t know it all up front - we have to prototype.”

“Biggest gain from Scrum was just keeping the project going.”

“Got it done a lot better because team is well integrated. I didn’t have to plan who worked on what.”

Page 17: AgileCville:  How to sell a traditional client on an Agile project plan

Strategy #3: Client/Customer Testimonials

“I don’t have to lord over people, no siddling over people with a coffee cup like in Office Space.”

Page 18: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“I highlighted the benefits to the Project Manager: higher productivity and less team-management stuff since the team will take care of lots of team-management and updating (burn charts) instead of PM's managing those details.” comment from a business analyst

Page 19: AgileCville:  How to sell a traditional client on an Agile project plan

• Identify Stakeholder most in need

• Address their needs with Agile

• Enlist their support in adoption

• Helps to already have a relationship

Strategy #4: Finding a Champion in Key Stakeholders

Page 20: AgileCville:  How to sell a traditional client on an Agile project plan

“The development team applies Agile. I think it is useful to obtain metrics and organize the work. From a business perspective, I have not seen the benefit.”

Survey Results....

comment from a manager

Page 21: AgileCville:  How to sell a traditional client on an Agile project plan

• Show metrics in proposals and throughout your project.

• Show Burndowns over the course of the project

• Use test coverage/test success as a metric

• Velocity/Story points accomplished by your team

• Defects from issue tracking tools

• Shown here is an excerpt from a ThoughtWorks Project Manager's Status Report (as reported in Forrester Research Inc)

Strategy #5: Using Metrics of Success

http://www.forrester.com/Research/Document/0,7211,37380,00.html

Page 22: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“I created a presentation [showing] increased productivity, better risk management (through early detection), lower defect rates and enhanced team experience (which will translate to higher retention, less conflict management and more productive future projects).”

comment from a project lead

Page 23: AgileCville:  How to sell a traditional client on an Agile project plan

1. Poor estimation and scheduling

2. Ineffective stakeholder management

3. Insufficient risk management

4. Insufficient planning

5. Shortchanged quality assurance

6. Weak personnel and/or team issues

7. Insufficient project sponsorship

8. Poor requirements determination

9. Inattention to politics

10. Lack of user involvement

Strategy #6: Show how Agile combats common IT failures

Source: Prof. R. Ryan Nelson, University of Virginia. As published in MIS Quarterly Executive, “IT Project Management: Infamous Failures, Classic Mistakes, and Best Practices”, June 2007

1. Poor estimation and scheduling

2. Ineffective stakeholder management

3. Insufficient risk management

4. Insufficient planning

5. Shortchanged quality assurance

6. Weak personnel and/or team issues

7. Insufficient project sponsorship

8. Poor requirements determination

9. Inattention to politics

10. Lack of user involvement

1. Poor estimation and scheduling

2. Ineffective stakeholder management

3. Insufficient risk management

4. Insufficient planning

5. Shortchanged quality assurance

6. Weak personnel and/or team issues

7. Insufficient project sponsorship

8. Poor requirements determination

9. Inattention to politics

10. Lack of user involvement

Classic Mistakes that can also arguably be mitigated

by Agile and Scrum (my addition)

Classic Mistakes that can be mitigated by Agile, as

identified in article

Top 10 Classic Mistakes

Page 24: AgileCville:  How to sell a traditional client on an Agile project plan

“Clients, especially the military, are wary of catch phrases and sometimes unwilling to change their habits.”

Survey Results....

comment from an IT consultant

Page 25: AgileCville:  How to sell a traditional client on an Agile project plan

Strategy #7: Examples of industry/government leaders using Agile

Jill SingerDeputy Chief Information Officer

Central Intelligence Agency

former VP for Project Management, SAIC

• CIA IT Projects follow this spiral lifecycle:

• Understand the mission• Establish the vision• Develop the architecture• Define plans• Resource plans• Execute plans• Measure progress

• But within that lifecycle, they use Scrum, primarily 4 week sprints

Page 26: AgileCville:  How to sell a traditional client on an Agile project plan

• Benefits the CIA has seen with Scrum:

• Regular and tangible deliverables• Customer buy-in• Trying out prototypes• Users enjoy being able to add features

and change priorities with each iteration• If a project is late, users don’t mind as

much

• Challenges the CIA has run into:

• “What is Version 1.0?”

Strategy #7: Examples of industry/government leaders using Agile

Jill SingerDeputy Chief Information Officer

Central Intelligence Agency

former VP for Project Management, SAIC

Page 27: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“I gave an overview of the Scrum process and highlighted the ease of transition since iterative/incremental development has been in practice for a long time (in other forms such as a spiral approach)” comment from a business analyst

Page 28: AgileCville:  How to sell a traditional client on an Agile project plan

Strategy #8: Comparison to other methodologies

From “Scrum in 5 Minutes”, by Softhouse. Available at: www.softhouse.se/Uploades/Scrum_eng_webb.pdf

Page 29: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“I am always skeptical of anything that promises it is the 'only' or the 'best' [methodology].”

comment from a development manager

Page 30: AgileCville:  How to sell a traditional client on an Agile project plan

1. Spend a lot of time listening. Ask people what challenges they are facing in their projects.

2. Make mental notes of each challenge.

3. Turn those challenges around and use them to segue into something you wanted to talk about anyways. (ie, how Agile will solve those problems)

4. Customers appreciate that you are offering positive solutions to their problems instead of just pushing your ideas without listening to them first.

Strategy #9: Listen to their needs and address them

The Politics of Persuasion

Page 31: AgileCville:  How to sell a traditional client on an Agile project plan

Survey Results....

“Agile practices usually find their way into the Software Development Lifecycle even if they are not officially blessed.”

comment from an IT specialist

“I make sure I utilize agile practices where ever I can - I just don't use the agile terminology.”

comment from a technology program manager

Page 32: AgileCville:  How to sell a traditional client on an Agile project plan

Strategy #10: Sneak it in

• Implement it piece by piece, without saying what you are doing.

• Start with iterations and demos, daily stand ups. PM’s love those.

• Then move to developer driven practices like sprint planning, XP, CI.

• Risky strategy, but can be used to overcome fear of the word Agile

Page 33: AgileCville:  How to sell a traditional client on an Agile project plan

“The methodology that has worked in my experience has been to incrementally introduce Agile ... Start using a limited set of the practices and gradually start bringing in more.”

Survey Results....

comment from a senior consultant

Page 34: AgileCville:  How to sell a traditional client on an Agile project plan

• Some clients will require checkboxes of all documentation they always ask everyone for. (I’m looking at you, Federal Government)

• Try to shift when those documents are due. Focus only on those that provide value up front, leave the rest till the end.

Strategy #11: Compromise

Page 35: AgileCville:  How to sell a traditional client on an Agile project plan

Never stop selling Agile.

When you’re in a project and it just saved you (ie, due to increased agility to changes),

let the client know why.

When things are going bad, point out how the increased visibility into the project at

least caught the problems earlier.

SELLINGAGILE

Page 36: AgileCville:  How to sell a traditional client on an Agile project plan

www.OpenSourceConnections.com/Blog/

[email protected]

434 996 5226

Follow up....

Automating the Science To Enable the Art

Questions?