coordination of software development teams across organizational boundary – an exploratory study

24
1 Coordination of software development teams across organizational boundary – An exploratory study Anh, Nguyen Duc Daniela S. Cruzes IDI, NTNU 08/13/14

Upload: anh-nguyen

Post on 12-Jul-2015

357 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Coordination of software development teams across organizational boundary – An exploratory study

1

Coordination of software development teams across organizational boundary – An

exploratory study

Anh, Nguyen Duc Daniela S. Cruzes

IDI, NTNU

08/13/14

Page 2: Coordination of software development teams across organizational boundary – An exploratory study

2

Agenda

MotivationTheoretical backgroundResearch questionResearch methodologyResultsConclusions

08/13/14

Page 3: Coordination of software development teams across organizational boundary – An exploratory study

3

Introduction• Global software development as a current

development paradigm

– Large companies have distributed branches: Microsoft, Google, Ericson, Phillips, Siemens …

– Whole offshoring industry

– Growth of Open source communities

08/13/14

Page 4: Coordination of software development teams across organizational boundary – An exploratory study

4

Motivation• Coordinating development tasks in geographically

and organizationally distributed teams is a significant challenge in SE

– Coordination breakdowns were likely to occur at organizational boundaries (Curtis 1989)

• Little has been known about vendor-to-vendor relationship, such as team collaboration and competition

08/13/14

Page 5: Coordination of software development teams across organizational boundary – An exploratory study

5

GSD – Systematic literature reviews

08/13/14

Context distribution in studies in GSD (Darja et al. 2010)

Page 6: Coordination of software development teams across organizational boundary – An exploratory study

6

GSD – Systematic literature reviews

08/13/14

Context distribution in Studies on Coordination in GSD)

Page 7: Coordination of software development teams across organizational boundary – An exploratory study

7

Organizational boundary

• Organizational boundary– Geographical dispersion

– Temporal dispersion

– Cultural dispersion

– Work process dispersion

– Organizational dispersion• Distances in regulations, goal, objectives in collaboration in

developing software between: partner companies, acquisition, commercial companies and OSS community

08/13/14

Page 8: Coordination of software development teams across organizational boundary – An exploratory study

8

GSD – global dispersion dimensions

08/13/14

Espinosa et al. (2006)

Page 9: Coordination of software development teams across organizational boundary – An exploratory study

9

Technical oordination

08/13/14

• coordination: activities required to maintain consistency within a work product or to manage dependencies within the workflow” (Malone et al. 1990)

• technical dependencies (Grinter et al. 1995):– Paralell development dependencies– Expertise dependencies – Integration Dependencies – Historical Dependencies– Interface Dependencies– Testing Dependencies– Shared code Dependencies

Page 10: Coordination of software development teams across organizational boundary – An exploratory study

10

Coordination problems

08/13/14

Page 11: Coordination of software development teams across organizational boundary – An exploratory study

11

Coordination mechanisms• Synchronization of main milestones

• Frequent deliveries

• Establishment of peer-to-peer links

• Early relationship building• Early architectural assignment• Shared management and development tool

• Boundary spanner

(Curtis 1988, Paasivaara et al. 2003, Cataldo et al. 2007, Whitehead et al. 2010)

08/13/14

Page 12: Coordination of software development teams across organizational boundary – An exploratory study

12

Research questions

• RQ1: What are attributes of the organizational boundary that introduce challenges on team coordination in GSD?

• RQ2: What are the coordination mechanisms that help to mitigate organizational boundary?

08/13/14

Organizational boundary

Coordination problems

Project outcomes

Coordination mechanisms

Page 13: Coordination of software development teams across organizational boundary – An exploratory study

13

Study design & context

08/13/14

Page 14: Coordination of software development teams across organizational boundary – An exploratory study

14

Context 1:

08/13/14

Context•Market driven project•5 years old project•Search engine system•3 geographical locations in USA & Norway – 150 developers

Interdependency•Technical dependency•Temporal dependency•Process dependency

Coordination infrastructure•TFS, daily virtual meeting, teleconferencing, email•GIT, informal talk, frequent visit

Page 15: Coordination of software development teams across organizational boundary – An exploratory study

15

Context 2:

08/13/14

Context•Outsourcing bespoken•5 years old project•Ship management system•3 geographical locations – 3 organizations within Norway- 13 developers

Interdependency•Technical dependency

Coordination mechanism•TFS, email, telephone conference, face to face meeting,

Page 16: Coordination of software development teams across organizational boundary – An exploratory study

16

Interview 7:Developer 3

08/13/14

1985 1995 01/2013

Interview 2: Team leaderInterview 3: Developer 1Interview 4: Developer 2

Interview 10: Developer 1

Interview 5: Developer 3

Interview 9: Project

manager 2

2000

Interview 8: Program

manager 1

11/2011

Interview 1: Project manager

Interview 6:Team leader

Observation 1

Observation 2

Data collection & analysis

Page 17: Coordination of software development teams across organizational boundary – An exploratory study

17

Data collection & analysis

08/13/14

Interview guide: 1.project and interviewee background2.general challenges when collaborating with others from distance3.specific problems related to organizational differences when working with other teams4.best practices when working with teams from other organizations Data analysis:

Identifying segments of

text

Coding concepts

Coding relationship

among concept

Concept categorization

Cross case comparison

Page 18: Coordination of software development teams across organizational boundary – An exploratory study

18

Case 1: boundary• Customer governance policy• “… the product owners didn’t wish us to talk to [Team A2] …

This was based on the kind of suspicions that we, as two consultant companies, would make stuff up to make money.”

• Competition attitude• “Regarding to the organizational dimension, it is not a problem

with legal issues. But they do collaborate as competitors, so we need to keep the competition capability”

08/13/14

Page 19: Coordination of software development teams across organizational boundary – An exploratory study

19

Case 1: boundary• Communication structure vs. source code structure

• Difference in development process• “…we work in such different ways so we don’t share work processes.

We communicated in a bit higher level than what we are doing now.

• Difference in adoption of CM and development tools• “TFS have a lot of features for these kinds of things. We tried it out and

we are kind of in another self-organizing way. We found it is too much bureaucracy for our way of working...”

08/13/14

Page 20: Coordination of software development teams across organizational boundary – An exploratory study

20

Case 2: boundary• Conflict on task and responsibility• “We had so much to do that we tried to push the tasks in the borderline

between team. We tried to push it to other team”

• Different focus on quality vs. productivity

• Difference in code and test practices• “The new focus on quality was very difficult… We had to spend more

resources to have better quality in this case. Earlier we had a shorter last LOC developed to the release date. Now we have a longer time and an established test process.”

08/13/14

Page 21: Coordination of software development teams across organizational boundary – An exploratory study

21

Conclusions

08/13/14

Page 22: Coordination of software development teams across organizational boundary – An exploratory study

22

Conclusions

08/13/14

Collaboration policy

Team structure

Engineering process

Development practice

Page 23: Coordination of software development teams across organizational boundary – An exploratory study

23

Conclusions

Team coordination mechanism Case A Case B

Establishment of peer to peer links X

Frequent deliveries XSynchronization of milestones XShared management and development tool X XEarly relationship building X XEarly architectural assignment XBoundary spanner X X

08/13/14

Page 24: Coordination of software development teams across organizational boundary – An exploratory study

24

• Q&A?

08/13/14