Title: Adapting modern software development management methodologies and frameworks to offshore outsourcing
1Adapting modern software development management
methodologies and frameworks to offshore
outsourcing projects
- Vladimir Pavlov, vlpavlov_at_ieee.org
- Andrey A. Terekhov, ddt_at_tercom.ru
2About the authors
- Vladimir Pavlov (Ukraine)
- CTO of eLine Software, Inc.
- Microsoft Endorsed MSF Practitioner, MCSD for
.NET, MCSD, MCDBA, MCT, CompTIA Certified IT
Project - Member of PMI, ACM, IEEE and IEEE Computer
Society - Andrey A. Terekhov (Russia)
- CEO of LANIT-TERCOM
- PhD in Computer Science
- Microsoft Endorsed MSF Practitioner, MCSD,
(ex-)MCT, IEEE Certified Software Development
Professional - Member of ACM, IEEE and IEEE Computer Society
3This presentation is based on
- authors experience in
- Managing large software outsourcing projects
- We had a chance to look at this kind of projects
from both sides of the ocean - Conducting process audits and process
reengineering projects for software development
companies - Managing MSF implementation for software
development companies
4In this presentation
- We will use MSF in our examples. To understand
these examples one is not required to know MSF,
however some experience in at least one of modern
IT management methodologies/frameworks (RUP,
MSF, CDM etc.) is needed - The Microsoft Solutions Framework (MSF) is a
collection of Microsoft's proven practices on
managing successful IT projects - Microsoft almost does not market MSF and they are
not selling it, instead, they focus on making
money using MSF - Similar to Windows or any other product, MSF
evolves and matures as long as new versions are
released. Initially Microsoft made MSF available
in 1994. The latest version of MSF is 3.0 and it
was issued last year - You cannot buy this product from Microsoft, but
you still can get it its free. Both
whitepapers describing MSF and sample templates
for MSF lifecycle deliverables are available on
the Microsoft web-site
5Software outsourcing typical models
Different models may require different approaches
while adapting modern software development
management methodologies and frameworks to
offshore outsourcing projects
NIS
US / Europe
Development company
Mediator company
Client
client gets PRODUCT or service
development office provides SERVICE
Development office
Main office
Client
NIS - Newly Independent States (Russia, Ukraine
and other former Soviet countries)
6Software outsourcingthe broken phone game
NIS
US / Europe
Technical guys
Businessguys
Client
- When a techno guy speaks to a business guy, some
information is often lost or misinterpreted - When two guys from different countries speak over
the ocean, some information is often lost or
misinterpreted - So, what happens when a techno guy speaks to a
business guy over the ocean?
7MSF Team Model
Delivering the solution within project constraints
Program Management
Satisfied customers
Building to specification
Product Management
Development
Communication
User Experience
Test
Enhanced user effectiveness
Approval for release only after all quality
issues are identified and addressed
Release Management
Smooth deployment and ongoing operations
8Software outsourcing all functional areas should
be covered on both sides
US / Europe
NIS
Program management
Program management
Product Management
Product Management
Development
Development
User Experience
Test
User Experience
Release Mngmnt
Release Management
Test
9MSF Foundational Principles for distributed teams
- There is a number of MSF Foundational Principles
- Clear accountability, shared responsibility
- Empower team members
- Focus on business value
- Shared project vision
- Stay agile, expect change
- Foster open communications
- Learn from all experiences
- Invest in quality
- It is not simple to implement some of them for
distributed teams, so special efforts may be
required
10Risk management for software outsourcing projects
US / Europe
NIS
11ONE transparent risk management process for both
sub-teams
US / Europe
NIS
12How many borders do we have?
NIS
US / Europe
NIS office
US/Europe office
Client
cultural differences
language barrier
timeshift
13Cultural differences
- In Western countries people traditionally pay
serious attention to formal management
approaches. In NIS management is often treated
differently - Readiness management procedures may require some
adaptation for NIS teams
14MSF Readiness Management Discipline
Define
Knowledge,Skills, Abilities
Assess
Evaluate
Change
15A few words about readiness
- Readiness management is one of the least
understood (and least implemented) practices in
NIS outsourcing companies everybody claims that
human resources are the most valuable capital,
but virtually nobody invests in it - It is often unwise to rely on programmers
self-assessment. Statement 5 years of Java
experience on a resume may actually refer to 5
years ago I read a book about Java - On the other hand, certification exams often cost
much less in NIS comparing to US/Europe, so they
can be used for assessing team readiness. For
example, Microsoft certification exams cost 125
in US and about 40 in NIS.
16A few words about management
- Many people in NIS still treat management science
as something useless and vain. This kind of
perception is inherited from Soviet times, when
Universities were allowed to teach only
ideologically proven management. - Lack of technical competence is more noticeable
than lack of management competence
17Language barrier
- English is the language for software developers
over the world - However not every developer in NIS speaks English
well - Training is usually required, and it should be
provided by employer - Crucial documents are to be translated to Russian
18Software development managers should be familiar
with some standards and whitepapers. Are these
docs available in NIS?
19Time shift
- Good example of how a risk could be transformed
into an opportunity - If managed poorly time shift can cause delivery
delays - If managed properly it helps speed up development
process. A design idea, documented in US today,
is prototyped by NIS programmers by US tomorrow
morning
20Inheritance helps minimize bureaucracy
General style and coding standard
C coding standard
C coding standard
C coding standard
C coding standard
Java coding standard
Java coding standard
21Reorganize your policies to minimize bureaucracy
US / Europe
NIS
US/Europe Office
NIS Office
Standard
Standard
Standard
Standard
Standard
Standard
Standard
Public Domain
Standard
Standard
Standard
Standard
22All stakeholders should beinvolved in postmortem
Unfortunately, it is not a common practice for
offshore outsourcing projects today
NIS
US / Europe
P O S T M O R T E M
23Adaptation principles
- Different adaptation approaches may be required
for different outsourcing models - All functional areas should be covered on both
sides (development and mediator companies) - One transparent risk management process for all
sub-teams - Cultural differences should be taken into account
while performing readiness and project management
activities - Language barrier should be assaulted from both
sides - Bureaucracy is to be minimized. Inheritance will
help - All stakeholders should be involved in postmortems
24MSF for outsourcing projects
- MSF is more suitable for outsourcing than other
process models, for its iterative development
model allows delivery virtually on every stage - Explicit definition of trade-off priorities is
especially important for outsourced projects. MSF
trade-off matrix helps to achieve this. - Another important technique is daily builds. This
could be generalized by saying that formalization
of any daily procedure is important for
geographically distributed projects - However, high development and management culture
is required from all involved parties to use MSF
for outsourcing projects
25See also
- MSF Resources
- http//www.microsoft.com/msf (English)
- http//www.microsoft.com/rus/msf (Russian)
- How to train managers for IT industry? by
V.Pavlov and A.A.Terekhov (available in Russian
only) - http//www.it-education.ru/reports/pavlov_terekho
v.htm - http//www.it-education.ru/reports/presentation/p
avlov_terekhov.ppt - Microsoft Solutions Framework for enterprises
and universities by V.Pavlov (available in
Russian only) - http//research.microsoft.com/collaboration/univer
sity/europe/events/RCC/Russia/content.aspx?05 - "Software Process Improvement in Russian Company
a Case Study by V.Kiyaev, A.A.Terekhov - http//users.tepkom.ru/ddt/articles/SPI_in_Russia.
html (English) - http//www.nsda.ru/home.asp?artId129 (Russian)
- Formalization and Automation of Global Software
Development Processes by V.Kiyaev, I.Sobolev,
A.A.Terekhov, B.Fedotov - http//users.tepkom.ru/ddt/Articles/DistributedDev
elopment.html (English) - http//users.tepkom.ru/ddt/Articles/DistributedDev
elopment_rus.html (Russian)
26Summary
- In todays highly competitive business
environment the only way to survive for NIS
software development companies is to apply
industry-wide used methodologies and frameworks
(i.e. RUP, MSF, etc.) - Most of these methodologies and frameworks were
initially designed not for offshore software
development projects, so some adaptation is
required - There is a number of Ukrainian and Russian
companies, which have successfully done the
adaptation - We have defined several adaptation principles
based on their experience. We used MSF to
illustrate the principles
27How we can advance your business
- Process audits and process reengineering for
software development companies - MSF implementation for software development
companies - Sharing experience on software outsourcing
- Joint research
- Vladimir Pavlov vlpavlov_at_ieee.org
- Andrey A. Terekhov ddt_at_tercom.ru
28- Our thanks to
- Stas Busygin (eLine Software, Inc.)
- Yuri Gubanov (LANIT-TERCOM)
- Nikolay Kascheev (Mera Nizhny Novgorod)
- Alexandr Lubimov (St. Petersburg Technical
University) - Igor Shturz (Driver-Inter Ltd.)
- Alex Zverintsev (eLine Software , Inc.)
- Some information in this presentation is cited
from the courseware for Microsoft course 1846
Microsoft Solutions Framework Essentials - Questions?
29- This presentation was delivered at the Second
ADONIS Workshop on Software Outsourcing to the
NISKiev, June 19, 2003