distribution of sw project work presentation.pdf · 27.1.2016 10 • labor, its availability and...

24
Distribution of SW project work H.Sten 2016

Upload: others

Post on 12-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Distribution of

SW project work

H.Sten

2016

Page 2: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Content

27.1.2016 2

• Introduction

• Dimensions of distribution

• Reasoning

• Centrifucal forces

• Implications (benefits & disadvantages)

• Processes & Methods

• Research results

Page 3: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Introduction

27.1.2016 3

• Distributed software development is an issue of increasing daily

routine for software development organizations today.

• Globalization, outsourcing, and offshoring are current and remaining

features for software development projects.

• Distribution is not a simple and well-managed task today.

• International distribution gives us some benefits but some

disadvantages as well.

• Often, the company has several offices in different cities, different

countries, or even different parts of the world, and software

development projects are distributed among these units.

• Software companies can also distribute software development to

subcontractors, which are often located in different locations or even

different countries.

• Software companies have also often very different reasons for the

distributed development.

• Distributed software development is affected by a lot of forces that

influence the success or failure.

Page 4: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Dimensions of distribution

27.1.2016 4

• Dimensions of distance

• Geographical

• Temporal

• Socio-Cultural

• Organizational

Page 5: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Geographical distance

27.1.2016 5

• Geographically distributed software development, developers

can work with physically positions in several different

places.

• The physical distance between the developers may be small,

eg. working on different floors of the building, but the software

engineers often work in different locations, which may be

located in different cities, countries or even continents.

• In the geographical distribution a measure of the distance

between the developers do not necessarily give a true

picture of software development in distribution.

• Better picture and insights being it’s what you get when you look

at locations between the transport and ease the transition to

work by point to another.

• The distance between geographically distributed locations can

be economically and timely valuable.

Page 6: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Temporal distance

27.1.2016 6

• Temporal distance will inevitably become part of the different

time zones distributed software projects.

• Temporal distribution are also found in the different locations

that are used for different work periods.

• Temporal distribution dimension refers to the time difference

between the interaction necessarily aspiring software

developers experienced.

• The temporal distribution is always combined with a lack of, or

limited real-time communication.

• If the different offices’ normal working hours are in partially or

even completely different times of the day, the temporal

distribution can be said to occur significantly.

Page 7: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Socio-cultural distance

27.1.2016 7

• Socio-cultural distribution refers to a person's

ability to understand another person's

values and normative practices.

• Factors affecting the socio-cultural

distance includes e.g. national culture,

language, politics, local organization and

employee motivation

Page 8: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Organizational

distance

27.1.2016 8

• One dimension is the outsourcing of resources.

• Outsourcing refers to the software development of any part of or

the conclusion of the phase of the adoption of a partner or a

subcontractor to carry.

• Distribution can also be organizational, wherein a part of the

product development organization can operate abroad and it

can thus be determined to intensify their operations with the help of

eg. time zones as shifts.

• Organizational distribution is about different organizations are

often the diversity of practices and organizational cultures.

• The organizational dimension is usually found in the larger and

medium-sized enterprises

Page 9: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Reasoning

27.1.2016 9

• The reasons for the emergence of distribution are many and varied.

• The reasons can be divided into previous studies and literature, for

example active and passive causes.

• Active reasons are relating to active effort to a state where software

resources are distributed. Active reasons are various, they are e.g.

cost, greater efficiency and availability of resources.

• Passive, dependent on the circumstances or the environment,

reasons include e.g. acquisitions, large company and the market.

• Another way to share the reasons for distribution is a division of

known and unknown causes.

• Known causes include e.g. cost savings, broader resource for market,

operational efficiency, and proximity to the customer and the market.

• Unknown (or not so well-known) reasons include e.g. organizational

benefits (e.g. the best practices), the team benefits (e.g. improved

modularity of tasks) as well as the process and benefits at task-level

(e.g. improved documentation).

Page 10: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Main reasons to distribute

27.1.2016 10

• Labor, its availability and its skills. • When software development companies are looking for the resources

available, they will have to distribute its activities extensively, either by

setting up a new office or by outsourcing operations in question operating

in the territory of partner or subcontracting firm.

• Economic reasons. • Looking from Finland, the cost of software professionals during the last

decades has always been cheaper the farther to the east or south the

location is. Today can be seen that price erosion have been fast in price of

software development labor. Asia is not anymore seen as cheap as it used

to be from Finnish lead company point of view.

