• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
What i learned adopting agile practices

What i learned adopting agile practices






Total Views
Views on SlideShare
Embed Views



7 Embeds 243

http://artofsoftwarereuse.com 138
http://agile.dzone.com 94
http://www.linkedin.com 6
https://www.linkedin.com 2
http://www.lmodules.com 1
http://www.dzone.com 1
http://ruby.dzone.com 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    What i learned adopting agile practices What i learned adopting agile practices Presentation Transcript

    • What I Learned Adopting Agile Practices
      • Vijay Narayanan
      • http:// artofsoftwarereuse.com /
    • Essence of Agility…
      • Embracing change
      • Collaboration and exploration
      • Delivering working software
    • Start With Stories
      • Stories place the user’s needs in front
      • Establish shared meaning
      • Help Channelize Passion
    • Take Small Bites
      • Focus on the iteration instead of the entire project
      • Gives the team a chance to experiment and adapt practices
    • Quality more important than Quantity
      • Fewer Features does not equal loss in user productivity!
      • Health of codebase as important as any other metric
    • Empty Your Cup
      • Practice “I don’t Know”
      • What did I and the team learn in this iteration?
    • Listen
      • For feedback from developers and business partners
      • For conflict and indecision
    • Be Visual
      • Track trends – defects opened, fixed, stories implemented
      • Make priorities and tasks clearly visible
      • Don’t design over email, grab a whiteboard
    • Iterate to Innovate
      • “ Speed of Iteration over Pursuit of Perfection” – Charles Boyd
      • Your understanding may be partial and/or incorrect
    • Travel Light
      • Implement fewer stories
      • Write readable code
      • Keep Stand up Meetings short, very short
    • Be Ruthless With Repetition
      • Automate manual tasks – setting up developer machines, unit testing, release and deployment, smoke testing – list is endless!
      • Refactor duplicate code
    • Collaborate
      • With sponsors to meet business objectives and deliver working software
      • With users to observe and understand their true needs
      • With developers to brainstorm design alternatives
    • Trust but Verify
      • Mentor junior developers
      • Write tests and do code reviews
      • Lead by example – don’t preach quality but demonstrate in action
    • Mistake Proofing is Super-Useful
      • Make it easy to get things right – setting up environment, fixing defects, following conventions consistently
      • When mistakes do happen – go after the root cause!
    • Expect the Unexpected
      • Agile practices will introduce awkwardness in interactions and behavior
      • Expect a big backlog of unfinished work – specially when you start!
    • Release Early, Even if you need to fake it!
      • If you cannot release to real users – release into a test environment
      • Focusing on early and continuous releases will help with every other agile practice
    • Practice
      • Roles and responsibilities
      • Coaching developers
      • Acting on feedback
    • The Japanese Lunchbox
      • Agile helps the team see the interconnectedness between: features, quality, and delivery
    • Celebrate
      • Shared code ownership
      • Every iteration!
      • Infinite learning opportunities
    • Have a “Beginner’s Mind”
      • Open to change, uncertainty, and learning…
      • Keep the child-like curiosity!