Agile software development has made its way into complex enterprise environments, but keeping the process in-house may be too expensive.
In addition to figuring out how to adopt Agile principles to your organization, the next challenge becomes how to make the most of the value while controlling the costs. One of the 12 Agile principles is to have teams co-located. While this is an ideal situation, it tends to drive up the cost of development. To control costs, companies are now experimenting with hybrid Agile teams distributed at onshore, nearshore, or offshore locations to get high productivity and quality while controlling costs.
Outsourcing providers have become very competent at providing distributed Agile development offerings. These are services that help unify a global workforce connected through strong delivery tools like videoconferencing. Distributed Agile development can help companies control costs, but a number of issues need to be addressed to make it work smoothly:
Team structure – While it's not required, it does help to have a couple people from the distributed team onsite to help with communication, coordination, requirements gathering, and so forth. Mindtree typically recommends that a project manager and business analyst from the onshore, nearshore, or offshore team (whichever outsourcing model is being used) remain onsite.
Culture – There needs to be some team "norming" so that the distributed teams understand the culture, work styles, and expectations.
Communication and coordination – A communication plan is required to ensure complete coordination between the teams, especially when time-zone differences are involved.
Infrastructure – To create a high level of productivity and communication, a number of infrastructure necessities should be available to the team, including videoconferencing, high-speed connectivity, web conferencing, and online meetings.
IT outsourcing (ITO) companies are continuously evolving their Agile offerings as more Agile work is outsourced to keep costs down. But not all ITO companies are the same, so pick your partner wisely -- and most importantly, carefully pick the location where the work will be done. The location of the teams is important because the foundation of mature Agile development is good communication, so teams needs to be accessible and highly responsive in order to be productive.
Agile development is not for every company, but for those that make the best use of it -- and that often means outsourcing -- the advantages of reduced time-to-market and quality can be significant.
Scott Staples is the co-founder and president, Americas, at IT consulting and services company, Mindtree. Scott brings over 24 years of experience in IT consulting and client management.
Can the trendy tech strategy of DevOps really bring peace between developers and IT operations -- and deliver faster, more reliable app creation and delivery? Also in the DevOps Challenge issue of InformationWeek: Execs charting digital business strategies can't afford to take Internet connectivity for granted.