our journey down the yellow brick road (agile adoption @ directi)
Post on 15-Jan-2015
8.448 Views
Preview:
DESCRIPTION
TRANSCRIPT
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
Agenda
• Why Agile is important to us?
• Our Journey
• General Tips and Observations
• The Road ahead
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 %
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
The Reality is – Change is the only Constant
• 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
Our Journey
• 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
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
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
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
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
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
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
What’s been your experience?
Intelligent People. Uncommon Ideas.
Questions??
bhavin.t@directi.com naresh.j@directi.com
http://directi.comhttp://careers.directi.com
Download slides: http://wiki.directi.com
top related