offshore agile challenges

27
Offshore Agile Challenges and Mitigation Strategies Sowmya Karunakaran [email protected] Agile COE HCL Technologies

Upload: naresh-jain

Post on 06-May-2015

8.133 views

Category:

Technology


4 download

DESCRIPTION

Operating a delivery model of 90:10 (90% - offshore and 10% onsite) or 80:10 implementing the agile practices could be very challenging. The aim of this presentation would be to bring out challenges faced by offshore agile teams. The presentation will be complemented with couple of case studies.

TRANSCRIPT

Page 1: Offshore Agile Challenges

Offshore Agile

Challenges and Mitigation Strategies

Sowmya Karunakaran

[email protected]

Agile COE

HCL Technologies

Page 2: Offshore Agile Challenges

Agile

Agile has crossed the Chasm

Page 3: Offshore Agile Challenges

Expanding on Geoffrey Moore

Geoffrey Moore's classic suggests :

After the early adopters there tends to be a period of lull due to the

evaluation and adoption times for the mainstream.

In case of Agile,

Early adopters seemed to have sent signals to the mainstream and

they are now keen on applying Agile.

Example:

Microsoft, Yahoo

Page 4: Offshore Agile Challenges

Challenges could be diverse

Source: 3rd Annual Agile Survey – Version One

Page 5: Offshore Agile Challenges

Top 10 problems we faced

Project not suitable for agile

Project Tracking

Communication and Collaboration

Project Health unknown until delivery

Handling adhoc support items

Team entirely new to agile

User Story estimation

Handling risks

Sign off from Pos

Participating in scrum ceremonies

Page 6: Offshore Agile Challenges

Problem #1 Project not suitable for Agile

Assesses based on

Business objectives

Project Classification

Technology /Domain

Technical Complexity

Stakeholder commitment

Communication & Infrastructure

Skills

Offshore Agile Assessment

Page 7: Offshore Agile Challenges

0

50

100

150

200

250

Wo

rkit

em

Ho

urs

Sprint Days

Hours Burndown with Cumulative Flow

Pending

In Progress

Complete

Nu

mb

er

of

Wo

rk Ite

ms

Sprint Days

Workitem Cumulative Flow Pending

Use of Agile Tools

Problem #2: Project Tracking

Page 8: Offshore Agile Challenges

Problem #2: Project Tracking

In house Agile Tool

Page 9: Offshore Agile Challenges

Problems #3: Communication and Collaboration

Valu

e in t

eam

kno

wle

dge

sha

ring

Usage frequency

Travels

Video Conf.

Wiki

Phone

Mailing

list/forum

email

chat

• Travels ( rotation of members in onshore and offshore teams)

• Phone: atleast 3 calls per week

• Wiki: 1 topic modified per day

• Email: several times per day

• Through builds: every 2 hours or check in based

• Chat: continuously

Page 10: Offshore Agile Challenges

Problem #4 Project Health unknown until delivery

Unit Test

Reports

Code

Coverag

e

Reports

Code

Style

Reports

Code

Metrics

Version

Control

Reports

The

Build

Log

The set of files

and revision

numbers

modified for this

build

Find

Bugs

Reports

Continuous Integration – Stable build at all times

Page 11: Offshore Agile Challenges

Product Backlog

Problem #5 Handling Adhoc Support items

No support items Support request

Pick items from

Items planned for

current sprint

Product Backlog

Pick items from

Items planned for

current sprint Address support

issue

ScrumTeam Scrum Team

Page 12: Offshore Agile Challenges

Problem #6 Team entirely new to Agile

Step 1 -- ilearn modules , self e-learning on the basics Step 2 – 1 day workshop on ScrumStep 3 – Followed by real time assessment leading to Scrum Sprinter certificationStep 4 – Post workshop evaluation and HCL processes walkthrough

Page 13: Offshore Agile Challenges

Problem #6 Team entirely new to Agile

Agile community

Page 14: Offshore Agile Challenges

Problem #7 User Story Estimation

Story Point Estimation Guidelines

Page 15: Offshore Agile Challenges

Critical7%

Essential64%

Non-Essential

29%

Overall Priority

High29%

Medium64%

Low

7%

Overall Estimates Risk

Burn down and Risk Management

Problem #8 Handling Risks

Page 16: Offshore Agile Challenges

Problem #9 Sign offs from POs

Joint walkthroughs Formal review process X

Instead of formal review process a Joint walkthrough / meeting is

planned and the consensus reached is treated as signoff

Customer is informed about this practice in the beginning of the project

itself

Page 18: Offshore Agile Challenges

Case Studies

#1 Case Study on Flight test system

(for one of the largest flight manufacturers)

#2 Case Study on Voicemail application

(for a Fortune 5 product company)

#3 Case Study on Lifecycle management flagship product

( for a global leader in ALM)

Page 19: Offshore Agile Challenges

A thick client application which enable users to generate Test

Information Planning sheets, manage their workflow, organize Test

