Tải bản đầy đủ (.docx) (18 trang)

A maturity model for offshore software development centres

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (329.76 KB, 18 trang )

A Maturity Model for Offshore Software Development Centres
Han Hong Lu
Hung Phi
Nguyen
National Taipei University of
Technology, Taiwan

Abstract
Software outsourcing has proven to be a great success for many companies worldwide. CIOs
from these organizations develop IT strategies to support the vision of an enterprise in terms of
growing their businesses.

Delivering quality projects on time and within budget is a CIO’s

promise to the other senior executives. Assessing and selecting mature offshore development
centres (ODC) during their annual reviews becomes a critical item on a CIO’s agenda. In this
paper, we are going to introduce a maturity model for an Offshore Development Center. It
makes no significant difference whether the centre is wholly owned by the organization
initiating software projects or it is a 3rd-party partner of this organization. The model has been
developed based on best practices of 3 well-known international banks managing offshore
software projects

across countries and time zones. This model works well to serve the

aforementioned Wall Street firms’ IT strategies. For non-banking industries, this maturity
model works just as well, as these best practices are not industry-specific.
Keywords: Software Outsourcing, Offshore Development Centre, ODC, Maturity Model

1.Introduction
Outsourcing is the business practice of hiring a party outside a company to perform services
or create goods that were traditionally performed in-house by the company's own employees


and staff [1]. Nowadays, to survive and excel in the fierce competition in any business
requires entrepreneurs and senior executives to be on a constant search of new ways to do
business that are more cost-effective and more productive. In the early 1990s, software
outsourcing started gaining popularity as a strategy to save costs initially. Ever since then,
going offshore to find software providers to support their business has turned out to be a
success story for more and more organizations worldwide.
Working with an offshore development centre, also known as an ODC, has the benefit
of reducing operational costs. Additionally, a company can also get access to a larger talent
pool by outsourcing software projects. With this different approach of conducting business,
companies can stay more focused on their core competencies while keeping up with the
newest technologies to maintain a competitive edge.
At the same time, however, many possible issues may arise during the process due to the
way outsourced software projects are developed – they are managed, designed, constructed
and tested by employees of another company at a remote location.

1


With this model, communication would become more critical for the onshore stakeholders to
understand project status, build trust with the offshore teams and have control in terms of
quality and timelines of

2


deliveries. Therefore, partnering with a mature offshore development centre that fulfils all
the needs determines the success of an organization’s outsourcing strategy.
In this paper, we are going to introduce a maturity model for an ODC either wholly
owned by the organization initiating software projects or as a third-party partner of this
organization. The model has been developed based on best practices of 3 well-known

international banks, managing offshore software projects with distributed teams across LATAM
(Latin America), EMEA (Europe, the Middle East, and Africa), and APAC (Asia and the Pacific
Region countries).
This model works well to serve the aforementioned Wall Street firms’ IT strategies. For
non-banking industries, this maturity model would work just as well because most of these
best practices are not banking industry specific.
2.Key functions and best PRACTICES

Fig. 1

The organizational structure of an ODC can be defined according to its operational model
and management style. However, necessary functions have to be put in place for the centre
to function well and serve happy clients. With the three global banks I have worked with as a
department head at their offshore centres, these key functions include the Software
Development Division, the Project Management Office (PMO), Finance, Human Resources,
Vendor Management, Billing, Compliance, Legal, Information Security, and Administrative
Support, etc. Please see Fig. 1 above for a visual structure.
For a bank-owned offshore software development centre, these functions roll up their
reporting lines within the bank’s technology group. For a third-party centre, their
development teams are structured as extensions of the onshore teams while having their own
organizational chart for the other key functions within the company.

12


In this section, we are going to look at these key functions and highlight some of the
most important programs, processes, and submodels that are considered as attributes of a
‘mature’ ODC. Please note that all the following discussions are based on my first-hand
experience working at the banks’ offshore software development centres between 2010 and
2013. My role was a business unit manager, supervising between 80 and 280 offshore

