Software Engineering. Global Software Development. Werner Heijstek, Leiden Institute of Advanced Computer Science



Similar documents
Global Software Development: Issues, Solutions, Challenges

4/9/13. Global So(ware Development. GSD Roadmap

Preparation for Distributed Development and Outsourcing

INTERNATIONAL BUSINESS & INTERNATIONAL MANAGEMENT

Managing Cross-Cultural Issues. in Global Software Outsourcing

DISTRIBUTED INFORMATION SYSTEMS DEVELOPMENT: A FRAMEWORK FOR UNDERSTANDING AND MANAGING

The Effect of Culture on Human Factors

Virtual Teams and Group Collaboration Technologies:Challenges in Supporting Distributed Groups

ICT Industry in Europe. Outsourcing Fuels Business Growth

T task Distribution and Selection Based Algorithm

Performance Through Relationships. Towards a Cohesive Virtual Intercultural Team

Global Software Development - Coordination and Project Management Strategies from a Vendor Perspective

How Culture Affects your Business Ing. Mansoor Maitah Ph.D.

Chapter 2 Critical Success Factors for Global Software Development

Intern Position. Internship in an Indian Law Firm

Agile Based Software Development Model : Benefits & Challenges

Executive Insight: Multi-Sourcing. By Rudy Vidal, incontact and Matt McConnell, Knowlagent

Scrum Practices and Global Software Development

Using Iterative and Incremental Processes in Global Software Development

Management Across Cultures

Comparing Ethical Attitudes of Expatriates working in UAE. K.S. Sujit. Institute of Management Technology, Dubai

Offshore Software Development Centers in Russia: Risk Mitigation Strategy

Software Exports and Developing Countries : Implications for Argentina

An empirical study on Global Software Development: Offshore Insourcing of IT Projects

Stephen M. Fiore, Ph.D. University of Central Florida Cognitive Sciences, Department of Philosophy and Institute for Simulation & Training

Emerging Trends in Global Sourcing of Innovation

Benefits of Global Software Development: The Known and Unknown

1) Outsourcing ERP systems helps to lower the cost of software ownership and maintenance. Answer: TRUE Diff: 1 Page Ref: 268

Offshore Insourcing in Software Development: Structuring the Decision- Making Process

Scrum on Offshore Development Case Study

Communication in Firm-Internal Global Software Development with China

ON-SITE/NEAR-SHORE/OFF-SITE DELIVERY MODELS

METRICS TO HELP IMPROVE YOUR WORKFORCE PRODUCTIVITY

Quality Assurance Assessment in Global Software Development

CONSULTING SERVICES Business & technology consulting and managed services

TEACHING INTERCULTURAL COMMUNICATIVE COMPETENCE IN BUSINESS CLASSES

ROMANIA S COMPETITIVE ADVANTAGES ON THE GLOBAL OUTSOURCING MARKET

Communication Risks and Best practices in Global Software Development

Technological support for distributed agile development

Communication Risks and Best Practices in Global Software Development during Requirements Change Management: A Systematic Literature Review Protocol

Business Process Outsourcing and IT-enabled services

The Business Case for Unified Communications November 2013

Managing Requirement Risks in Global Software Development

Mitigating Coordination Costs in Global Software Development Using Scrum

Performance of Infosys group for the Third Quarter ended December 31, 2007

CENTRALIZED CONTROL CENTERS FOR THE OIL & GAS INDUSTRY A detailed analysis on Business challenges and Technical adoption.

UNIVERSITY OF BELGRADE FACULTY OF PHILOSOPHY. Part two: INFORMATION ON DEGREE PROGRAMS

Software Development Processes in Globally Distributed Environment

Human Resource Management in a Multinational Context - Teamwork between Company Management and Human Resource Department

Business Process Outsourcing Location Index. A Cushman & Wakefield Publication

De rol van requirements bij global development

Architecture of a Software Configuration Management System for Globally Distributed Software Development Teams

Modern Management. IT Outsourcing.

Using the Cloud to Facilitate Global Software Development Challenges

Postgraduate Studies MASTER S (2ND CYCLE) PROGRAM IN ENGLISH LANGUAGE TEACHING (ELT)

GLOBAL OPPORTUNITIES FOR BUSINESS PROCESS OUTSOURCING SECTOR

Global Software Development

Modern practices TIE-21100/

OFFSHORING: MEETING THE CHALLENGE

Leading a Virtual Intercultural Team. Implications for Virtual Team Leaders

Lessons Learned in Software Project Outsourcing

Communication Needs, Practices and Supporting Structures in Global Inter- Organizational Software Development Projects

