The added complexity of distance and lack of face to face interaction makes developing a successful offshore contract an even greater challenge. Steve Hammond and Parminder Sikka present some of the steps that managers can take to improve the chances of success of developing and managing an offshore sourcing relationship.
Companies continue to look to offshore service providers to reduce their cost base and to take advantage of the cheaper workforce available in India, China and Eastern Europe. In the prevalent economic circumstances and with a threat of recession looming over our heads, this trend is likely to gain further pace.
A number of reasons are often cited for the failure of offshore development projects. These vary from a lack of understanding that offshore teams have regarding their client's business context1 to problems relating to language and culture2. Additional effort required in managing the communications and preparing a detailed briefing further add to the cost of offshore delivery3.
In our experience, management can undertake key steps to mitigate these negative factors. These are:
Spend time inducting offshore developers
Offshore engagement often involves a prolonged period of interaction with onshore sales representatives. Once the framework has been agreed, the responsibility of providing appropriate resources is often delegated to the service partners contact person with little or no involvement of the client IT team.
As a result the assigned resources lack the background knowledge regarding the company and the project and may even lack the required technical competencies. A formal interview process, followed by a brief on the company and departmental working practices should be carried out for all offshore based developers. This process helps to bring all assigned resources to a basic minimum level of understanding and ensures that they have the required competencies.
Define clear reporting lines
It is vital to define upfront, clear and simple reporting lines. It may well be advantageous to appoint a single point of contact within your organisation through which all formal communication takes place. This allows resources to more quickly build up understanding and trust.
Develop a common language
In house development teams generally have a wealth of company specific knowledge and are familiar with the company specific language. It is very easy to make assumptions about systems and business culture, which may be completely alien to the offshore service provider.
The service providers over eagerness to demonstrate an understanding of the client’s business, systems and culture, without necessarily having a full understanding of these aspects, can also further alienate them. Clients should spend time developing company, system and personnel profiles which can be used provide a common language.
Encourage continuity in offshore resource allocation
Offshore development centres are often used as a turn on, turn off resource centre. Whilst this flexibility is a part of the benefits for entering into an outsourcing agreement, frequent change in resources can be detrimental to overall productivity.
Companies should look to use dedicated resources for their project work. This does involve a commitment on quantum of work that will be provided to the offshore team but it provides continuity and allows the resources to develop a working relationship with the onshore analysts.
Set clearly understood standards
Unless you have sufficient work level to engage dedicated offshore resources it is likely that your work will be completed by a variety of different resources. Each of these resources will have different levels of experience, and different styles of development. Consider setting minimum experience levels on resources used.
Most of all take time developing detailed standards in terms of coding, testing and documentation. If possible include contractual penalties for failure to adhere to these standards. Variable quality in work delivered will not only erode the cost advantages of the offshore development in the first place, but also destroy the confidence of your in-house staff.
Use common tools for communication with the project team
Offshore development was enabled by availability of the internet. Ironically, email and telephone are still the main tools used for communication with the development teams. Valuable information exchanged in these conversations is often lost as the resources move on to new projects.
Use of common project tools and repositories for sharing information with the entire project team help to document this information and also reduce the cultural bias. Use of tools like Microsoft Sharepoint to exchange documents, discuss topics and answer queries, consolidate task lists for the entire project team and help to channel all communications through a common tool and eliminates cultural bias inherent in oral communication.
Use detail-oriented onshore analysts
Software development involves close interaction and development of a good working relationship between the business analysts and developers. The increased distance and cultural barriers in an offshore development process makes it harder for the analysts and developers to develop such a relationship. Detailed specifications and scripts are often necessary to overcome this problem.
We all have analysts on our teams who are naturally more inclined to detail than some others. Look to use these analysts on offshore development projects and even consider giving them additional incentives for their role in successful delivery of offshore projects.
Ensure appropriate level of documentation
The level of documentation required to run developments offshore is normally higher than in house projects. Work specifications must be clear and unambiguous. However the tendency to overload the documentation from the offshore organisation can quickly eat into the cost advantages of the offshore agreement. Ensure any documentation is essential for you and that it will absolutely bring benefits to the project in hand.
Build incentives for the project managers to deliver at reduced cost
Project managers play a pivotal role in the co-ordination of all resources and delivery of project to agreed timescales and costs. They are normally given incentives based on delivery of project to agreed budget. A personal incentive scheme that rewards project managers for using cheaper resources and reducing overall cost of delivery will give their commitment to ensuring that offshore resources are actively managed and utilised.
Make the time zone differences work to your advantage
There will almost certainly be a time zone difference between you and you offshore partner. It is all too easy to see this as a disadvantage. In the worst case scenario your offshore partners will not have sufficient understanding or will be missing some vital part of a specification which will mean a day's delay into the development. This will once again erode the confidence of your in-house staff and add precious days to project timelines.
Despite these challenges, you must keep communication lines open on a daily basis checking on scheduled work, progress and issues. This aspect should be a major selling point. Your in-house staff should be freed up from much of the low level development and increasingly add value in developing the business specific strategies and specifications. This will present them with opportunities to move to high value adding roles.
In summary, using offshore service providers requires an appropriate management and resourcing structure at both client and service partner level. It is not a quick solution to cutting the cost of delivery but when managed appropriately, it can help to reduce the overall cost of delivery over a period of time.
- 1 Co-learning in the offshoring of software development, Christopher Williams.
- 2 Software development: is home cooking better than a takeaway?, Alan Woodward
- 3 Offshoring - A challenge or opportunity for British IT professionals?, BCS