What i learned adopting agile practices

20
What I Learned Adopting Agile Practices Vijay Narayanan http:// artofsoftwarereuse.com /

description

 

Transcript of What i learned adopting agile practices

Page 1: What i learned adopting agile practices

What I Learned Adopting Agile PracticesVijay Narayananhttp://artofsoftwarereuse.com/

Page 2: What i learned adopting agile practices

Essence of Agility…Embracing changeCollaboration and explorationDelivering working software

Page 3: What i learned adopting agile practices

Start With StoriesStories place the user’s needs in frontEstablish shared meaningHelp Channelize Passion

Page 4: What i learned adopting agile practices

Take Small BitesFocus on the iteration instead of the entire projectGives the team a chance to experiment and adapt practices

Page 5: What i learned adopting agile practices

Quality more important than QuantityFewer Features does not equal loss in user productivity!Health of codebase as important as any other metric

Page 6: What i learned adopting agile practices

Empty Your CupPractice “I don’t Know” What did I and the team learn in this iteration?

Page 7: What i learned adopting agile practices

ListenFor feedback from developers and business partnersFor conflict and indecision

Page 8: What i learned adopting agile practices

Be VisualTrack trends – defects opened, fixed, stories implementedMake priorities and tasks clearly visibleDon’t design over email, grab a whiteboard

Page 9: What i learned adopting agile practices

Iterate to Innovate“Speed of Iteration over Pursuit of Perfection” – Charles BoydYour understanding may be partial and/or incorrect

Page 10: What i learned adopting agile practices

Travel LightImplement fewer stories Write readable codeKeep Stand up Meetings short, very short

Page 11: What i learned adopting agile practices

Be Ruthless With RepetitionAutomate manual tasks – setting up developer machines, unit testing, release and deployment, smoke testing – list is endless!Refactor duplicate code

Page 12: What i learned adopting agile practices

CollaborateWith sponsors to meet business objectives and deliver working softwareWith users to observe and understand their true needsWith developers to brainstorm design alternatives

Page 13: What i learned adopting agile practices

Trust but VerifyMentor junior developersWrite tests and do code reviews Lead by example – don’t preach quality but demonstrate in action

Page 14: What i learned adopting agile practices

Mistake Proofing is Super-UsefulMake it easy to get things right – setting up environment, fixing defects, following conventions consistentlyWhen mistakes do happen – go after the root cause!

Page 15: What i learned adopting agile practices

Expect the UnexpectedAgile practices will introduce awkwardness in interactions and behaviorExpect a big backlog of unfinished work – specially when you start!

Page 16: What i learned adopting agile practices

Release Early, Even if you need to fake it!If you cannot release to real users – release into a test environmentFocusing on early and continuous releases will help with every other agile practice

Page 17: What i learned adopting agile practices

PracticeRoles and responsibilitiesCoaching developers Acting on feedback

Page 18: What i learned adopting agile practices

The Japanese Lunchbox

Agile helps the team see the interconnectedness between: features, quality, and delivery

Page 19: What i learned adopting agile practices

CelebrateShared code ownershipEvery iteration!Infinite learning opportunities

Page 20: What i learned adopting agile practices

Have a “Beginner’s Mind”Open to change, uncertainty, and learning…

Keep the child-like curiosity!