technical resources. The 3 banks’ names are not disclosed as I was neither forbidden from
nor given explicit permission for sharing this information with the public audience.
3.The Development Division
Structure
The development division is the body of all technical resources providing software
development services. Normally it is divided into different departments, business units or
teams. For a centre that supports global and regional projects across multiple countries, the
total size of their development teams indicates their potential capacity for delivering largescale projects. This type of development centres are normally third- party providers. For a
centre that supports business of a single company, the total number of developers often varies
from hundreds to thousands. They are normally based at a single location or have multiple
offices within a same country. A centre of this type is more likely a wholly owned subsidiary of
the company itself.
Again, for a wholly owned subsidiary centre, reporting lines of their development teams
go up to the respective onshore teams. For a third-party centre, onshore team managers do
not see their counterparts as their direct reports; yet they have dominant influencing power
on these offshore managers’ annual performance reviews, promotion and career development,
etc.
At a wholly owned subsidiary centre, its technical resources are composed of its own
employees and contractors. Contractors are software developers from other companies
(vendor companies) that work on project tasks on a contract basis. At the 3 banks, the
employee/contractor ratio within each development team varies between 15:85 and 50:50.
Basically the higher the ratio, the higher the per-head cost is. Within each project team, a
cost-effective mix of the resources is the 1:3:6 mix among team leads, senior and junior
developers. This mix has been market proven and also widely adopted at the three Wall Street
banks I worked with.
By the way, other than saving cost, another benefit for having contractors on each team
is the great flexibility for project resource ramp-ups and ramp-downs. With frequent change
in business requirements, project resources often need to be added or removed with very
short notices. With contractors, project managers and Human Resources do not have to deal
with employment contract termination or extension, which can cause legal issues with

permanent employees.
Capability Model
For a software development team, the top three measures of their overall
competitiveness are communication skills, application knowledge and technical capability.
Offshore teams are often based in a country where the local language is different from that of
the onshore team’s. The offshore team either has to communicate in a language that is the
media of communication for the onshore team or they both have to speak a foreign language,
most often English, at work.
Consequently, the offshore team is often required to hire resources fluent in a foreign
language that allows both parties to communicate in a professional work environment. Note
that communication skills do not merely mean the ability to use a certain language. With
a sufficient level of language fluency, a good communicator should also be mindful of

12


cultural and mind set differences during a conversation. This is a very valuable skill for all
offshore resources, especially for those holding manager positions at the offshore
organization.

12


Technical Capability
In the above three areas, offshore resources’ technical capabilities are always assumed. It is
very important that offshore developers are up to date with the latest technologies or tools by
continuous learning. One not- so-obvious issue related to this self-improvement in the
technology space is that software professionals are advised to read English technology
books, use English online resources, and join international online communities, as English is
the most dominant language in the software outsourcing industry. I learned from my personal

experience that not knowing English technology terms is taken as not being competent in
technologies by the onshore colleagues, which can be an unfair view of the offshore team’s
real technical capabilities. The key point I would like to make here is offshore developers are
often judged by how good they appear to be during technical conversations. For those who
do not participate actively in conference calls, email discussions, meetings will definitely be
labelled as mediocre or even weak people by managers regardless of how much valuable
work the person has done to the team.
One practical issue though is most English technology books are fairly expensive and yet
have a comparatively short shelf life. For many software developers, it is an expense that they
want to avoid bearing. One proven solution is a small collection of the most recent technology
books owned and managed by each department within an ODC’s development division.
Communication Model
Communication is the most significant element that influences the overall client satisfaction.
This maybe a little counter-intuitive in that we normally believe delivery quality should
influence client satisfaction the most. To understand this puzzle, we need to know that
delivery quality does not have a mathematical formula to compute with. Conversely, it is
greatly influenced by human subjectivity, which is heavily affected by communications on
different levels between the onshore and offshore teams. Having said that, we do not mean
that delivery quality is unmeasurable and unimportant. Communication cannot change a fact
that low quality software won’t support any business successfully. But in reality, a project
delivered on time and within budget can be still considered ‘unsatisfactory’ if communications
do not go well during project development. Communication models between onshore and
offshore teams often fall into two types – a centralized model and a parallel model. A
centralized model heavily relies on offshore managers and team leads for
communications on all issues between the two groups. Offshore developers do not get
involved in any discussions with their onshore counterparts. They work closely with their local
team lead on progress, issues, and questions, etc. A lot of times, offshore project managers
are asked to work onshore on a rotation basis. That way, each offshore team has one
communication channel with their onshore colleagues. For a centralized model, managers of
both sides receive project status updates by weekly reports, conference calls and/or faceto-face meetings.

