Global Software Development
Overview
• Process Management
• Effective Partitioning
• Skills Management
• Team Selection
• Case Studies
Three Cases for
Discussion
throughout
session
Factors that need to be considered
Project Management Culture Communication FearGSD
1. The challenges of embedded knowledge
• Client: Norwegian subsidiary of company with 13 000 employees located across Europe
(headquarters in Finland, primary Nordic focus, providing consultancy services on business
systems)
• Activity: redesign of a payroll management system used by nearly 11000 small and medium sized
companies in Norway
• Vendor: Russian company (St. Petersburg, 110 employees, part of the Fort Ross Consortium) • Interesting aspects: trust, domain knowledge,
language barrier, project management, lack of formal specifications.
Russian-1999 – negotiations started
Delphi -> MySQL
After 9 months, Norwegians visiting Russia
Norwegian PM appointed
Russians working on an estimate
After 5 months: near-breakdown Russian reps visiting Oslo
15 Mb no specs no internal knowledge hidden costs no direct communication no common language lack of embedded knowledge
sailors working abroad foreigners working in Norway
people living in Northern Norway
Lessons learned
• “Don’t outsource your problems!”
• The importance of trust, informal
relationships, social networking
• The enthusiasm on the vendor side – learning
Norwegian, willing to find out more about the
Norwegian culture
• The importance of context – understanding
the Norwegian pay & taxation system –
“embedded knowledge”
Moving from
local to global
development
what global
process do we
implement?
• Defined Roles and Responsibilities • Risk • Coordination • Visibility • Tools • Technical Support • True Cost • Reporting requirement • Information • Process Management • Effective Partitioning • Skills Management • Team Selection
Project Management
Process Management
• Process for software development (Iocal/global)
• Specific requirements of Global Software
Development
– For example, escalation and communication procedures
• Shared developed ownership
– Good software practice .. Processes developed by those closest to the process
– Negotiation of process – Level 5 vs Level 3
Process Management
• Exclusive ownership
– Does not allow for cooperation – Alienation of team members
• Clearly defined and documented
• Establish common goals, objectives, rewards
• Training provided
• Good processes can remove communication
requirements
Effective Partitioning
• Partitioning of development
– Architecture
Partitioning of Development
• Consider division
– What is the system architecture?
• Consider integration
Siemens Global Studio Project - Module
Partitioning and Integration
Relating Architecture to business goals
• How does technical decision affect
business goals?
– Product lines
– Regulatory considerations
– Cultural influences
Partitioning of Development
• Risks and trade-off
• Global Software Development
– Greater complexity
– Need to understand risks
– Know where potential mismatch can cause
problem
GSD and Architecture
• Making drivers explicit
– Distribution of teams does not allow correction in timely manner
• Distributed teams do not share intuition
• Technology choices based on skills
– Developers outside organisation – Unfamiliarity with domain
– Skills not known by architects
Partitioning of Teams
• Manage the partitioning
– Requires more communication
– Requires more technical knowledge
• Determines level of communication between
teams
• Determines level of support required between
locations
• Strategy should take team communication
into account
Partitioning of Work
• Partitioning of development
– Architecture
2.
Keeping the knowledge and partitioning the work
• Client: US Fortune 100 manufacturer of industrial
equipment with over 75,000 employees spread across 20 countries
• Activity: development and deployment of embedded software systems
• Vendors: two big software providers + one small specialised company (all in India)
• Interesting aspects: partitioning work, IP protection, motivation, strong&weak ties, networking, liaisons, knowledge transfer, personnel retention
(Rottman, J.W.-Knowledge Transfer within Strategic Alliances, First Information Systems Workshop
motivation work partitioning IP protection networking knowledge transfer liaisons weak ties personnel retention strong ties talent pipeline
Lessons learned:
• Maintaining an own strong development
team; motivating it for sharing
• Overlap of liaisons on site
• Securing the supplier employees’ fidelity for
at least 1 year
• Visits to India; informal relationships
encouraged
• Several suppliers, different components
• IP protection, competition among suppliers
Communication Language Communication Tools Knowledge Transfer Temporal Issues Motivation Information Skills Management Training Project Management impact
Communication
Culture Coordination Cooperation Knowledge Transfer Communication Project Management Risk Training impacts
Culture
• Defined Roles and Responsibilities • Risk • Coordination • Visibility • Tools • Technical Support • True Cost • Reporting requirement • Information • Process Management • Effective Partitioning • Skills Management • Team Selection
Project Management
Skills Management
•
Awareness regarding all staff
• Including remote team members
•
Capabilities and skill levels
• Academic and technical knowledge
• Experience relating to current position
• Knowledge of English (where relevant)
•
Available to project managers and trainers
Team Selection
•
What is the strategy for team selection?
e.g. Leverage local experience combined with cheap and effective labour costs
•
Technical requirements of projects
•
Document structure of teams
•
Roles, responsibilities, relationships, rules
•
Successful management
• Coordination and operation of teams
Team Selection
•
Skills availability on team
• Including remote team members
•
Team set-up
• Full remote team with local management
• Half-and-half
• Small remote team managed from onsite
• Dual reporting
•
Onsite / local experience
• Synchronise support
• Impact on team operation
3. A “job producing machine” in Poland
• Company: German software and consulting services provider (1100 employees in 6 locations in Germany and Switzerland)
• Activity: billing system as part of a larger CRM system for an automotive company
• Subsidiary: created in 2004 in Poland with fresh graduates
• Interesting aspects: nearshoring, mentorship,
knowledge transfer, social capital, motivation, trust, common language
Wieandt, Michaela - The Development of Knowledge Transfer and Collaboration in a Nearshore Software Development Project, First Information Systems Workshop on Global Sourcing: Val d'Isère, France 13-15 March 2007
common language nearshoring mentorship knowledge transfer social capital motivation trust
Lessons learned
• Onsite apprenticeship for knowledge transfer
• Motivation and trust on the German side
• Polish employees included in the social life of
the German site
• Personal relationships created – reciprocal
visits
• Learning through network and personal
dialogue - knowledge-as-practice-approach
• German as common language
Emerging themes
• Creating an atmosphere of trust
• Motivating employees for knowledge transfer • Good project management – a must!
• Appropriate work partitioning
• The importance of communication tools and of corporate culture
• Hidden costs of distributed work • Maintaining onsite developers
• Mutual knowledge, transactive memory systems • Social capital – a prerequisite of success
• Defined Roles and Responsibilities • Risk • Coordination • Visibility • Tools • Technical Support • True Cost • Reporting requirement • Information • Process Management • Effective Partitioning • Skills Management • Team Selection
Project Management
In summary
• Global Software Development is an
expanding trend
• Industrialists and academics need to be
prepared to understand and implement GSD
• There are benefits to be gained from GSD if
implemented correctly
• There are difficulties which will arise if not
implemented correctly
• Management need to implement an informed
GSD strategy in their organisation
Questions and
Comments
Acknowledgements
• Research underlying GSD tutorial content has been supported by:
– Science Foundation Ireland Investigator Programme, B4-STEP (Building a Bi-Directional Bridge Between Software ThEory and Practice)
– Science Foundation Ireland cluster project, GSD for SMEs – Siemens Corporate Research Global Studio Project
– A multi-national organisation in Ireland.
• Input to this tutorial was received from Dr. Gabriela Avram (SFI cluster project, SocGSD) and from
Valentine Casey and Alan Malone, post-graduate students at the University of Limerick.
References
• Lipnack, J. and Stamp, J. (2000) Virtual Teams:
People Working Across Boundaries with Technology,
John Wiley & Sons. Inc, New York.
• Powell, A., Piccoli, G. and Ives, B. (2004) Virtual
Teams: A Review of Current Literature and Direction for Future Research, The DATA BASE for Advances
in Information Systems, 35, 1, 6 - 36.
• Sangwan, Raghvinder, Matthew Bass, Neel Mullick, Daniel J.Paulish, Juergen Kazmeier, Global Software Development Handbook, Auerbach Publications,