Choosing Human Resources Development Interventions

The Call to Off-shore

Transcription:

Software Engineering Global Software Development Werner Heijstek, Leiden Institute of Advanced Computer Science Lecture Series for BSc. Informatica en Economie year 2 (Fall semester 2011) Leiden University. Leiden University. The university The university to discover. to discover.

Who Am I? 2 51 Werner Heijstek Ph.D. Candidate at LIACS (Full-time) In the Software Engineering Group headed by Dr. Michel Chaudron Lecturer for ICT in Business M.Sc. program and Computer Science B.Sc. and M.Sc. Programs Research in software engineering Software Architecture and Design / UML Global Software Development Empirical Software Engineering Close collaboration with Industry (Capgemini, Logica, ATOS)

What is a Ph.D. Candidate? Doctor of Philosophy (Ph.D.) Postgraduate academic degree awarded by universities "Philosophy" does not refer to the modern field of philosophy, but to "love of wisdom" (the original Greek meaning) 3 51 Full Professor (Professor) Associate Professor (UHD) Asistant Professor (UD) Post Doctoral Researcher Doctorate (Dr.) 4+ years ( Ph.D. Candidate ) Masters (M., M.Sc.,M.A, Drs., Mr., Ir.) 2+ years Bachelors (B., B.Sc., B.A., Ing.) 3+ years

Global Software Development Introduction definition, synonyms, volume, locations and sources, motivations Distance types of distance, overcoming distance, communication means Sociocultural challenges Models (Hofstede, Trompenaars) Managing global software development 4 51

Definition 5 51 Software work undertaken at geographically separated locations across national boundaries in a coordinated fashion involving real time (synchronous) and asynchronous interaction Sundeep Sahay (Universitetet i Oslo) Involves communication for information exchange. Involves coordination of groups, activities and artifacts so they contribute to the overall objective. Involves control of groups (adhering to goals and policies) and artifacts (quality, visibility & management).

Synonyms and Related Terminology Sourcing Umbrella term; includes eg. insourcing, the practice of utilizing external resources to carry out some function. Global Software Development (GSD) Synonyms: Distributed software development, Multi-site software development or Offshoring Outsourcing Is not limited to information technology Nearshoring Outsourcing processes to a nearby foreign country (atonym: Farshoring) 6 51

More Related Terminology 7 51 Rightshoring Most appropriate and efficient combination of shoring-types (CapgeminiTM) (Synonym: Bestshoring) Backsourcing (or: Reshoring) bringing IT functions back in-house after they have been outsourced Sameshoring Offshoring to a country with a similar cultural background Homeshoring Transfer of Services to home-based employees

Why is Global Software Develoment Relevant? 8 51 More and more the rule, rather than the exception. Even referred to as The new standard mode of software development Most of the Fortune 500 companies apply GSD But: GSD is also associated with higher cost and increased likelihood of project failure

Global Software Development Volume Most of the Fortune 500 companies use GSD, and over 185 of these outsourced to India alone Upwards to 50 nations are participating in GSD IBM, British Airways, Alcatel, British Telecom and General Electric have moved parts of their software development to countries like Ireland and India > 260, 000 projects on sourceforge.org (which is only one of many of these types of sites) 9 51

Motivations for Global Software Development10 51 Cost savings Faster delivery (eg. Followthe-Sun Development) IT Skill shortage Better modularization of Architecture Focus on core competencies Quality Improvements / Continuity Expansion (to gain access to new markets) Competitive advantage (cheaper, faster, leaner, attaining customer intimacy,... ) Expansion with strategic intent (e.g. to establish a presence in a particular local market) Maneuver into a position for mergers or acquisitions Follow the competition

Offshoring Sources 11 51 United States Western Europe

Where to Offshore to? 12 51 Economical factors Cost of labour Practical factors International relations / Reputation Governance Language knowledge / English proficiency Cultural factors Work morale / Efficiency Communication skills

Sourcing Location Canada Canada is one of the top outsourcing locations in terms of volume. Advantages proximity to US similar time zones well educated and computer literate English (and French!) speaking workforce Disadvantages high labor cost 13 51

Sourcing Location Brazil Advantages cheap and efficient labor Disadvantage weak command of English language weak relations with US firms 14 51

Sourcing Location China China is barely in the top 10 of top outsourcing countries. Advantages wages good educational system Disadvantages Far from sources (Real and supposed) piracy of intellectual property Governance / complex business environment English language skills 15 51