A parallel model requires direct communication between the two teams over conference
calls, emails, and communicators. The advantage is enhanced transparency and more
responsive updates. One thing to note is, for the offshore team, this many-to-many
relationship in communication may cause inconsistent or even conflicting messages going
through different channels. In this case, rules for providing status information on project
progress, ETA, or resource change need to be managed properly within the team. This is an
area that may create serious trust issues if not managed carefully.
With the banks I have worked with, one of them used a centralized model while two other
banks used a parallel model. Both worked fairly well for their communication needs.
Career Development Programs
Offshore development teams normally experience high attrition rates due to the nature of
the business. In India, attrition rates in the outsourcing industry range between 15 – 50% a


year [3]. In China, on average, a complete offshore team gets replaced by brand new
people in 3 years, according to my own experience managing offshore teams based in 3
Chinese outsourcing hubs - Shenzhen, Shanghai and Dalian. There are


many reasons for this high attrition issue, among which how much you care about their career
development is a major one.
Offshore development teams should have career development programs that address the
whole team as well as its core team. The core team, also known as the ‘middle layer’ at
many centres, is considered the backbone of the whole team, which includes resources strong
in communication, application knowledge and technical skills. It is comprised of permanent
staff and contractors in different roles that include project managers, team leads, senior
developers and junior developers. Building a strong ‘middle-layer’ within each development
team or a business unit is critical for maintaining team stability, talent retention, client
confidence, etc. To each individual within the core team, there is a clear career path laid in
front of them, which motivates people to stay longer with the company.

Career development programs have similar sub-programs among different ODCs. Most of
them focus on these aspects such as upskilling, work site rotation, job rotation and mentoring
etc.
Technical resources at an ODC commonly have stronger technical skills than their
communication and presentation skills (in English). This is often true even for senior resources
like offshore project managers and team leads. Improving these soft skills requires
continuous practice over a longer period of time. All my previous supervisors at the banks
suggested that key resources in my department conduct biweekly or monthly teaching or
training sessions on the applications they were supporting. It had to be done in English using
Power Point slides. The audience was all resources in the department scheduled by each team
managers for each session.
Giving presentations not only improves one’s ability to present your work to onshore
colleagues, achieving recognition, but it is also an important part of sharing knowledge to coworkers. The ability to do so effectively can greatly enhance one’s career success. The
audience receives knowledge helpful to their day to day work but also provides feedback to
the presenter on the content and delivery of the presentation.
Work site rotation means offshore resources get a chance to work onshore for a certain
period of time. Every year, a rotation plan is made with onshore project managers to
secure a budget for a number of resources. During the year, resources from the offshore core
team are deployed to the onshore site so they will be working face to face with otherwise
remote colleagues. It plays a key role for their learning, making personal connections and
building trust with onshore colleagues.
Job rotation is often organized at the company level, not department level. It is part of a
corporate initiative for employees’ career development addressing those with exceptional
performance ratings. It is a supplementary program for career development as it only
addresses a very small percentage of employees.
The mentoring program is often driven by the head of a department within the development
division. It is normally conducted monthly, focusing on a different topic every time. The
audience is the whole department. Here are examples of some good topics for such mentoring
sessions –
 How to communicate effectively (in English) at the workplace?

 How to choose/build a career path right for yourself?
 How to make yourself comfortable at the workplace?
 How to become a very technical person here?
 Do I need international work/study experience to be successful on this job?
At one large offshore subsidiary centre I have worked for, statistics provided by the Human
Resources Department showed that departments with more regular ongoing career
development programs have clear negative correlations with their attrition rates. A
department having a core team development program has substantial lower attrition rates on