conditions data and generate operations documents aiding engineers

to prepare for and perform flight tests.

#1 Case Study on Flight test system

Execution Model:

Agile Development framework with XP model to benefit from collaborative

development and deliver quick deliverables

Business Challenges:

Need to fine tune processes of an existing application

Deploy the application in production in 2 months

Update multiple user stories in parallel

Control changes effectively

Lay foundation for future phases

Page 20: Offshore Agile Challenges

Value to Customer

Application delivered to user in 2.2 months

Addressed immediate requirement of program

Modified existing code base to suit the needs of IDS

Parallel requirements definition of modules

Features burn down chart

Standardization of test planning

Onsite Challenges

Set up of Development Environment in given time frame

Evolution of scope leading to possible slippage in schedule

Educating developers with complete functionality

Ensuring the requirements, documentation & code update is in sync with the Offshore team

Frequent travel between multiple onsite location

Offshore Challenges

Complete understanding of functionality not available for all team members

Have to implement 91 requirements/changes in a short period of time

Ensuring the requirements, documentation & code update is in sync with the Onsite team

#1 Case Study on Flight test system

Page 21: Offshore Agile Challenges

Challenge Mitigation

KT to offshore team.

Sprint 0 - planned for 2-5 days depending upon the project size and used to perform KT,

analysis and clarification related activities

Requirement stability Plan a freeze for requirements for every sprint during sprint planning phase. Further changes

updated in the product backlog and will be taken up during next sprint based on priority..

Signoff from

customers and

stakeholders

Customer and Stakeholders should be well informed about their pro-active role for the

success of Agile projects.

Joint walkthrough/ meetings be planned and the same treated as signoff

Lack of focus on

Application

performance Get non-functional requirements in the beginning and set-up a bench mark of performance.

Effort, schedule and

cost over-run. Re-estimate and re-plan the sprints / schedule

Adapting to Agile

culture

Train the resources in Agile before the project kickoff and make them understand about the

Agile concepts and the way of working in Agile. Conducting Stand-up meetings &

Retrospection.

Time zones Work in shifts /overlapping hours, so that the clarification / discussion can take place.

No Documentation.

Update the changes and update the revision history. Decide on the Documentation

requirements during project initiation. Baseline the requirements before construction.

#1 Case Study on Flight test system

Page 22: Offshore Agile Challenges

#2 Case Study on Voicemail application

This application offered consumers the ability to have select carriers (Network Operators ) voicemail forwarded to their mail account and accessible via vendor applications or services.

Execution Model: Scrum was used for project execution among the globallydistributed teams.

Business Challenges:

Enhance the end-consumer satisfaction level Increase the productivity in terms of time A better, faster, simplified way of testing To create a repository of independent, self sufficient, maintainable tests scripts

that can be scheduled and executed remotely or locally Effort spent in developing test script development to be made re-usable Risks of “unfinished” testing Keeping up the morale of the individual and the team

Page 23: Offshore Agile Challenges

Onsite Challenges Initially lack of support for offshore team No onsite coordinator Proper Communication channels was not

established Twelve-hour turn-around time for questions Little visibility into what offshore team was

doing Lack of trust

Offshore Challenges Initially No/limited Remote Access to Servers &

Code Repository Information Flow / Lean Documentation Communication Difficult Round-the-Clock Productivity Low Visibility No Shared Vision

Best Practices Resource dedicated to

communication Multiple communication channels Cultural and time zone awareness Common code base / document

repository Site visits / rotation Partners must be flexible Allow time for processes to mature Open, honest communication

#2 Case Study on Voicemail application

Page 24: Offshore Agile Challenges

Business Challenges:

Maximizing team efficiency

Trust and Collaborate to get the job done

Introduce automation wherever applicable

Share the knowledge through portal and single repository

Identify and deploy value-adds

Enhance product for multi platform support and 3rd party plug-in

#3 Case Study on Lifecycle management flagship product

For a Global Leader in application Lifecycle Management products

providing Maintenance and Sustenance support to two of their flagship

products

Page 25: Offshore Agile Challenges

Best Practices• Those who do the actual work involved in effort estimation

• We prioritize to ensure we’re building the most valuable software for our

customer

• Keeping release plan visible helps remind people where we are going

• During the 15 minute daily standup meetings that happen every day, we

work on the iteration goals and commitments

• If it’s not going to add value, don’t do it!

• Acceptance criteria for user stories and tasks are well understood by all

participants

Tools & Technologies: Languages: Java, C++, VC++, C#, .NET, C , WebServices , Oracle , JavaScript;

Development IDE: VS2003, VS2005;

Bug Mgmt : Team Track;

Code Repository: PVCS , Dimensions CM;

Automation: Winrunner;

Document Repository : SharePoint, Wiki portal;

Product Backlog , Task Mgmt & Risk Plan: Custom Spread Sheet

#3 Case Study on Lifecycle management flagship product

Page 26: Offshore Agile Challenges

Thank You

Page 27: Offshore Agile Challenges

27