agile development in globally distributed teams
TRANSCRIPT
Agile development in globally distributed teams
Agile is considered to be a lightweight methodology. Unlike more structured traditional
development methods it is claim for flexibility even in situation where changing or ambiguous
projects requirements seem to be the norm. Agile methodology over the years has become an
integral part of organization’s software development process, allowing organization to be
nimble and flexible in bringing in their product and services in the market.
For the past few years organizations have turn up into agile methodologies and consider it as
the breath of fresh air for the software development process. Agile offers a flexible and practical
approach to development that the traditional methods can’t deliver.
Organizations are implementing agile development to varying degrees, to increase speed to
market their product, increase productivity, growth strategy, improve operation effectiveness
processes, improve product quality etc. Even in the case of distributed teams agile methodology
has the potential to achieve similar objectives despite the fact that the very idea of physically
distributing teams seems to conflict with agile communication practices.
Ideally in an agile environment, developers, Product Owner or business partners are in close
proximity and sit under one roof. This co-location typically facilitates several benefits of Agile:
improve efficiency, frequent communication and feedback, continuous collaboration
opportunity, a sense of ownership, foster closer working relationship and team can learn from
other team practices. However there are situations when managers have to manage distributed
team comprised of both onshore and offshore resources. These distributed agile teams often
have unique challenges that the agile process doesn't address. But given proper tools to work
an organization can curtail the major bottlenecks of distributed teams.
Agile methodology can be equally effective even in the case of distributed teams given the
teams are provided with adequate tools to maximize communication across geographically
distributed environments. Distributed agile development makes it possible to tap into new
global markets and more importantly can complete a project in a faster rate if teams in different
time zones continuously work on a particular project that potentially reduces costs.
In an ideal agile environment tools are not consider the primary focus of agile teams, but if
selected properly they can certainly make teams more effective and efficient. Distributed agile
teams may not be able to rely on the usual agile methods of face-to face team meetings, sticky
notes, task boards, or burndown charts on a wall for tacking an updating their project work
status. What is essential for the distributed teams are a robust system that can help the team to
provide certain benefits provided they are flexible and do not hinder a team's natural workflow:
Information sharing, level of documentation, co-ordination between multiple teams,
communication channels, status tracking and reporting, frequency of meetings.
If the team is distributed, the organization should make conscious efforts to curtail as much of
the lost communication bandwidth with augmented processes and practices:
Bringing teams together via video conferencing as often as possible, especially during
planning and critical points during projects
Use of Digital wall so that each team members have updated work flow all the time
Team manger should have a clear mandate and should ensure that each team members
stay on track with communication practices
Provide distributed teams with tools that will help them fulfill these user stories
Favor integrated systems that offer full traceability from specification design through
development and testing
Integrated wiki linked to tasks and stories to store notes from various design meetings
and impromptu conversions
In current economic market with so much pressure on performance, revenue generation agile
methodology can give a competitive advantage at any given time. Agile methodology success is
based on team work. The thinking behind agile is collaboration and working together as a
team. Most traditional models are very rigid and doesn’t enable changes – thus relatively less
flexible than the Agile model. Because of this nimble approach, Agile has a comprehensive
response to most of the challenges organizations’ face in a rapidly changing, competitive global
market.