their permanent employees compared with those that do not have such one. For instance,
the department I was heading had lost 2 permanent employees out of a total of 45 during
2011 – 2013, including one internal transfer to the regional technology centre in Singapore and
the other one a termination of employment contract, also known as ‘Attrition Non-Regret’. A
peer department that did not


have an ongoing ‘middle layer’ program during the same period had 8 ‘Regret’ losses out of
a total of 50 permanent employees, which was over 4 times of our attrition rate.
 Project Management Office (PMO)
A project management office, abbreviated to PMO, is a group or department within a
software company that defines and maintains standards for project management within the
organization. The PMO at an offshore software development centre strives to standardize and
introduce methodologies, guidance and metrics on the practice of project management and
execution. Offshore development teams hand in their weekly timesheets to PMO for
review and approval. Offshore project managers have
to turn in their project
management plans and quality assurance plans to PMO for review and appraisal. At many
software development centres having a PMO, part of the annual performance reviews for
offshore project managers comes from the PMO office. For those managers who receive a

weak rating will be offboarded to become a bench resource by the PMO office. In practice,
PMO also works as a liaison between project owners and offshore senior managers for
evaluating offshore project managers’ performances, consequently improving timeliness of
project deliveries and their quality.
 Finance
To put simply, a Finance Department is the part of an organization that manages its money.
The business functions of a Finance Department typically include planning, organizing,
auditing, accounting for and controlling its company's finances. [3]
The Finance Department of an ODC has similar responsibilities as any other
organization’s Finance Department. However, for a wholly owned subsidiary centre, profit
maximization is often not a main objective as compared with a third party centre. The reason
is a wholly owned subsidiary centre’s main purpose is to provide predictability of software
development cost to all internal project owners. This predictability provides an important basis
on which senior executives make their strategies, not only for the IT organization of the
company. So it is important that finance planning is done according to this main objective.
Rising human cost is a huge factor to consider when choosing offshore software providers,
including its own subsidiary centres. Not being able to manage costs within a given budget
puts a CIO’s career at risk. That is why CIOs prefer software centres having good team stability,
project delivery quality, and hence predictable costs.
For one wholly owned subsidiary centre I have worked at, a fixed 10% net profit margin
was one of the most important financial metrics on their income statement.
 Human Resources
The Human Resources Department provides services to its own employees at the software
development centre. Contractors on development teams are not considered as employees. It is
the responsibility of Vender Management to take care of them for certain issues during the
time they are put on projects.
The Human Resources Department’s scope includes these areas such as employee
performance review, promotion, compensation, career development, training, employment
contracts, headcount acquisition, etc. As a wholly owned software development centre, its
Human Resources Department does not have their own processes and models but follow the

ones from those of the parent company or the onshore organization.
For the banks I have worked for as an offshore centre manager, attrition rates of their own
employees by team are monitored and published every month. Talent retention is a joint effort
of both development team managers and Human Resources. Every year, performance review,
compensation review and promotion are conducted according to stringent guidelines received
from Human Resources. Before final results are announced, Human Resources will publish
templates for conducting communication to all team managers. Managers have to follow the
templates during communication with their employees and provide written feedback on


employee responses to Human Resources. By following these guidelines and templates, the
whole process becomes more transparent and more professional. As the head of an online
banking department with 235 contractors and 45 permanent staff, I lost 2 permanent staff in
total during 2 years of my tenure there. One


was an internal transfer and the other one was a layoff. That was a great achievement in
terms of talent retention.
 Vendor Management
It is a common practice that offshore software development centres hire contractors from
other outsourcing companies to work on their projects. Potential benefits are many – great
flexibility for on- and off-boarding project resources with short notices, lower operational costs,
extra talent acquisition channels, etc. The Vendor Management Department is responsible for
all vendor-related issues and typically has the following areas of work: select and manage
vendor companies, hire, onboard, and offboard contractors according to staffing needs,
monitor and review vendor performances, provide feedback to them, and develop relationships
with the vendor companies, etc.
Vendor Management often works with multiple vendor companies selected during their
annual reviews. The number of vendors chosen depends on many factors but generally
speaking the number should be kept manageable, often between 3 and 10. Having multiple

