24/7/365 - The "what" and "how" of itTo put it simply, Global Delivery of software 24/7
means work meant to take 24 person hours of effort is completed in one
calendar day and work meant to take 168 hours is completed in 7 calendar
days. Obviously, this cannot be done by one person since a person is
expected to work only 8 hours in a day and 40 hours in a week.
This
also cannot be done by team members who work as compatriots because
they all work shoulder to shoulder during the same working hours and
hence 24/7 will not be feasible.
To
make this happen requires all the usual characteristics that you want
in the team like high degree of technology skills, context understanding
like the application & domain etc. However, to ensure all these
things come together to enable 24/7 development support, the figure
below provides the options for the team composition
Follow the SunThis
involves software development teams comprising of members working
across different worldwide locations, working on the same project.
Essentially, each sub-team would hand off work at the end of their
workday, to another sub-team which is starting their day in a different
part of the world. The pros and cons of this approach are
Follow the Clock
This
involves software development teams comprising of members working in
the same location and on the same project. Essentially, each sub-team
would work in different shifts and will hand off work at the end of
their shift, to another sub-team which is starting their shift. The pros
and cons of this approach are
Why 24/7?Is 24/7 development support required? The following factors need to be considered
All
these and many more decide whether 24/7 support is required and if yes,
which method to choose would be based on the pros and cons of these
methods.
24/7 Support - ChallengesIn
a team comprising of sub-teams which work during mutually exclusive
work times, there are situations which require coordination between
different sub-teams on
Hand-off
from the sub-team signing off at the end of their day to another which
is starting their day would occur on a daily basis, a management review
or something similar involving several sub-teams will occur on a planned
basis, an emergency situation or training or change management will
occur on an adhoc basis.
A well planned process covering the 3Cs as in the below figure will help in minimizing the failure points
It
is also important that we do not take the big bang approach to launch.
Reaching a steady state should be done over a few steps and each step
could be a cycle of Test, Measure and Adjust.
Conclusion
The
secret of success in setting up a Global Software Delivery 24/7 lies in
the planning phase. We all are in a hurry to get going hands-on with
developing the software or providing the support, but doing so without a
proper planning increases the chances of failure manifold. During this
planning phase, we need to determine the composition of the sub-teams,
arrive at the collaboration protocol and automate the process.