Offshore Agile Maintenance

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    3 Favorites

    Offshore Agile Maintenance - Presentation Transcript

    1. Offshore Agile Maintenance - Agile 2006 Conference eXperience report Naresh Jain naresh@agilefaqs.com http://agilefaqs.com Licensed Under Creative Commons by Naresh Jain 1
    2. Project background Challenges with distributed/offshore team My observations The Holy Grail Small things that made a big difference Lessons for life Improvements on my future projects Licensed Under Creative Commons by Naresh Jain 2
    3. Where, why and how did it all start? EAI project for back office data validation and billing system for a pay-per-view cable company in New York 2 years later, lack of funds to maintain the app Decision to offshore the project Ended up with one year maintenance contract. Licensed Under Creative Commons by Naresh Jain 3
    4. Challenges: Distributed/offshore teams Decrease in communication bandwidth Lack of visibility into project status Configuration management Art of Command and Control structure Time difference Cultural difference Licensed Under Creative Commons by Naresh Jain 4
    5. Painful Distributed Development: Root cause My observations Lack of trust Loss of context, both business and technical Delay in feedback cycle due to increase in distance and time difference Duplication of efforts Change is inevitable Licensed Under Creative Commons by Naresh Jain 5
    6. XP Practices used on the project Planning game – 2 week iterations, story cards, Iteration Planning Meetings Small releases – 2 to 3 months Refactoring Pair Programming Collective code ownership Continuous integration/Automated Release Test Driven Development Standup meetings Coding standards Licensed Under Creative Commons by Naresh Jain 6
    7. What we did not have/could not do? Onsite Client Metaphor Simple Design 100% Automated testing 40 hour week / sustainable pace Licensed Under Creative Commons by Naresh Jain 7
    8. Small things that made a big difference General practices: Empowered small teams Freedom to try new things Fun work place with lots of outings, parties, ice-creams, food, etc Licensed Under Creative Commons by Naresh Jain 8
    9. Small things that made a big difference To address lack of trust: Results matter Life is more than just a pay cheque Building a personal rapport Brand ambassadors and cross pollination Licensed Under Creative Commons by Naresh Jain 9
    10. Small things that made a big difference To address delayed feedback cycles: Retrospectives Involve the customer Daily client driven demo on Dev env EOD Status mail Seamless collaboration between Developers and QA 100% Automation Refactoring fests Realistic measures of progress Licensed Under Creative Commons by Naresh Jain 10
    11. Small things that made a big difference To address loss of context of business/technical problems and decisions: Involve the customer IM Chats Regular Conference call Demos and functional walk thru by Client Acceptance tests Brand ambassadors and cross pollination Pairing SCube sessions Licensed Under Creative Commons by Naresh Jain 11
    12. The Holy Grail Structure and execution of the project Planning During the iteration End of iteration Release process Big win! Licensed Under Creative Commons by Naresh Jain 12
    13. The Holy Grail… How did we manage with lack of tests and documentation? Unit and functional tests QA Automation Red light goes on to say its time to begin Log files and other artifacts are your friends Positive feedback cycle: Refactoring Licensed Under Creative Commons by Naresh Jain 13
    14. The Holy Grail… Automation is your friend till THE END Installation process Release process Configuration management Database change management Functional tests Licensed Under Creative Commons by Naresh Jain 14
    15. Improvements on my future projects Heavy focus on automated tests and refactoring. Exchange programs Good roll-off plans for the team members. Scratch your personal itch day. Licensed Under Creative Commons by Naresh Jain 15
    16. Conclusion Decrease in communication bandwidth Communicate, communicate and over communicate Lack of visibility into project status Correct and timely feedback Open and honest work culture Configuration management It’s the tool, that differentiate Humans from the rest Art of Command and Control structure Self organized team of motivated individuals Cultural difference Is it a problem? Was fun! Creative Commons by Naresh Jain Licensed Under 16
    17. References Distributed Agile Development and the Death of Distance http://www.thoughtworks.com/press-releases/Distributed-Agile- Development-and-the-Death-of-Distance.html Case Study: Distributed Agile Development http://www.pivolis.com/pdf/Distributed_Agile_V1.0.pdf Distributed Agile http://www.agilealliance.com/articles/steindlchristophdistr/file Using an Agile Software Process with Offshore Development http://www.martinfowler.com/articles/agileOffshore.html C2 Wiki - http://c2.com/cgi/wiki Licensed Under Creative Commons by Naresh Jain 17

    + Naresh JainNaresh Jain, 2 years ago

    custom

    989 views, 3 favs, 1 embeds more stats

    Agile 2006 Conference eXperience report by Naresh J more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 989
      • 982 on SlideShare
      • 7 from embeds
    • Comments 0
    • Favorites 3
    • Downloads 60
    Most viewed embeds
    • 7 views on http://agilefaqs.com

    more

    All embeds
    • 7 views on http://agilefaqs.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories