Agile Approach for an Outsourcing Environment

  • Agile Coach
Created on :
January 6, 2018
Saket Bansal
Updated on :
June 14, 2023
0 Comments
Blog-Image

Agile approach to software development is well known amongst many organizations. Nevertheless, we need to be cognizant of the differences in the adoption of Agile amongst various types of organizations. Broadly, we can consider two types of organizations that operate in today’s world – i) product based company and ii) service company.

Agile for Product Companies

We often hear of Agile being implemented within the in-house teams of product based companies. One of the key factors driving Agile adoption amongst product based companies is there proximity to their end customers. This helps drive greater alignment between internal stakeholders and development team with Cleary defined focus such as features in line with customer requirements, reduced cost and time to market, etc. This can be compared to a factory model, where an organization develops products based on end customer requirements. The product is designed by the product owner who considers customer requirements and designs the key features of the product, which is then developed by the product development team. The finished product is then marketed back to the customers.

Agile for Service Companies

In Indian context, this can be very different. We are an outsourcing hub and are regarded as a global software factory. In this context, it is a new type of factory model where product development happens outside the product company. It is “outsourced” to a service company that runs similar factories or product development facilities for many other customers. Agile in an outsourced or a service environment is a whole different game. This is probably because, the service provider doesn’t own the entire value chain. The primary focus for a service provider organization is to run the “factory” efficiently. It is critical to have the pertinent SLAs and KPIs in place to reduce risk and improve performance. This is a conflict of interest as while implementing Agile the emphasis is typically on developing a high impact and a rich product than on scheduling variances and effort.

Perhaps, this is the reason why service companies cling on to their operational metrics’ that we many often find annoying including timesheets, velocity, etc. A service company is rarely rewarded for meeting end customer needs as they do not own this part of the value chain. Any service provider wins a business based on the efficiency with which the factory is run. In order to run the factory efficiently, these companies use a certain set of metrics & get recognized for the same. This is one of the key reasons why metrics form a key part of Agile conversations in India.

In most trainings, we conduct Agile sessions from a product company perspective. Most often, the context of a service company does not emerge effectively. Recently, there have been attempts to bring in this differentiation through new frameworks and governance for these kind of organizations. One such example would be Disciplined agile delivery.
I would like to share a video from one of my recent discussions of this topic.

 

All of us as a part of the Agile community are working towards increasing and improving the adoption of Agile frameworks to drive outcomes. In this journey we need to recognize the varied types of organizations and their wide array of requirements. More specifically, in the Indian context, we need to bear in mind the unique requirements of a service company.
There will be many of you who are working in a service company and implementing Agile techniques. Please share your experiences and some of the key differences that you have seen as compared to Agile for product based companies.