Global software engineering: Challenges and solutions framework: Dissertation

Päivi Parviainen

Research output: ThesisDissertationCollection of Articles

Abstract

The increasingly complex and competitive market situation has resulted in Global Software Engineering (GSE) becoming more and more common practice. Companies need to use their existing , as well as global resources Thus, the ability to collaborate effectively has become a critical factor in today's software development. The main expected benefits from GSE are improvements in development time, being closer to the customers and having flexible access to better specialized and less costly resources. In practice, however, the productivity in distributed software development drops up to 50 per cent compared to single site software development. Main reasons behind this productivity drop are misunderstood or mismatched processes between teams, and poor visibility into and control of the development activities at all sites involved. The purpose of this thesis is to analyse in more detail why this is the case and what could be done to improve the situation in practice in the companies' daily work. In this thesis, the challenges in GSE are discussed based on their root causes and then summarised into the GSE framework. The root causes are time difference and distance, multiple partners, lack of communication, coordination breakdown, different backgrounds, and lack of teamness and trust. Then solutions for these challenges are discussed from people, process and technology viewpoints and summarised into the GSE framework. As a more detailed example of challenges to a subprocess, requirements engineering (RE) in GSE is presented. RE is discussed similarly as the GSE in general, first challenges are discussed and then solutions to the challenges are presented. The work reported in this thesis is based on extensive empirical work, carried out over several years. The empirical work was carried out in several phases: in the first phase, an industrial inventory was made, including industrial experience reported in the literature. Based on this, an initial framework for GSE was developed, consisting of the main challenges to be addressed in GSE projects. After this first phase, two sets of industrial cases were carried out, addressing a wide set of GSE challenges by trying out the GSE solutions identified in companies and validating the GSE framework. Altogether, 52 industrial cases relating to distributed development were carried out during the projects over the years 2004-2011. This thesis shows that although GSE is common, it is still challenging and companies should carefully weigh the benefits and costs of doing the work in distributed setting vs. doing it single site. This thesis is a step towards better, more productive and higher quality GSE, as it helps companies to be aware and address potential challenges early via the GSE framework. The work presented also helps companies to find validated solutions to address the challenges in their practice.
Original languageEnglish
QualificationDoctor Degree
Awarding Institution
  • University of Oulu
Supervisors/Advisors
  • Oivo, Markku, Supervisor, External person
Award date25 May 2012
Place of PublicationEspoo
Publisher
Print ISBNs978-951-38-7459-9
Electronic ISBNs978-951-38-7460-5
Publication statusPublished - 2012
MoE publication typeG5 Doctoral dissertation (article)

Fingerprint

Software engineering
Industry
Requirements engineering
Productivity
Visibility

Keywords

  • global software engineering
  • requirements engineering
  • best practices
  • industrial case studies
  • ICT

Cite this

Parviainen, P. (2012). Global software engineering: Challenges and solutions framework: Dissertation. Espoo: VTT Technical Research Centre of Finland.
Parviainen, Päivi. / Global software engineering : Challenges and solutions framework: Dissertation. Espoo : VTT Technical Research Centre of Finland, 2012. 234 p.
@phdthesis{01ea14372a9244c08ca28882e81e0c6e,
title = "Global software engineering: Challenges and solutions framework: Dissertation",
abstract = "The increasingly complex and competitive market situation has resulted in Global Software Engineering (GSE) becoming more and more common practice. Companies need to use their existing , as well as global resources Thus, the ability to collaborate effectively has become a critical factor in today's software development. The main expected benefits from GSE are improvements in development time, being closer to the customers and having flexible access to better specialized and less costly resources. In practice, however, the productivity in distributed software development drops up to 50 per cent compared to single site software development. Main reasons behind this productivity drop are misunderstood or mismatched processes between teams, and poor visibility into and control of the development activities at all sites involved. The purpose of this thesis is to analyse in more detail why this is the case and what could be done to improve the situation in practice in the companies' daily work. In this thesis, the challenges in GSE are discussed based on their root causes and then summarised into the GSE framework. The root causes are time difference and distance, multiple partners, lack of communication, coordination breakdown, different backgrounds, and lack of teamness and trust. Then solutions for these challenges are discussed from people, process and technology viewpoints and summarised into the GSE framework. As a more detailed example of challenges to a subprocess, requirements engineering (RE) in GSE is presented. RE is discussed similarly as the GSE in general, first challenges are discussed and then solutions to the challenges are presented. The work reported in this thesis is based on extensive empirical work, carried out over several years. The empirical work was carried out in several phases: in the first phase, an industrial inventory was made, including industrial experience reported in the literature. Based on this, an initial framework for GSE was developed, consisting of the main challenges to be addressed in GSE projects. After this first phase, two sets of industrial cases were carried out, addressing a wide set of GSE challenges by trying out the GSE solutions identified in companies and validating the GSE framework. Altogether, 52 industrial cases relating to distributed development were carried out during the projects over the years 2004-2011. This thesis shows that although GSE is common, it is still challenging and companies should carefully weigh the benefits and costs of doing the work in distributed setting vs. doing it single site. This thesis is a step towards better, more productive and higher quality GSE, as it helps companies to be aware and address potential challenges early via the GSE framework. The work presented also helps companies to find validated solutions to address the challenges in their practice.",
keywords = "global software engineering, requirements engineering, best practices, industrial case studies, ICT",
author = "P{\"a}ivi Parviainen",
note = "Project code: 78321",
year = "2012",
language = "English",
isbn = "978-951-38-7459-9",
series = "VTT Science",
publisher = "VTT Technical Research Centre of Finland",
number = "6",
address = "Finland",
school = "University of Oulu",

}