vendors is also a necessary strategy to get the best technical resources with short notices,
competitive rates and 7x24 support to the business.
In recent years, there is a growing trend that the vendor management business gets
outsourced from many offshore software companies. Based on my personal experiences
with the 3 international banks, vendor management is considered as a critical function to the
success of the outsourcing strategy. Moving such a key function to a third party provider has
to be done with great caution. As of now, the three banks’ offshore providers I have worked
for are still doing this with their in-house team.
 Billing
The Billing Department works closely with Vendor Management, Project Management
Office and the development teams to prepare billing documents and get them approved by all
cost centre owners or project owners every month.
A popular billing model is a flat-rate model, which means project owners are billed by the
number of resources working on their projects each month multiplied by a flat rate. Technical
resources, regardless of their seniority or role, charge a single rate that does not change
during the year. The rate gets reviewed annually by the senior management team of the
centre and approved by the clients’ senior managers and their finance department.
A common practice with this model is that project owners normally ask for 5-10% bench
(non-billable) resources on their project teams. These bench resources are mostly junior
developers (contractors) from vendor companies that are free of charge for a certain period of
time, normally 3 months. For the vendor company, they need these junior resources trained on
the job so later on it is easier for them to get hired as experienced billable resources. For
project owners, they often receive ad hoc or urgent requests from the business they support.
When that happens, they can quickly respond by deploying available (experienced) resources
on these urgent needs and make them billable ones if they were not. So this practice creates a
win-win situation for both parties. In case a bench resource does not become billable for an
agreed upon period of time, the vendor company may choose to redeploy the resource to
another project.
Overall, this flat rate charge model is popular in the industry. All three ODCs I have worked
at all used this charge model for billing the project owners.

 Legal Department
According to Deloitte’s 2014 Global Outsourcing and Insourcing Survey [4], nearly two-thirds
(65%–67%) of the surveyed organizations outsourced legal opinions and counsel, and more
respondents (15%–23%) said they would plan to do so. For offshore software development
organizations, having an in-house legal department is often neither cost-effective nor
necessary. Outsourcing its legal department is a popular practice as most of the time they are


dealing with employees’ compensation and contract issues, which do not occur on a regular
and frequent basis.


For the offshore centres servicing the three Wall Street banks mentioned above, they all
choose to work with a local law firm on a contract basis for their legal needs. Between early
2010 and June 2013, the only occasions when legal assistance was needed are listed below
for your information:
o A dispute with a client company regarding a potential acquisition. (at a third party
centre)
o A dispute with their employees regarding exercising their stock options. (at a
third party centre)
o Negotiation on acquisition terms with an acquiring company. (at a third party
centre)
o Termination of an employee’s contract who developed a mental disorder. (at a
wholly owned subsidiary)
This gives a quick idea about how often and in which areas offshore software development
centres need legal services. It is obvious that having an in-house legal team to handle this
amount of work during 3 years was not cost effective at least. This is why outsourcing its legal
business to a third party provider becomes a more popular practice for an ODC.
 Information Security
The Information Security Department at a wholly owned software development centre

enforces the Intellectual Property Protection contract as its top responsibility. For third party
centres servicing multiple clients, they also have to ensure that a Non-Compete Agreement is
strictly followed.
To help enforce them, the Information Security Department offers training sessions to
all technical resources regarding the rules on source code management, password
management, the use of email, data storage devices and cell phones at the work place, etc.
Other than training, they also conduct regular and random checks to make sure everyone
follows the rules. For violation of any of the rules, an employee or contractor would be
subject to penalties ranging from a formal written warning notice up to, and including,
termination of contract. One extreme instance was a permanent employee of the bank was
forced to resign due to his negligence of the email rule – sending source code to his personal
email account.
Software source code is made inaccessible to anyone whose job does not require direct
access to it, including the bank’s own employees. So keeping one’s own passwords private for
development, testing and production accounts has to be treated with great care. Passwords
written on notes pinned on cubicle walls, pasted on computer screens or put loosely on
desktops are taken as a serious violation. So is the use of USB drives or other storage devices
for making copies of the source code. At another bank’s offshore centre, bench resources are
denied access to the work space of billable resources. Entry control is done by activating and
deactivating badges for opening turnstiles at the entrance.
Work from home is a popular practice for software developers at many companies. But
for offshore technical resources, it is only approved on a case by case basis and available
only to permanent employees who have been with the company for a long enough period of
time. Information Security will also have to give approval on which computer can be used for
this purpose.
So overall, Information Security is a key function for protecting one’s Intellectual Property
when outsourcing IT projects overseas.
 Administrative Support
