1 / 16

Agile and Offshore – Contradictory or Synergistic

Agile and Offshore – Contradictory or Synergistic. A Practitioner’s Viewpoint. November 7, 2007. About Us (Synerzip in a Nut-shell). Offshore software development partner for small/mid-sized technology companies Focus: A/B round funded technology start-ups

Download Presentation

Agile and Offshore – Contradictory or Synergistic

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agile and Offshore – Contradictory or Synergistic A Practitioner’s Viewpoint November 7, 2007 www.synerzip.com

  2. About Us (Synerzip in a Nut-shell) • Offshore software development partner for small/mid-sized technology companies • Focus: A/B round funded technology start-ups • Deep experience in product development and testing • Full software development life cycle • Engagement flexibility: Fixed-Price OR Dedicated-Team • Actually reduces risk of development/delivery • Experienced management team • Light-weight but robust Agile process • Reduces cost – dual shore team providing 50% cost advantage • Offers long term flexibility – allows (facilitates) taking offshore team captive Confidential

  3. Experienced Team Team of seasoned professionals with extensive experience in offshore software Product Development • Hemant Elhence, Chief Executive Officer • Co-founder & COO of ECMi, venture funded software product company • Product-line VP at i2 – managed product portfolio with multiple offshore teams • Manager at McKinsey & Co, Consultant at TRG • Software engineer at Digital Equipment Corporation • BSEE IIT Delhi, MSEE Univ. of Massachusetts, MBA Univ. of Chicago • Vinayak Joglekar, EVP & Chief Technology Officer • Co-founder & CTO of ECMi, lead offshore (India) development center • 22+ years experience in software architecture design & product development, has built and mentored 100+ teams, hired 1000+ software professionals • Successfully delivered off-shore software projects for 20+ companies incl. Alfa-Laval, First Guarantty, Cyberdrawer, etc. • BSME IIT Bombay, MBA IIM Calcutta Confidential

  4. Our Clients Confidential

  5. What is Agile? • Agile development is the ability to develop software quickly, in the face of rapidly changing requirements • Agility is achieved by adhering to well understood practices, discipline, and feedback • Various flavors are practiced in the industry – SCRUM, Extreme Programming (XP), Adaptive Software Development, etc. • From Agile Manifesto of 2001: “Agile approach values… • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan …that is, while there is value in the items on the right, items on the left are valued more” But, Agile is not an excuse to do maverick development without due attention to requirements analyses, thoughtful design, robust development & testing Confidential

  6. Why Adopt Agile Approach? When done properly… • It is just more suitable for fast moving companies • Builds software which is more likely to delight customers • Embraces “changing requirements” as a positive, • Allows more innovation - relieves the product managers of the fear of committing to an irreversible change • Builds better quality, robust code • Provides better visibility and delivery predictability to management • It lends itself well for working effectively with offshore/ distributed development teams • Quick release cycles (Sprint) and scrum make the efforts put in by the offshore team more visible leading to trust • Requires less onerous documentation around requirements, thereby main bottleneck in leveraging offshore is dramatically reduced Over 70% of large & small companies have plans to adopt one or more of the agile practices this year Confidential

  7. Agile in Practice Today • Core practices, widely adopted • Small, collaborative teams, 5 to 8 team members • Frequent and intense communication – in-person, IM Chat, email, conf-call/skype, video-conf, etc. • Delivering working software in short iterations (Sprints) ~ 2 weeks, time-boxed, demo & customer feedback • Initial requirements captured as “user stories”, welcome changing requirements • Continuous integration • Other practices, with limited following • Test driven development • Pair programming Confidential

  8. Agile with Offshore Team? • Inherent limitations • Customer-Vendor “contractual” relationship • Face-to-face communication with “customer” limited/non-existent • Geographical boundaries • Conf-calls limited due to time-zone and connection quality issues • Business context difference may make requirements difficult to understand, requiring more detailed docs • Developer skill/experience level tends to be low • Inherent advantages • Geographical dispersion forces requirements to be written, elaborated, and in that process analyzed upfront • Forces good development processes – bug tracking, version control, daily builds, automated testing, wiki, etc. • More focused teams, less likely to be distracted by news-du-jour • Cost advantage allows proper staffing to handle the Agile discipline – TDD, test automation, etc. Confidential

  9. Dual-shore Agile Leveraging Offshore Advantage Agile Model, All On-shore High - “Evolving/ Emerging” Requirements Need for Flexibility Low - “Known/ Given” Requirements Waterfall Model, All Offshore Low High Need for Dev Speed(for given $$ budget) Confidential

  10. Product Lead/ Customer Scrum Master India Location US Location Agile Team #1 Agile Team #2 Dual Shore Agile in Practice US Location Agile Team #1 Agile Team #2 Confidential

  11. Dual-shore Agile in Practice (Contd) • Don’t split an Agile team across continents, rather have a full unit of Agile team offshore • Offshore team follows the SCRUM and other processes locally • Daily SCRUM over phone, across the ocean doesn’t work • Ensure that there is a designated owner in US client team for the offshore team • Designate an on-site Product Lead, a representative of offshore team • Participates in requirements gathering and planning phase with US “customer” • Participates in both scrums – US team’s as well as offshore team’s • Hold offshore team to same standards • Assign equally complex/challenging work • Expect working software demos at the end of each iteration • Encourage and facilitate high degree of communication • Emails, IM Chat, Skype calls, conf-calls, video conf-calls • Periodic in-person visits by team members to allow “face-time” • Flat, developer-to-developer communication • Ensure proper dev process and infrastructure – common source code control, bug tracking, wiki, etc. Confidential

  12.            Offshore Offshore Dual Shore Agile – What Works? Intense and frequent communication across the teams X+Y ABC ABC! X & AB X! ABC! X - OK     X ABC    Onshore Highly dynamic, interactive and communicative working environment locally – affects the communication between the teams X+Y ABC & D ABC! X+Y! ABC! D! X+Y! X+Y! XYZ OK X? And D?  D? D!       X ABC Onshore Confidential

  13.              Dual Shore Agile – What Works? Direct, developer-to-developer connection Project managers Communication bottlenecks  Reasons: Control? Language & comfort zone Project coaches Direct communication Less information loss Less waiting    Challenge: Asian hierarchical orientation, Language Confidential

  14. Deployment- and test environment Onshore Offshore Code-base Development environment Application code             External System 1 External System 2 Dual Shore Agile – What Works? Common development code-base, development- and test environment Sending code, deploys, etc back and forth via email because some can not ABC and others can only XYZ is a living nigtmare Confidential

  15. Agile-Offshore Synergy- Summary • While Agile is a sound approach, it is often misunderstood and abused in practice • Agile is not an excuse for no documentation, no requirements analyses, no planning, etc. • US teams are often short-staffed – can’t handle TDD, etc. • Offshore location of dev team forces a “appropriate discipline” striking effective balance • Lack of “face-time” forces written, albeit informal, communications – which forces clarity and minimizes misunderstanding • Offshore team allows cost effective resource augmentation, to handle the Agile discipline Dual-shore Agile allows the flexibility of Agile process, with cost/speed advantage of offshore, while guarding against the common pitfalls Confidential

  16. Contact Information • Hemant Elhence (Dallas based) • hemant@synerzip.com • Office Phone: 469.322.0349 • Cell Phone: 214.762.4873 • www.synerzip.com Confidential

More Related