Sourcing Destinations 16 51 Top Outsourcing Countries 2010 (out of 26) Cheapest: Pakistan & Egypt (most expensive: The United States) Best Resources and Skills: The United States & India Lowest score: Egypt & Pakistan) Best Business & Economic Environment: The US & Canada (most challenging: Brazil & Pakistan) http://www.sourcingline.com/top-outsourcing-countries/

Sourcing Location India India scores #1 (overall) on every list Advantages wages and tax rates quality of education (Indian) English (official language) Disadvantages (some) political and economic instabillity Challenging Infrastructure Far from sources Bangalore, New Delhi, Mumbai, Hyderabad 17 51

Why focus on India? 18 51

Selecting a Location 19 51

20 51

Practical Implications of Global Software Development GSD introduces three types of distance 1.Geographical distance i.e. The actual, physical distance 2.Temporal distance i.e. Time differences 3.Sociocultural distance i.e. The differences in beliefs, norms, values and customs 21 51

Extra Costs of Offshoring 22 51 source: Offshoring information technology, E. Carmel & P. Tjia, 2005

Overcoming Distance 23 51 Communication and collaboration between team members Coordination Development process needs to be coordinated Control Management must keep in control of the process

Temporal Distance Challenges Communication Being effective (asynchronous communication is less effective due to increased chance of misunderstanding) Coordination Cost is larger (travel, infrastructure cost) Control Delays (wait for next teleconference meeting, send email and wait, search for contact) 24 51

Communication Technology Synchronous Asynchronous phone video conference Netmeeting / Skype Internet Relay Chat (IRC) Instant Messaging e-mail voice-mail discussion list on-line calendar Sourceforge / TRAC Synchronous & Asynchronous document sharing distributed Configuration Management (SCCM) systems file transfer remote access distributed blackboards intelligent SCCM systems experience browser 25 51

Geographical Distance Challenges Communication Effective information exchange (less informal exchange, different languages, different domain knowledge) Build a team (cohesiveness, Them versus us feelings, trust) Coordination Task awareness (shared mental model) Sense of urgency (perception) Control Accurate status information (tracking, blaming) Uniform process (different tools and techniques) 26 51

Geographical Distance 27 51 Activity awareness What are the others doing? Availability awareness When can I reach them? Process awareness What are they doing? Perspective awareness What are the others thinking, and why?

Sociocultural Distance Challenges Communication Cultural misunderstandings (corporate, technical, national) Coordination Effectiveness (vocabulary, communication style) Control Quality and expertise (CMMi level 5 is not a guarantee for quality) 28 51

29 51 American managers have a With the Germans, all hamburger style of one gets is the meat. management. They start with sweet talk the top of the bun. Then the criticism is slipped in the meat. Finally, some encouraging words the bottom bun. With the Japanese, all one gets is the bun, one has to smell the meat

30 51

What is Your Background? Me Dutch Research in an international context Israel (Haifa University) India (Various commercial IT companies in Mumbai) New Zealand (Victoria University Wellington) International Conferences You? Background International Experience Dutch, English, ב רית ע 31 51

Sociocultural Distances Parsons (1951) Kluckhohn & Strodtbeck (1961) Edward T. Hall (1976) identified two dimensions High context cultures vs. low context cultures Polychronic cultures vs. monochronic cultures Geert Hofstede identified five views Power distance, collectivism vs. individualism, feminity vs. masculinity, uncertainty avoidance, long-term vs. short term orientation Trompenaars (1993) identified seven 32 51

Trompenaars' 7 Dimensions of Culture (1 3) 33 51 Standards & Systems Versus Exceptional Situations Universalism Versus Particularism Individual Versus Group Orientation Individualism Versus Communitarianism Controlling Emotions Versus Showing Emotions Neutral Versus Affective Relationships

Trompenaars' 7 Dimensions of Culture (4 7) 34 51 Segmenting versus Integrating Specific Versus Diffuse Relationships Status Based On What You Do versus Who You Are Achievement versus Ascription Different Time Perspectives The importance of punctuality Control Environment Versus Adapt To Environment Internal Control Versus External Control

Hofstede s Dimensions 35 51 1.Power distance status is important versus individuals are equal 2.Collectivism versus individualism Individuals are part of a group, or everyone looks after himself 3.Femininity versus masculinity Earnings, challenges, recognition (masculine) versus good relationships, cooperation, security (feminine) 4.Uncertainty avoidance Strict rules that mitigate uncertainty versus more flexible 5.Long-term versus short-term orientation Persistence in pursuing goals, order (LT) versus protecting one s face, tradition (ST)

Impact on Software Development Lower uncertainty avoidance can better cope with uncertainty can better deal with agile approaches and illdefined requirements Higher uncertainty avoidance Less inclined to work agile, contracts 36 51