The Administrative Support Department’s responsibilities can vary from centre to centre.
But basically they take care of everything that other functions do not perform. Let’s take one

large offshore centre owned by a bank I have worked for as an example. Their work scope
covers business travel logistics, English teaching, onboard/offboard processes, new staff


orientation, seat management, information system account management, and meeting room
management, etc.
To control travel costs, all air tickets and hotel room bookings are done by the administrative
support staff. Employees’ business travel plans need to get approved before they are
forwarded to Administrative Support. Then one member of the support staff will be assigned as
the responsible owner. He or she would purchase air tickets and make room reservations
through a partner travel agency according to the travel plan.


At the same offshore development centre, English training programs are made available to
permanent employees all year round. Contractor’s English programs are provided by
respective vendor companies, which are coordinated and managed by each individual
department under the Software Development Division. The group of English teachers are
contractors managed by the Administrative Support Department. The rest of the
administrative support team manages onboard/offboard processes, new staff orientation,
seats, information system accounts, and meeting rooms as mentioned before.
 Compliance
The Compliance Department is designed to ensure compliance with all applicable laws, rules
and regulations [2]. Depending on the business of the financial institution, these duties may
range from monitoring trading activities, preventing conflicts of interest and ensuring
compliance with regulations to prevent money laundering and potential tax evasion at large
banks.
All employees of the ODC are required to maintain compliance in day-to-day activity,
especially those having regular contact with the business department and clients. In order to
help satisfy this, an ODC should develop and offer annual continuing education courses that
cover the various compliance-based topics.

The Compliance Department should also use special software that monitors incoming
and outgoing communications employees have with the external parties. In case any
potential issues are detected , they will be forwarded to the Compliance Department for
immediate review.
This is the only special function for wholly owned subsidiary centres of a financial institution.
Third party software providers do not need a Compliance Department inside their
organization.
 The maturity MoDel
Based on the above best practices at the banks’ offshore development centres, we are
suggesting a model that is illustrated below

Onsite Development:
Onsite Development is the service of providing the required number of software
developers at our client's premises for certain duration, to carry out the software
development process under their supervision. This process gives us an opportunity to
closely work in co-operation with client's representatives to ensure that the project is
completed on/before time. This process is also backed by our offshore unit to
supervise the project remotely. This type of services helps us to understand the
client's requirements and expectations, intensely.
Onsite/ Offshore Combination:


Onsite - Offshore is the combination Model of optimizing the efficiency and cost of Software
Development. We provide the required number of expert professionals at the client's
premises, while the
certain numbers of developers work offshore from our premises. This service is provided
to closely


understand the customer's requirements through our onsite team and cost-savings of client is

done due to offshore development centre.
Build - Operate - Transfer (B.O.T):
Build - Operate - Transfer is an outsourcing model where the IT entrepreneurs prefer
offshore outsourcing as a reliable solution to satisfy their technological needs. This is
the process of providing
efficient developers to the client to get the work done. Also, client's cost-saving is optimized
since certain processes are carried out offshore. These types of outsourcing services are ruling
the market globally
4.Conclusion
Achieving the expected result in serving an organization’s IT needs depends largely on the
right choice of an offshore software development centre. Whether you are considering finding a
third-party ODC or building one for your own company, this model would give you deeper
insights to help you make prudent decisions. The above model works well to serve the 3 Wall
Street firms’ IT strategies. For non-banking industries, this maturity model would work just as
well, as these best practices are not industry-specific. For IT start-ups or companies
experiencing shortages of technical resources, a mature offshore software development centre
can
also be a great solution.
REFERENCES
/> /> /> />


×