• Proximity to the customer and / or end-user. • Software projects’ customers operate often nowadays globally or are

located abroad. Software development project has been the more

successful the closer customers are during development. Also, the end-

user proximity and understanding is important for software product

development

• Expansionist designs • The only opportunity for the software company to expand functionally and

to internationalize, may be the creation of a new office in another location,

a new country, or even acquisition abroad.

Page 11: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Centrifucal

forces

27.1.2016 11

Carmel, E. & Tjia, P. 2005. Offshoring Information Technology:

Sourcing and Outsourcing to a Global Workforce. Cambridge:

Cambridge University Press

• All the disadvantages associated with international distribution

cannot be eliminated, but their effects can be reduced.

• Striking a balance between the various types of benefits,

disadvantages and successes in the conditions of distribution is one of

the most important things for a successful international and distributed

software development project.

• Carmel and Tjia disclose the problems relating to spreading of the five

"centrifugal forces" means.

• Each of these five power alienates project staff from each other,

making it even more difficult to work.

• These forces are culture, communication, coordination, control and

cohesion.

Page 12: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Culture 1/2

27.1.2016 12

• Cultural impact cannot be ignored in internationally distributed

development projects.

• Cultural effects are most visible in long and multi-national projects.

• Cultural diversity is useful for the project, if it is understood and used

properly.

• Every culture has different principles, values, beliefs, communication,

norms and behavior. Even small cultural mistakes lead to culture

clashes, mistrust and later to conflict.

• Culture should be seen as (Hofstede & Hofstede, 2004) compatible

with human nature, culture and the individual's personality as a

whole, which is programmed in the human mind.

• Human personality is partly inherited and learned. Human nature is

the deepest level and inherited from the genes.

• Personality is the superficial and highest level. It is based on genetic

factors and individual experiences that make us all unique people.

• Culture is the middle level. It builds on the experience we share

between a certain group of people with whom we live in the same

community.

Page 13: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Culture 2/2

27.1.2016 13

• Hofstede et al. (2010) the cultural dimensions can be used to simulate a

variety of multi-cultural party behavior. The cultural differences appear in

comparing them with each other and the differences between countries

described various indices [13]. See: http://geert-hofstede.com/national-

culture.html.

• Lewis (2006) developed the LMR-model (linear, multi and reactive) to test

the cultural profiles and the assessment and determination method of the

cultural background of individuals. According to Lewis the world’s

hundreds of national and regional cultures can be divided into three

groups; function key and well-organized designers (Linear), people-

oriented, speechful and linked to each other (Multi), as well as introverted

and respectful focusing on listeners (Re). In cultural triangle adjacent to

each other countries are close to each other, so there are often less

conflicts. Similarly, if the countries are far from each other, in the

determination of the cultural triangle, culture definition and understanding

becomes important.

• At the regional culture has a much greater impact than organizational

culture.

Page 14: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Communication

27.1.2016 14

• In software development project, one of the key success factors is the

successful communication.

• Communication requires more attention in distributed software

development, where there is less or no informal communication.

• In distributed projects, communication results in delays and

consequences of such delays due to the time difference and

misunderstanding, reliance on asynchronous communication, a lack of

random and spontaneous discussions, as well as the possible lack of a

common language.

• Communication is in this context communication between the software

project partners and stakeholders (information, information management,

and communication management).

• Communication is an important advocacy and management tool because it

involves interpretation and the adoption of a mere addition to the transfer of

knowledge of information.

• A very important issue for distributed project communication is also a

common language.

• In a distributed software development the trust plays an important role in the

communication between software developers. The lack of thrust decreases

the willingness to share information and to communicate adequately.

Page 15: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Coordination

27.1.2016 15

• In distributed software projects the

coordination has an important role in the

success of the project.

• Software development is a set of

complex tasks, which have all the time a

lot of small adjustments, changes and bug

fixes.

• Coordination ensures that these changes

are made in such a way that all tasks

contribute to the achievement of the main

objective of the project.

• When coordination slows, several

problems occur.

• Things are going to the wrong direction for

so long that it becomes very difficult to get

thing back on track.

Page 16: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Control

27.1.2016 16

• Control is another important aspect of managing a distributed

software project.

• Control tries to ensure that the work is consistent with the

objectives and selected standards and practices.

• Control is best achieved when the software project managers

can be and work among his subordinates (ie. management by

walking).

• In a distributed software development project managers

cannot physically meet with subordinates on a daily basis

and that leads to not getting a proper knowledge what’s

happening on the other sites.

