Skip to main content
Log in

Cheap talk, cooperation, and trust in global software engineering

An evolutionary game theory model with empirical support

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

In our studies of global software engineering (GSE) teams, we found that informal, non-work-related conversations are positively associated with trust. Seeking to use novel analytical techniques to more carefully investigate this phenomenon, we described these non-work-related conversations by adapting the economics literature concept of “cheap talk,” and studied it using Evolutionary Game Theory (EGT). More specifically, we modified the classic Stag-hunt game and analyzed the dynamics in a fixed population setting (an abstraction of a GSE team). Doing so, we were able to demonstrate how cheap talk over the Internet (e-cheap talk) was powerful enough to facilitate the emergence of trust and improve the probability of cooperation where the punishment for uncooperative behavior is comparable to the cost of the cheap talk. To validate the results of our theoretical approach, we conducted two empirical case studies that analyzed the logged IRC development discussions of Apache Lucene (http://lucene.apache. org/) and Chromium OS (http://www.chromium.org/chromium-os) using both quantitative and qualitative methods. The results provide general support to the theoretical propositions. We discuss our findings and the theoretical and practical implications to GSE collaborations and research.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. In game theory, a strategy refers to a pre-defined action that a player may use in interacting with other players.

  2. We will use C-C to denote C heap talk- C ooperate in the reminder of this paper.

  3. Cheap talk in Economics usually assumes a zero cost; however, in our usage, we allow cheap talk to associate with non-zero, yet minimal cost.

  4. Nash equilibrium describes a state that no one can achieve a better payoff by working independently.

  5. The fixed population assumption does not exclude the change of a team’s size and its members. The term “fixed” only means the population has no potential to be infinite. In fact, small changes do not influence the analytical results, see Nowak (2006a).

  6. Punishment may take many forms, e.g., reputation loss.

  7. It is reasonable to assume that, in the classic game, the player who plays defect would not be punished, since there is no reason for her to give up a risk-dominated strategy without any hint of her opponent’s action.

  8. Assuming there are at most two co-existing strategies simplifies the calculation. With this technique, we only need to perform a small number of pairwise comparisons between any two strategies. Then, we can build a whole picture of transitions among states.

  9. For an irreducible Markov process, the stationary distribution is the unique eigenvectors with eigenvalue 1 (Karlin 2014).

  10. They are homogeneous states because all players take the same strategy in each of these three state.

  11. This study’s dictionary contains 66 keywords. See Appendix B.1 for the full dictionary.

  12. We quote three representative examples (example 1–3), making some formatting changes.

  13. Two time series are cointegrated if they share a common stochastic drift, hence are mutually predictable, see Pfaff (2008) for more details.

  14. We retrieved the “tree” (the sum of the various source repositories used to build the project) status history on http://chromiumos-status.appspot.com/. Then, we manually matched the usernames in tree status (associated with email address) with #Chromium-OS users and found the majority of #chromium-os active code contributors have email addresses in the form of “XXX@google.com”, which indicates they are Google employees. We also consulted their Linkedin profile to determine their affiliations.

  15. http://echelog.com/logs/browse/chromium-os/

  16. No message in 11/19 and 11/20.

  17. The word “build” is not necessary to be a keyword for detecting work-related message, but “build #” always refers a build failure.

  18. CQ and CL must be capitalized.

  19. This refers any word start with “0x” which indicates a hexadecimal number. Most of them are used to represent a memory address.

  20. IO must be a separated word when considering as a keyword.

References

  • Al-Ani B, Redmiles D (2009) In strangers we trust? findings of an empirical study of distributed teams. In: 4th IEEE international conference on global software engineering, 2009. ICGSE 2009, pp 121–130. IEEE

  • Al-Ani B, Wang Y, Marczak S, Trainer E, Redmiles D (2012) Distributed developers and the non-use of web 2.0 technologies: a proclivity model. In: Proceedings of the ICGSE, pp 104–113

  • Al-Ani B, Bietz MJ, Wang Y, Trainer E, Koehne B, Marczak S, Redmiles DF, Prikladnicki R (2013) Globally distributed system developers: their trust expectations and processes. In: Proceedings of the CSCW, pp 563–574

  • Banerjee A, Chandrasekhar AG, Duflo E, Jackson MO (2013) The diffusion of microfinance. Science 341(6144):1236, 498

    Article  Google Scholar 

  • Bos N, Olson J, Gergle D, Olson G, Wright Z (2002) Effects of four computer-mediated communications channels on trust development. In: Proceedings of the CHI, pp 135–140

  • Bowles S, Gintis H (2011) A cooperative species: human reciprocity and its evolution. Princeton University Press, Princeton

    Book  Google Scholar 

  • Burt RS, Kilduff M, Tasselli S (2013) Social network analysis: foundations and frontiers on advantage. Annu Rev Psychol 64(1):527–547. doi:10.1146/annurev-psych-113011-143828

    Article  Google Scholar 

  • Caglayan B, Bener A, Miranskyy A (2013) Emergence of developer teams in the collaboration network. In: Proceedings of the CHASE

  • Calefato F, Lanubile F, Sanitate N, Santoro G (2011) Augmenting social awareness in a collaborative development environment. In: Proceedings of the 4th international workshop on Social software engineering, ACM, pp 39–42

  • Calefato F, Lanubile F, Sportelli F (2013) Can social awareness foster trust building in global software teams? In: Proceedings of the SSE, pp 13–16

  • Camera G, Casari M, Bigoni M (2013) Money and trust among strangers. Proc Natl Acad Sci 110(37):14, 889–14, 893

    Article  MATH  Google Scholar 

  • Cassell J, Bickmore T (2003) Negotiated collusion: modeling social language and its relationship effects in intelligent agents. User Model User-Adap Inter 13(1–2):89–132

    Article  Google Scholar 

  • Cataldo M, Herbsleb JD, Carley KM (2008) Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity. In: Proceeding of the ESEM, pp 2–11

  • Cederman L (2005) Computational models of social forms: advancing generative process theory. Am J Sociol 110(4):864–893

    Article  Google Scholar 

  • Chiappori PA, Levitt S, Groseclose T (2002) Testing mixed-strategy equilibria when players are heterogeneous: the case of penalty kicks in soccer. American economic review, pp 1138–1151

  • Cleveland RB, Cleveland WS, McRae JE, Terpenning I (1990) Stl: a seasonal-trend decomposition procedure based on loess. J Off Stat 6(1):3–73

    Google Scholar 

  • Cramton CD, Hinds PJ (2007) intercultural interaction in distributed teams: salience of and adaptations to cultural differences. In: Proceedings of the AOM Annual Meeting, pp 1–6

  • Dabbish L, Stuart C, Tsay J, Herbsleb J (2012) Social coding in github: transparency and collaboration in an open software repository. In: Proceedings of the ACM 2012 conference on computer supported cooperative work, ACM, pp 1277–1286

  • Damian D, Izquierdo L, Singer J, Kwan I (2007) Awareness in the wild: why communication breakdowns occur. In: 2nd IEEE international conference on global software engineering, 2007. ICGSE 2007. IEEE, pp 81–90

  • Dittrich Y, Giuffrida R (2011) Exploring the role of instant messaging in a global software development project. In: Proceedings of the ICGSE, pp 103–112

  • Ducheneaut N (2005) Socialization in an open source software community: a socio-technical analysis. Comput Supported Coop Work (CSCW) 14(4):323–368

    Article  Google Scholar 

  • Easley D, Kleinberg J (2010) Networks, crowds, and markets: reasoning about a highly connected world. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  • Easterbrook S, Singer J, Storey MA, Damian D (2008) Selecting empirical methods for software engineering research. In: Guide to advanced empirical software engineering. Springer, Berlin, pp 285– 311

  • Erev I, Roth AE (1998) Predicting how people play games: reinforcement learning in experimental games with unique, mixed strategy equilibria. American economic review, pp 848–881

  • Farrell J, Rabin M (1996) Cheap talk. J Econ Perspect 10(3):103–118

    Article  Google Scholar 

  • Ficici S, Pollack J (2000) Effects of finite populations on evolutionary stable strategies. In: GECCO, pp 927–934

  • Fudenberg D, Imhof LA (2006) Imitation processes with small mutations. J Econ Theory 131(1):251–262. doi:10.1016/j.jet.2005.04.006

    Article  MathSciNet  MATH  Google Scholar 

  • Fudenberg D, Imhof LA (2008) Monotone imitation dynamics in large populations. J Econ Theory 140(1):229–245. doi:10.1016/j.jet.2007.08.002

    Article  MathSciNet  MATH  Google Scholar 

  • Gharehyazie M, Posnett D, Vasilescu B, Filkov V (2014) Developer initiation and social interactions in oss: a case study of the apache software foundation. Empirical Software Engineering. doi:10.1007/s10664-014-9332-x, pp 1–36

  • Gintis H (2000) Game theory evolving: a problem-centered introduction to modeling strategic behavior. Princeton University Pres, Princeton

    MATH  Google Scholar 

  • Granger CW (1988) Some recent development in a concept of causality. J Econ 39(1):199–211

    Article  MathSciNet  Google Scholar 

  • Guzzi A, Bacchelli A, Lanza M, Pinzger M, van Deursen A (2013) Communication in open source software development mailing lists. In: Proceedings of the MSR, pp 277–286

  • Harper R, Bird C, Zimmermann T, Murphy B (2013) Dwelling in software: aspects of the felt-life of engineers in large software projects. In: ECSCW 2013: Proceedings of the 13th european conference on computer supported cooperative work, 21–25 September 2013. Springer, Paphos, pp 163–180

  • Herbsleb JD, Grinter RE (1999) Splitting the organization and integrating the code: Conway’s law revisited. In: Proceedings of the ICSE, pp 85–95

  • Herbsleb J D, Mockus A (2003) An empirical study of speed and communication in globally distributed software development. IEEE Trans Softw Eng 29(6):481–494

    Article  Google Scholar 

  • Herbsleb JD, Atkins DL, Boyer DG, Handel M, Finholt TA (2002) Introducing instant messaging and chat in the workplace. In: Proceedings of the CHI, pp 171–178

  • Hong Q, Kim S, Cheung SC, Bird C (2011) Understanding a developer social network and its evolution. In: Proceedings of the 2011 27th IEEE international conference on software maintenance, ICSM ’11. doi:10.1109/ICSM.2011.6080799. IEEE Computer Society, Washington, pp 323–332

    Google Scholar 

  • Jackson M (2010) Social and economic network. Princeton University Press, Princeton

    MATH  Google Scholar 

  • Jackson M, Rodriguez-Barraquer T, Tan X (2012) Social capital and social quilts: network patterns of favor exchange. Am Econ Rev 102(5):1857–1897

    Article  Google Scholar 

  • Jarvenpaa SL, Shaw TR, Staples DS (2004) Toward contextualized theories of trust: the role of trust in global virtual teams. Inf Syst Res 15(3):250–267

    Article  Google Scholar 

  • Jensen C, Riestenberg G (2012) Stag-hunt game. http://goo.gl/ieiLmX. Accessed 12 Dec 2014

  • Karlin S (2014) A first course in stochastic processes. Academic, New York

    Google Scholar 

  • Kitchenham B, Al-Khilidar H, Babar MA, Berry M, Cox K, Keung J, Kurniawati F, Staples M, Zhang H, Zhu L (2008) Evaluating guidelines for reporting empirical software engineering studies. Empir Softw Eng 13(1):97–121

    Article  Google Scholar 

  • Kwan I, Cataldo M, Damian D (2012) Conway’s law revisited: the evidence for a task-based perspective. IEEE Softw 29(1):90–93

    Article  Google Scholar 

  • Layman L, Williams L, Damian D, Bures H (2006) Essential communication practices for extreme programming in a global software development team. Inf Softw Technol 48(9):781–794

    Article  Google Scholar 

  • March JG, Simon HA (1993) Organizations, 2nd edn. Wiley, New York

    Google Scholar 

  • Mislin AA, Campagna RL, Bottom WP (2011) After the deal: talk, trust building and the implementation of negotiated agreements. Organ Behav Hum Decis Process 115(1):55–68

    Article  Google Scholar 

  • Montuschi E (2003) The objects of social science. Continuum International Publishing Group

  • Nowak M (2013) Evolution, games, and god. Harvard University Press, Cambridge

    MATH  Google Scholar 

  • Nowak MA (2006a) Evolutionary dynamic: exploring the equations of life. The Belknap Press of Harvard University

  • Nowak MA (2006b) Five rules for the evolution of cooperation. Science 314 (5805):1560–1563

    Article  Google Scholar 

  • Nowak MA, Sasaki A, Taylor C, Fudenberg D (2004) Emergence of cooperation and evolutionary stability in finite populations. Nature 428(6983):646–650. doi:10.1038/nature02414

    Article  Google Scholar 

  • Nowak MA, Tarnita CE, Wilson EO (2010) The evolution of eusociality. Nature 466:1057–1062

    Article  Google Scholar 

  • Olson GM, Olson JS (2000) Distance matters. Hum Comput Interact 15(2):139–178

    Article  Google Scholar 

  • Pendharkar PC, Rodger JA (2009) The relationship between software development team size and software development cost. Commun ACM 52(1):141–144. doi:10.1145/1435417.1435449

    Article  Google Scholar 

  • Pereira LM, Santos FC et al (2012) The emergence of commitments and cooperation. In: Proceedings of the 11th international conference on autonomous agents and multiagent systems-volume 1. International foundation for autonomous agents and multiagent systems, pp 559–566

  • Pfaff B (2008) Analysis of integrated and cointegrated time series with R. Springer, Berlin

    Book  MATH  Google Scholar 

  • Prikladnicki R, Boden A, Avram G, de Souza CR, Wulf V (2014) Data collection in global software engineering research: learning from past experience. Empir Softw Eng 19(4):822–856

    Google Scholar 

  • Puranam P, Alexy O, Reitzig M (2014) What’s new about new forms of organizing? Acad Manag Rev 39(2):162–180

    Article  Google Scholar 

  • Rabin M (1993) Incorporating fairness into game theory and economics. The American economic review, pp 1281–1302

  • Ren Y, Kraut RE (2014) Agent-based modeling to inform online community design: impact of topical breadth, message volume, and discussion moderation on member commitment and contribution. Hum Comput Interact 29(4):351–389. doi:10.1080/07370024.2013.828565

    Article  Google Scholar 

  • Runeson P, Höst M (2009) Guidelines for conducting and reporting case study research in software engineering. Empir Softw Eng 14(2):131–164

    Article  Google Scholar 

  • Santos FC, Pacheco JM, Skyrms B (2011) Co-evolution of pre-play signaling and cooperation. J Theor Biol 274(1):30–35. doi:10.1016/j.jtbi.2011.01.004

    Article  MathSciNet  MATH  Google Scholar 

  • Schniter E, Sheremeta RM, Sznycer D (2013) Building and rebuilding trust with promises and apologies. J Econ Behav Organ 94:242–256. doi:10.1016/j.jebo.2012.09.011

    Article  Google Scholar 

  • Schumann J, Shih PC, Redmiles DF, Horton G (2012) Supporting initial trust in distributed idea generation and idea evaluation. In: Proceedings of the GROUP, pp 199–208

  • Simon HA (1991) Bounded rationality and organizational learning. Organ Sci 2(1):125–134

    Article  Google Scholar 

  • Skyrms B (2001) The stag hunt. In: Presendential address of the pacific division of the APA, Proceedings and Addresses of the APA, vol 75, pp 31–41

  • Skyrms B (2008) Trust, risk, and the social contract. Synthese 160(1):21–25

    Article  MathSciNet  Google Scholar 

  • Skyrms B (2010) Signals: evolution, learning, and information. Oxford University Press, London

    Book  Google Scholar 

  • Skyrms B (2014) Social dynamics. Oxford University Press, London

    Book  Google Scholar 

  • Steed A, Spante M, Heldal I, Axelsson AS, Schroeder R (2003) Strangers and friends in caves: an exploratory study of collaboration in networked ipt systems for extended periods of time. In: Proceedings of the I3D, pp 51–54

  • Storey MA, Singer L, Cleary B, Figueira Filho F, Zagalsky A (2014) The (r) evolution of social media in software engineering. In: Proceedings of the on future of software engineering, ACM, pp 100–116

  • Tamburri DA, Lago P, Vliet Hv (2013) Organizational social structures for software engineering. ACM Comput Surv 46(1):3:1–35

    Article  Google Scholar 

  • Traulsen A, Nowak MA, Pacheco JM (2006) Stochastic dynamics of invasion and fixation. Phys Rev E 74:011,909. doi:10.1103/PhysRevE.74.011909

    Article  Google Scholar 

  • Wagstrom P (2009) Vertical interaction in open software engineering communities. PhD thesis, Carnegie Mellon University

  • Wagstrom P, Herbsleb JD, Carley KM (2010) Communication, team performance, and the individual: Bringing technical dependencies. In: Academy of management proceedings, academy of management, pp 1–7

  • Wang Y, Redmiles D (2013) Understanding cheap talk and the emergence of trust in global software engineering: an evolutionary game theory perspective. In: Proceedings of the CHASE, pp 149–152

  • Wang Y, Zhang M (2010) Penalty policies in professional software development practice: a multi-method field study. In: Proceedings of the 32nd ACM/IEEE international conference on software engineering-volume 2, ACM, pp 39–47

  • Winikoff M (2007) Implementing commitment-based interactions. In: Proceedings of the AAMAS, pp 128:1–8

  • Young HP (1998) Individual strategy and social structure: an evolutionary theory of institutions. Princeton University Press, Princeton

    Google Scholar 

  • Zheng J, Veinott E, Bos N, Olson JS, Olson GM (2002) Trust without touch: jumpstarting long-distance trust with initial social activities. In: Proceedings of the SIGCHI conference on human factors in computing systems, CHI ’02, pp 141–146

Download references

Acknowledgments

We would like to thank Prof. Brian Skyrms for helping us refine the model and the analyses. We appreciate Dr. Ban Al-Ani for collaborating on the empirical data in Section 2. We would like to thank the anonymous reviewers for their insightful comments and suggestions.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yi Wang.

Additional information

Communicated by: Audris Mockus

Appendices

Appendix A: Punishment vs. Compensation

In this paper, we simply assume the punishment to the defector equals the compensation to the cheap talker. This assumption has been widely adopted in game theory literature, for it is essentially a redistribution of payoffs between both players (Pereira et al. 2012). The redistribution-based punishment/compensation mechanism is also adopted in professional software engineering practices (Wang and Zhang 2010). In our case, when a cheap talker meets a defector, the total payoff is (Tg)+(S + ge) = T + Se. There is no loss during the administration of punishment and compensation. In other words, the punishment/compensation process is free of cost. Given that most punishments are spontaneous and lack any specific administrator, it is a reasonable solution. However, it is not perfect. It is possible that the punishment/compensation process incurs some cost or even creates some extra value in forms of psychological payoff (Rabin 1993) or advance payment of future benefits.

When punishment does not equal compensation, Fig. 11 shows the payoff structure of the game.

Fig. 11
figure 11

Payoff structure when punishment (g) does not equal compensation (f)

We tested whether the main analytical conclusions are still valid when punishment and compensation are not equal. We performed simulations for different combinations of g and f. We assume g and f are in (0,1], and the interval is 0.1. So g and f can be 0.1, 0.2,… 1. They form 100 combinations. For each combination of g and f, we ran 1000 independent rounds of simulation. The other parameters were from the numerical example in Fig. 5, and did not change. The grey-scale in each cell of the following diagram (Fig. 12) indicates the percentage of simulations that achieve full-cooperation in a specific combination of g and f.

Fig. 12
figure 12

Probability of reaching “all-cooperate” state under different combinations of punishment and compensation

Obviously, cooperation will become prevalent if:

  1. 1.

    Both g and f are comparable to the cost e,

  2. 2.

    Either of g or f is large enough.

This indicates that the validity of the analytical results does not wholly rely on the relative quantitative relationship between punishment and compensation.

With the new game, we need to re-specify the conditions for transitions from C-C to C, and D to C-C. First of all, the condition for transitions from C-C to C remains the same as (6), as the payoff structure between C-C and C does not change. For conditions for transitions from D to C-C, we can rewrite (7) as:

$$\begin{array}{@{}rcl@{}} R-\frac{e}{2}+2(S+f-e)>T-g+2P \ \Rightarrow \end{array} $$
(9)
$$\begin{array}{@{}rcl@{}} g+2f>T+2P-R-2S+\frac{5e}{2} \end{array} $$
(10)

Indeed, the original condition in (8) is a special case (g = f) of equation 10. Equation 10 provides more possibilities for a team to develop trust and cooperation. Equation (8) requires punishment g and is comparable to the cost of cheap talk. However, (10) shows that increasing compensation f may achieve the same outcome. These conditions are consistent with the above simulation results.

If a team does not want to implement punishment to defect, it may try to increase compensation. However, increasing compensation sometimes requires extra cost from the third party (who use some external resource to fund the extra compensation). Future research may focus on this issue. Modeling external compensation is beyond the scope of this paper.

Appendix B: The Dictionaries Used in Classification

1.1 B.1 Lucene

No. Total Keywords = 6 6. information retrieval, ranking, index caching, caches, bounded indices, language detecting(detection), token(ize), word break, Kuromoji, schema, encoding scheme, highlighter, distance measure(s), nightly, bug, issue, compatibility, configuration, JIRA, contention, build #,Footnote 17 parse(r), test(s), benchmark, trunk, commit, merge policy, error, exception, regenerate, initialized, branch, intermittent, truncated, subprocess, inter-process, manifest file, real(-)time, load-sharing, load-balancing, proxy, main memory, concurrent, enumerate, logging, Java, boolean, comparator, decouple, synchronization, sequentialization, invalid, memory leak, JFlex, FNFE, parameters, character escaping, concatenation, stacked segments, discrepancy(ies), lexicon, unstored, vector, fuzzy query, collection api, wildcard.

1.2 B.2 Chromium OS

No. Total Keywords = 1 1 8.

1.2.1 B.2.1 Reused Keywords

bug, issue, compatibility, configuration, JIRA, contention, build #, parse(r), test(s), benchmark, trunk, commit, merge policy, error, exception, regenerate, initialized, branch, intermittent, truncated, subprocess, inter-process, manifest file, real(-)time, load-sharing, load-balancing, proxy, main memory, concurrent, enumerate, logging, Java, boolean, comparator, decouple, synchronization, sequentialization, invalid, memory leak, parameters, concatenation, stacked segments, wildcard.

1.2.2 B.2.2 New Keywords

keyboard layout, tree status, gizmo-paladin, boot, firmware, register, kernel, cmdline, native android, GNU/Linux distro, Valgrind test, vanilla linux, autotest, InitSDK, ChromeSDK, parallel, merge conflict(s), chroot, sysroot, syslinux, config param, libdevmapper, librpm, crbug.com, CQ, CL,Footnote 18 git push, patch(es), deprecated, clang, x86-generic, amd64-generic, module-init, setup_board, resynced, driver, partition, mount, hash, SyncChrome, canary(ies), gpu, symbolizing, prefix, 0x…,Footnote 19 buffer, userspace, device_tree, KVM, UI image(s), simplechrome, build_image, test image, dependencies, waterfall, code-review, developer(dev) mode, recovery mode, hard-reset, interpreter, use case(s), modeset, dev(-) server, xserver, flash image, ARM, libxml, rootfs, tryserver, Ubuntu, IO.Footnote 20

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Wang, Y., Redmiles, D. Cheap talk, cooperation, and trust in global software engineering. Empir Software Eng 21, 2233–2267 (2016). https://doi.org/10.1007/s10664-015-9407-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10664-015-9407-3

Keywords

Navigation