Parviainen, P 2012, 'Global software engineering: Challenges and solutions framework: Dissertation', Doctor Degree, University of Oulu, Espoo.

Global software engineering : Challenges and solutions framework: Dissertation. / Parviainen, Päivi.

Espoo : VTT Technical Research Centre of Finland, 2012. 234 p.

Research output: ThesisDissertationCollection of Articles

TY - THES

T1 - Global software engineering

T2 - Challenges and solutions framework: Dissertation

AU - Parviainen, Päivi

N1 - Project code: 78321

PY - 2012

Y1 - 2012

N2 - The increasingly complex and competitive market situation has resulted in Global Software Engineering (GSE) becoming more and more common practice. Companies need to use their existing , as well as global resources Thus, the ability to collaborate effectively has become a critical factor in today's software development. The main expected benefits from GSE are improvements in development time, being closer to the customers and having flexible access to better specialized and less costly resources. In practice, however, the productivity in distributed software development drops up to 50 per cent compared to single site software development. Main reasons behind this productivity drop are misunderstood or mismatched processes between teams, and poor visibility into and control of the development activities at all sites involved. The purpose of this thesis is to analyse in more detail why this is the case and what could be done to improve the situation in practice in the companies' daily work. In this thesis, the challenges in GSE are discussed based on their root causes and then summarised into the GSE framework. The root causes are time difference and distance, multiple partners, lack of communication, coordination breakdown, different backgrounds, and lack of teamness and trust. Then solutions for these challenges are discussed from people, process and technology viewpoints and summarised into the GSE framework. As a more detailed example of challenges to a subprocess, requirements engineering (RE) in GSE is presented. RE is discussed similarly as the GSE in general, first challenges are discussed and then solutions to the challenges are presented. The work reported in this thesis is based on extensive empirical work, carried out over several years. The empirical work was carried out in several phases: in the first phase, an industrial inventory was made, including industrial experience reported in the literature. Based on this, an initial framework for GSE was developed, consisting of the main challenges to be addressed in GSE projects. After this first phase, two sets of industrial cases were carried out, addressing a wide set of GSE challenges by trying out the GSE solutions identified in companies and validating the GSE framework. Altogether, 52 industrial cases relating to distributed development were carried out during the projects over the years 2004-2011. This thesis shows that although GSE is common, it is still challenging and companies should carefully weigh the benefits and costs of doing the work in distributed setting vs. doing it single site. This thesis is a step towards better, more productive and higher quality GSE, as it helps companies to be aware and address potential challenges early via the GSE framework. The work presented also helps companies to find validated solutions to address the challenges in their practice.

AB - The increasingly complex and competitive market situation has resulted in Global Software Engineering (GSE) becoming more and more common practice. Companies need to use their existing , as well as global resources Thus, the ability to collaborate effectively has become a critical factor in today's software development. The main expected benefits from GSE are improvements in development time, being closer to the customers and having flexible access to better specialized and less costly resources. In practice, however, the productivity in distributed software development drops up to 50 per cent compared to single site software development. Main reasons behind this productivity drop are misunderstood or mismatched processes between teams, and poor visibility into and control of the development activities at all sites involved. The purpose of this thesis is to analyse in more detail why this is the case and what could be done to improve the situation in practice in the companies' daily work. In this thesis, the challenges in GSE are discussed based on their root causes and then summarised into the GSE framework. The root causes are time difference and distance, multiple partners, lack of communication, coordination breakdown, different backgrounds, and lack of teamness and trust. Then solutions for these challenges are discussed from people, process and technology viewpoints and summarised into the GSE framework. As a more detailed example of challenges to a subprocess, requirements engineering (RE) in GSE is presented. RE is discussed similarly as the GSE in general, first challenges are discussed and then solutions to the challenges are presented. The work reported in this thesis is based on extensive empirical work, carried out over several years. The empirical work was carried out in several phases: in the first phase, an industrial inventory was made, including industrial experience reported in the literature. Based on this, an initial framework for GSE was developed, consisting of the main challenges to be addressed in GSE projects. After this first phase, two sets of industrial cases were carried out, addressing a wide set of GSE challenges by trying out the GSE solutions identified in companies and validating the GSE framework. Altogether, 52 industrial cases relating to distributed development were carried out during the projects over the years 2004-2011. This thesis shows that although GSE is common, it is still challenging and companies should carefully weigh the benefits and costs of doing the work in distributed setting vs. doing it single site. This thesis is a step towards better, more productive and higher quality GSE, as it helps companies to be aware and address potential challenges early via the GSE framework. The work presented also helps companies to find validated solutions to address the challenges in their practice.

KW - global software engineering

KW - requirements engineering

KW - best practices

KW - industrial case studies

KW - ICT

M3 - Dissertation

SN - 978-951-38-7459-9

T3 - VTT Science

PB - VTT Technical Research Centre of Finland

CY - Espoo

ER -

Parviainen P. Global software engineering: Challenges and solutions framework: Dissertation. Espoo: VTT Technical Research Centre of Finland, 2012. 234 p.