• To improve this, managers needs to travel as often as possible to

all sites. That requires budgeting and time planning.

Page 17: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Cohesion

27.1.2016 17

• Co-operation is also very important in all distributed operations -

especially in software development.

• If a software development group have good cohesion, members can rely

on each other, like each other and to help one another.

• Trust is a difficult concept to distributed work, as it partners must trust

each other, so that efficient co-operation is at all possible. On the other

hand it is often difficult to build trust over long distances. Some individuals

and cultures trust quickly, other cultures more slowly.

• Understanding diversity, a common spoken language (preferably mother

tongue) and trust are at the root of effective co-operation.

• A prerequisite for any form of co-operation is, however, a functional and

good communication.

• In the distributed development environment, cohesion is critical co-

operation. Often it is not economically possible to work often enough

face to face, but to create the most favorable conditions and tools for the

success of other forms of communication. In there the importance of

informal communication is often emphasized.

Page 18: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Implications (benefits & disadvantages)

27.1.2016 18

• Causes of distribution and its consequences, both positive and

negative, between the limits are not always entirely clear. Some of the

distribution caused by the effects are, depending on point of view, the

positive ie. potential, or negative ie. threats or problems.

• Based on previous research, it can be generally stated that the

disadvantages of the distribution are smaller than the benefits.

• Effects:

• The lack of mutual meetings is one of the effects of distribution.

• The diversity communication (linguistic and cultural differences ).

• The delays in communication (asynchronous).

• The weaknesses in confidence and team spirit.

• Also has effects on the distribution of tasks.

• Effect with time differences between sites.

Page 19: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Implications (benefits)

27.1.2016 19

• Benefits can be divided for example into partially identified and to not

identified benefits.

• Partially identified benefits are the reduction of development costs,

availability of skilled resources, improvement of operational

efficiency, the market area / end-user proximity, the software

architecture modularity, the global market for labor resources.

• Not identified benefits could be that the software developer's work

is not disrupted as much in distributed work, better organized task

allocation, cost reduction in task coordination, clearer processes and

improvement of documentation.

• What's more is the diversity of the cultures and other diversity, the

more distributed and will highlight best practices and innovation.

• When the distributed work is done from productivity point of view, e.g.

using the time differences between different locations as a

development process, can be a market advantage for faster timetable.

Page 20: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Processes & Methods

27.1.2016 20

• In a distributed software development it is important to choose the appropriate

methods and processes.

• Often the choice of method is tailor-made model from another or several models.

• Traditional software development process models do not always fit in distributed

software development. Herbsleb (2007) according to resolve a distributed software

development the main problem, distance management, is to focus on improving

and edit e.g. processes and practices.

• Dependence on agile methods in the physical location of the project varies method

wise. The selected method is very case-specific.

• Scrum is mitigating a number of problems arising from distribution. • It also helps with the communication, coordination and control of the project. Scrum

has also been found to improve the spirit between sites and some problems due to cultural

differences, but it does not eliminate them completely.

• In a distributed software development can be a number of local Scrum teams, whose

work will be divided in such a way that there is no need to hardly communicate with each

other.

• Scrum Alliance recommends local scrums with Scrum of Scrums for distributed environment.

It Scrum teams are wholly local teams, who are not particularly dependent on each other.

Scrum masters to form their own distributed Scrum team. It's called Scrum of the Scrums

(SoS).

• XP's suitability for distributed software development environment is good, but not as

good as e.g. Scrum, respectively. • XP methods are based on good communication and customer's strong presence. Both

of those have difficulties of implementation in a distributed environment and all of its sites.

Page 21: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Research results 1/2

27.1.2016 21

• The examle study is primarily multi-case study. As the study focused on

six (6) into a separate organization.

• Their evaluations of current status, which are the context for the

experience of organizations in the 2000s the topic, as well as the future

prospects of forecasting.

Page 22: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

Research results 2/2

27.1.2016 22

Page 23: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

27.1.2016 23

Page 24: Distribution of SW project work presentation.pdf · 27.1.2016 10 • Labor, its availability and its skills. • When software development companies are looking for the resources

27.1.2016 24

Universal

Personality

Culture

Human nature

Asema

Sukupuoli Kansalaisuus

Arvot Kunnioitus

Tarve kuulua

ryhmään

Ahkeruus

Kohteliaisuus

Halu tulla

ymmärretyksi

Inherited and learned

Learned

Learned

Specific to individual

Specific to Group or category

Appendix (triangles)