How to use tech for agile development with offshore teams

By , 1 September 2014 at 16:44
How to use tech for agile development with offshore teams
Business

How to use tech for agile development with offshore teams

By , 1 September 2014 at 16:44
Tags:
OPINION

By Luke Langfield (@lukelangfield), Scrum Master, O2 UK

1 September 2014: As the technology industry moves towards an offshoring model, project managers and scrum masters have to increasingly adapt to these new, fast flowing and challenging environments.

Luckily there are two vital weapons, which can be off use. The Methodology Scrum and Technology, in this article we will assess how they work hand in hand and how they can be used to supercharge your development with off-shore teams.

Scum has now become commonplace amongst technology industries, it allows a project to be broken into stories, the stories form the project backlog. Each sprint a selection of the stories are completed, each story has story points attached, these can then be used to produce Sprint burn-up charts to realise and end date for the project.

Every day there is a “Stand-up” in which the scrum team gives an update on the previous days progress and todays tasks. Each sprint has sprint planning, in which developers estimate the size of stories. Likewise at the end of each sprint there is a demo, in which stories completed are demonstrated to the product owner. Depending on how you manage the scrum there are Retrospectives or “Retros”, either each sprint, each month or at intervals set out when setting up the scrum team.

There are varying techniques for Retros, all with benefits and there could be a whole other article on this, however for this article, essentially Retros cover “Stop doing”, “Start doing”, “Do more off”, “Do less off” and “Keep doing.” From the Retros actions are taken and implemented. It is worth nothing that most teams/companies/scrum masters implement different variations of Scrum so don’t be alarmed if you seen conflicting information.

Scrum teams usually consist of Scrum master, developers, QA, technical BA and a Product Owner. We won’t go into any more detail in this article about each role.

This image (left) does not do Scrum justice, its more of a super quick crash course and I advise you to read scrum guides for yourself for further knowledge.

I want to explain the technologies in which I use to manage my offshore teams. First of all a quick background, currently I manage two teams, one in Pune (India) and one in Calgary (Canada), anyone with slight geography knowledge will know these time zones do not marry up particularly well, furthermore as the distances apart are in the thousands of miles, technology is required to make up for not being in the same office.

So how do I manage these teams?

The below details the breakdown of the technologies I use and hopefully can be of assistance.

Lets begin with the Scrum backlog and work board. I utilise a technology called Jira. Jira is software, which allows the project to be broken in stories and a project backlog, it allows the scrum team to assign themselves to each story and move its progress across the board. It gives full visibility to everyone in the scrum team and the progress on stories. Stories can be commented on rather than using other communication channels such as Email, this ensures everyone in the sprint again has full visibility. Jira is commercial software, however there are free scrum trackers such as Trello, which are just as effective. I have attached an image of a Jira board below so hopefully you can visualise how we track our sprints.

You will see there is a “To Do” swim lane; this is the sprint backlog, the “In Progress” swim lane is self-explanatory. The “In QA” means the work form the developers is being tested/checked, and finally there is a “Done” section. To move stories to “Done” they have to meet the Scrums “definition of done”, something that is predetermined with the Scrum Team.

Next up is the daily stand-ups, for the daily stand-ups, I use three technology options. Skype call, Google hangout or a conference call. I prefer a Skype call as I still think the audio clarity is better than Google hangouts. During the Skype call we each give our update and talk through the stories on the Jira board. In Skype or hangouts the option of video is available but generally a call is fine, a video doesn’t add much benefit to the stand up and in fact detriments the speed, connection and set up times.

Moving on to the Sprint planning…

Sprint planning is a longer affair and a stable Internet connection is vital. We utilise the same technologies as the Stand-ups so again Skype, Google Hangouts or a Conference call. Usually I opt for a conference call in planning, as the line can be more stable over a long period of time; also it won’t strain the Internet connections, as we’ll need those for another technology. In comes Team Viewer.

Team viewer is an excellent technology in which you can share your screen with your team and run through each story, so why Team viewer over Skype or Google hangout screen share? Again the essential reason is stability, as its sole purpose is to share your screen it does this better than the two rivals mentioned. Team viewer is free for non-commercial use.

In sprint planning, the developers participate in planning poker when estimating the stories, for more information on planning poker, please look at some guides on Scrum. Planning poker works well with video, so Hangouts or Skype video, or like me if you are on a conference call there is free software out there, the most prominent one being created by Mountain goat software.

In Retros, a new challenge comes in; we like to write down points raised on sticky notes for aforementioned headings, “Stop doing”, “Start doing”, “Do more off”, “Do less off” and “Keep doing.” You may already see some challenges arising, if you are on a call everyone cannot shout their ideas all at once and it would take a long time for the person in the office (Telefonica is the home office, as they are offshoring) to write everything down. There are online “sticky” applications or online whiteboard applications such as “Flockdraw” in which all the team can collaborate on an online space.

To re-cap the technologies used when managing teams offshore

  1.  Jira Board – Track sprint progress and backlog
  2. Skype – Stand-ups, Retros, Demos and Sprint planning
  3.  Google hangouts – Stand-ups, Retros, Demos and Sprint planning
  4. Flockdraw – Retros
  5.  Planning Poker Software (Mountain Goat) – Planning (used for planning poker)
  6. Team viewer – Screen sharing for Demo’s and Sprint planning.
  7. Conference Call – Stand-ups, Retros and planning.

As mentioned different Scrum Masters/Companies use Scrum in different ways and may have different Technology solutions, however the above works for me.

The only thing that is still difficult is managing multiple Time zones. If anyone has a solution for this please let me know! I’m at luke.langfield@o2.com

 

previous article

Latin America: No longer an importer of tech, but a creator

Latin America: No longer an importer of tech, but a creator
next article

GradView: As consumers go virtual, how can retailers make this work for them?

GradView: As consumers go virtual, how can retailers make this work for them?