• No results found

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
51
0
0

Loading.... (view fulltext now)

Full text

(1)

Software Engineering

Software Engineering

“Global Software Development”

“Global Software Development”

Werner Heijstek, Leiden Institute of Advanced Computer Science

Lecture Series for BSc. “Informatica en Economie” year 2

(2)

2 | 51

Who Am I?

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

(3)

3 | 51

What is a Ph.D. Candidate?

Bachelors (B., B.Sc., B.A., Ing.)

3+ years

Masters (M., M.Sc.,M.A, Drs., Mr., Ir.)

2+ years Doctorate (Dr.) 4+ years (“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)

Full Professor (Professor) Associate Professor (UHD) Asistant Professor (UD) Post Doctoral Researcher

(4)

4 | 51

Global Software Development

Introduction

 definition, synonyms, volume, locations and sources,

motivations

Distance

 types of distance, overcoming distance, communication means

Sociocultural challenges

 Models (Hofstede, Trompenaars)

(5)

5 | 51

Definition

“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

(6)

6 | 51

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

(7)

7 | 51

More Related Terminology

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

(8)

8 | 51

Why is Global Software Develoment Relevant?

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

(9)

9 | 51

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

(10)

10 | 51

Cost savings

Faster delivery (eg.

“Follow-the-Sun” Development)

IT Skill shortage

Better modularization of

Architecture

Focus on core competenciesQuality Improvements /

Continuity

Expansion (to gain access to

new markets)

Motivations for Global Software Development

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

(11)

11 | 51

Offshoring Sources

United States

(12)

12 | 51

Where to Offshore to?

Economical factors

 Cost of labour  Practical factors

 International relations / Reputation  Governance

 Language knowledge / English proficiency  Cultural factors

 Work morale / Efficiency  Communication skills

(13)

13 | 51

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

(14)

14 | 51

Sourcing Location – Brazil

Advantages

 cheap and efficient labor

Disadvantage

 weak command of English

language

 weak relations with US

(15)

15 | 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

(16)

16 | 51

Sourcing Destinations

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)

(17)

17 | 51

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

(18)

18 | 51

(19)

19 | 51

(20)
(21)

21 | 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

(22)

22 | 51

Extra Costs of Offshoring

(23)

23 | 51

Overcoming Distance

Communication and collaboration

between team members

Coordination

Development process needs to be coordinated

Control

(24)

24 | 51

Temporal Distance Challenges

Communication

Being effective

(asynchronous communication is less effective due to increased chance of misunderstanding)

CoordinationCost is larger

(travel, infrastructure cost)

ControlDelays

(wait for next teleconference meeting, send email and wait, search for contact)

(25)

25 | 51

Synchronous & Asynchronous

 document sharing

 distributed Configuration Management (SCCM) systems  file transfer  remote access  distributed blackboards  intelligent SCCM systems  experience browser Asynchronous  e-mail  voice-mail  discussion list  on-line calendar  Sourceforge / TRAC Synchronous  phone  video conference  Netmeeting / Skype

 Internet Relay Chat (IRC)  Instant Messaging

(26)

26 | 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)

(27)

27 | 51

Geographical Distance

Activity awareness

 What are the others doing?

Availability awareness  When can I reach them?

Process awareness

 What are they doing?

Perspective awareness

(28)

28 | 51

Sociocultural Distance Challenges

Communication

Cultural misunderstandings

(corporate, technical, national)

Coordination

Effectiveness

(vocabulary, communication style)

Control

Quality and expertise

(29)

29 | 51

American managers have a hamburger style of

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 Germans, all one gets is the meat.

With the Japanese, all one gets is the bun, one has to smell the meat

(30)
(31)

31 | 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  Dutch, English, תירִבְעִ  You?  Background  International Experience

(32)

32 | 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

(33)

33 | 51

Trompenaars' 7 Dimensions of Culture (1 – 3)

Standards & Systems Versus Exceptional Situations

Universalism Versus Particularism

Individual Versus Group Orientation

Individualism Versus Communitarianism

Controlling Emotions Versus Showing Emotions

(34)

34 | 51

Trompenaars' 7 Dimensions of Culture (4 – 7)

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

(35)

35 | 51

Hofstede’s Dimensions

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)

(36)

36 | 51

Impact on Software Development

Lower uncertainty avoidance

can better cope with uncertainty

can better deal with agile approaches and

ill-defined requirements

Higher uncertainty avoidance

(37)

37 | 51

On Linguistic Differences

Dunglish

Also “Steenkolenengels” (Dutch)

= flawed attempt at speaking English  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

Indian English

= separate language

 Very extensive vocabulary / prosaic

“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

(38)

38 | 51

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

(39)

39 | 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

(40)

40 | 51

Work Allocation

 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.

(41)

41 | 51

Work allocation

Transfer by development stage

Product

Mngt. RE Design Code Unittest Systemtest enanceMaint Classic contract model, formal requirements, non-critical parts

Product Mngt. RE Design Unit test System test Maint enance Code

Implementation model, critical parts

RE Design Code Unittest Systemtest enanceMaint

Product Mngt.

Product mngt. model, non-critical parts with further development

In-house

Offshore

Product

Mngt. RE Design Code Unittest Systemtest enanceMaint Maintenance model

(42)

42 | 51

Attaining Collaboration Readiness

Transition to global development organization

 Requires changing work habits  Learning new tools

(43)

43 | 51

Technology readiness

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

(44)

44 | 51

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

(45)

45 | 51

Conway's Law (1968)

 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

(46)

46 | 51

Managing Cross-Cultural Relationships

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

(47)

47 | 51

Impact on Quality

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.

(48)

48 | 51

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)

(49)

49 | 51

Contact Information

Werner Heijstek

Snellius Building Office 150

071 – 527 7050

[email protected]

(50)

50 | 51

Slide Sources

 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'

(51)

51 | 51

References

Related documents

Topaz Energy and Marine is a leading offshore support vessel company providing marine solutions to the global energy industry with primary focus on the Caspian, Middle East, West

The DSRIP demonstration is an opportunity to support providers in a way that is not traditionally allowed through Medicaid funds. To this end, DMAS intends on maintaining the

Assessment of genetic diversity among finger millet (Eleusine coracana (L.) Gaertn.) accessions using molecular markers.. Genetic Resources and Crop

Evaluation is by com- parison to experimental measurements of the velocity field and individual turbine loading obtained using three-blade tidal stream rotors in a shallow,

The candidate does not provide evidence of working with faculty or faculty teams to create, implement, and formatively evaluate a school improvement action plan that includes use of

 The NWC SAF develops and maintains SW Packages (for GEO and POLAR Satellites) freely distributed to registered users to generate satellite products with a direct application

ACE-04G-LIC Application Control Engine (ACE) 4Gbps License 2 ACE-VIRT-050 Application Control Engine Virtualization 50 Contexts 2 WS-X6708-10G-3CXL C6K 8 port 10 Gigabit Ethernet