On Linguistic Differences Dunglish Also Steenkolenengels (Dutch) = flawed attempt at speaking English Indian English = separate language Very extensive vocabulary / prosaic very limited vocabulary / blunt I am a little bit in the war. The products are produced in fabrics. "Before you show customers your product, you must solve all the children's diseases Speakers know that they are limited 37 51 Himalayan blunder / Always! good name / cousin-brother / uncle & aunty / time-pass / as per Kichiri or ख चड Lakh's and crore's ek minute / general mai Indian English is often preferred by Indians http://www.ling.upenn.edu/~jason2/papers/natlang.htm http://www.languageinindia.com/junjul2002/baldridgeindianenglish.html

Establishing Common Ground How much common knowledge members have, and are aware of Common ground has to be established: Traveling, especially at start of project Socialization (kick-off meetings) Intense interaction is more important for success than CMM level 38 51

Managing Coupling of Work Co-locate Strongly interdependent tasks Tasks that require a lot of collaboration Little interaction required: different sites E.g., testing or implementing relatively independent subsystems 39 51

Work Allocation 40 51 Transfer by functionality The ownership of a subsystem or a set of subsystems is transferred. Transfer by localization Local Modification for local market Product line approach Independent architectural units that do not need customization are developed by collocated teams. Development of big chunks that need customization is replicated in several locations.

Work allocation 41 51 Transfer by development stage Classic contract model, formal requirements, non-critical parts Product Unit System Maint RE Design Code Mngt. test test enance Product Mngt. In-house Offshore Implementation model, critical parts Unit System Maint RE Design Code test test enance Product mngt. model, non-critical parts with further development Product Unit System Maint RE Design Code Mngt. test test enance Product Mngt. RE Maintenance model Unit Design Code test System Maint test enance Mockus, IEEE Software ICSE workshop 2004 Advanced Software Engineering (M.Sc.2001,Nissan, ICT in Business) Leiden University. The university to discover.

Attaining Collaboration Readiness Transition to global development organization Requires changing work habits Learning new tools Needs incentives for individuals to cooperate 42 51

Technology readiness 43 51 Project management tools workflow management Web-enabled versions of tools Remote control of builds and tests Web-based project repositories Real-time collaboration tools simple media for simple messages, rich media for complex ones) Knowledge management technology both codification and personalization

Organizing work in GSD Reduce the need for informal communication Usually through organizational means, e.g.: Put user interface people together Use gross structure (architecture) to divide work (Conway s Law) Split according to life cycle phases Provide technologies that ease informal communication 44 51

Conway's Law (1968) 45 51 Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure. OR [...] organizations which design systems [...] are constrained to produce designs which are copies of the communication structures of these organizations

Managing Cross-Cultural Relationships 46 51 Minimize cross-cultural issues or reduce intensive collaboration [Carmel 2001, Krishna 2004] Reduce cultural distance: Locals on-site (75/25 rule), staff who bridge cultures, common processes and work environment, personnel exchange, culture liaison etc. Reduce temporal distance by communication means. Recognize limits and learn from the other part Reflect and share knowledge.

Impact on Quality 47 51 Limited amount of case studies Lucent Technologies: single-site modification requests took 5 days to complete on average, in contrast to 12,7 days for multi-site modification requests [Herbsleb et al. 2001]. Boland et al. report reduced productivity due to asynchronous communication [ICSE workshop, 2004]. Others mention reduced defect-density and high productivity in open source projects. Collocated teams achieved an efficiency improvement during initial validation activities of over 50 percent [Ebert, 2001] Lack of quantitative results in general. What about cost, time-to-market, productivity?

Some Research Findings Distributed development is negatively associated with Productivity and Cycle time (Herbsleb and Mockus 2003) Planning and control capability (Herbsleb, Paulish and Bass 2005) Knowledge management capability (Cramton 2001, Sarker et al 2005) Trust and team cohesiveness (Jarvenpaa and Leidner 1999, Warkentin, Sayeed and Hightower 1997) 48 51

Contact Information 49 51 Werner Heijstek Snellius Building Office 150 071 527 7050 heijstek@liacs.nl www.liacs.nl/~heijstek

Slide Sources 50 51 Slides accompanying chapter 20 of Hans van Vliet's Software Engineering Principles and Practice Slides of a lecture on `Global Software Development: Issues, Solutions, Challenges' by Parastoo Mohagheghi Slides from `The Role of Empirical Study in Software Engineering' by Victor R. Basili Slides from `Introduction on Empirical Software Engineering' by Reidar Conradi

Other Destinations 51 51 source: The Shifting Geography of Offshoring. AT Kearney, 2009