Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

16
Intelligent People. Uncommon Ideas. Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi) By Bhavin Turakhia (CEO) & Naresh Jain (Agile & Community Evangelist) Directi (http://www.directi.com) Licensed under Creative Commons Attribution Sharealike Noncommercial

description

From the presentation given at Web Innovation 2008 by Bhavin Turakhia and Naresh Jain on adoption of Agile practices at Directi.

Transcript of Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Page 1: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Intelligent People. Uncommon Ideas.

Our Journey Down the Yellow Brick Road

(Agile Adoption @ Directi)

By Bhavin Turakhia (CEO) & Naresh Jain (Agile & Community Evangelist)

Directi (http://www.directi.com)

Licensed under Creative Commons Attribution Sharealike Noncommercial

Page 2: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Agenda

• Why Agile is important to us?

• Our Journey

• General Tips and Observations

• The Road ahead

Page 3: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Safeguard Ballistic Missile Defense System

• 1969-1975, 5407 person years

• Hardware designed at the same time as software specs being written

• Late changes in requirements not an option

• The project was delivered according to specifications

• Cost: $25 Billion (not adjusted)

‘By the time the 6-year anti-missile system project was completed, the new missiles were faster than the anti-

missile missiles’

Operational for 133 days - Project terminated in 1978

reqmts20 %

design20 %

code &unit test

18 %

integrationtesting42 %

Page 4: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

In Conventional Software Development Processes

• Features are fixed

• Release spec is fixed

• .. and in theory ... time and cost is fixed

• Feature creep is a bad word

QualityQuality????

Cost/Resource

TimeSc

ope

Page 5: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

The Reality is – Change is the only Constant

Page 6: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

• Agile as the word suggests Acknowledges that uncertainty and change exist Recommends being open to change and evolving Is feedback driven Encourages ongoing and open communication Discourages over-engineering Encourages lean thinking KISS, DRY, YAGNI

Introducing Agile …

Agile is not a process. It is a philosophy / set of values

Page 7: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Our Journey

Page 8: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

• Observations Maintain a heartbeat of the project Serve as quicker feedback loops (what works / doesn’t work) Maintain deadlines and focus / minimize timeline deviations Identify hurdles quickly Create a sense of urgency Demonstrate progress Motivate members Get a sense of performance amongst team members Communicate and trickle down vision regularly Create a sense of team ownership and collectiveness .. and they take almost no time

• Challenges Common time

Daily Stand up meetings

Page 9: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Weekly Iterations & Monthly Releases

• Implementation Time box each release to a month Schedule weekly demos Concept of iteration and completeness

• Observations Regular Stakeholder participation Reduces Business Risk Enables adaption to avoid delays Effective Prioritization Focus / Clear Targets Motivation Long enough to get stuff done Short enough to maintain predictability

• Challenges Chances of Burn out, lack of slack

Page 10: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

eXtreme Programming• Implementation

TDD Refactoring Continuous Integration

• Observations Code coverage - safety net Drives better design Taking baby steps The last 5% doesn’t end up taking 95% time Early Feedback Reusable Test framework (Safety Net) Lets face it ... manual testing is boring Tests as Training documentation Lower cumulative testing cost

• Challenges Learning curve Easy to fall back to older habits

Add a TestAdd a TestAdd a TestAdd a Test

Run the Run the TestTest

Run the Run the TestTest

Make a Make a little little

changechange

Make a Make a little little

changechange

Run the Run the TestTest

Run the Run the TestTest

RefactorRefactorRefactorRefactor

Fail

Pass

Fail

Pass

Page 11: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Release Retrospective • Implementation

Discuss macro lessons learnt / process evolution / challenges

• Observations What worked / What didn’t work / What needs improvement Inspect and adapt Process evolution

• Challenges Not everyone is comfortable speaking up

Page 12: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Raising the Bar

• People matter *much* more than process

• Pair Programming during Interviews

• Very high focus on technical excellence / communication skills

• Diversity in skill-sets

We spend extra time in making sure we hire the RIGHT people,

so we don’t have to spend time in making sure the job gets done RIGHT

Page 13: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

General Tips / Observations • Tips

You need local champions/ambassadors for percolation Don’t start out with 100% adoption - prioritize the practices Requires changes to your infrastructure and facilities Cross-functional agile adoption vs dev team only Only buy-in not sufficient / dedicated involvement and

commitment required Embrace tools Learn by Activity / Knowledge Percolation strategies

• Observations A fundamental shift in thought process Everyone is really excited!! (Moral Boast / Motivation) Higher visibility / greater transparency through the

organization

Page 14: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

The Road ahead

• Pair Programming

• Automated Acceptance Testing

• Identify right metrics to measure

• Informative Work-spaces and Information Radiators

• User Stories or Clarity in terms of Feature Granularity

• Regular Cross Pollination and Rotation of Team members across different products

• Less Cubical more Dinning Table style seating arrangements

Page 15: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

What’s been your experience?

Page 16: Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)

Intelligent People. Uncommon Ideas.

Questions??

[email protected] [email protected]

http://directi.comhttp://careers.directi.com

Download slides: http://wiki.directi.com