Exploring the role of Social Software in Global Software Development projects Rosalba Giuffrida – PhD student
Yvonne Dittrich - supervisor
Software Development Group IT University of Copenhagen Copenhagen, Denmark
[email protected]
Software Development Group IT University of Copenhagen Copenhagen, Denmark
[email protected]
Abstract— We present a PhD project that investigates the use of Social Software (SoSo) in Global Software Development (GSD) teams. Since SoSo in unstructured and informal in its own nature, we explore how informal communication, which is challenging in GSD, is supported by SoSo in distributed teams and how SoSo complements formal tools and documentation. Social software, informal communication, ethnography, action research, team building, knowledge management.
I.
THE PHD PROJECT
A. Research area Several works concerning SoSo [6][9][13] have been carried out in the area of Computer-mediated communication (CMC) in conjunction with Computer-supported cooperative work (CSCW). Some researchers have investigated SoSo in the Software Engineering community, exploring for example, the use of instant messaging, tagging and social bookmarking [7][11]. This PhD project takes into account this research and, through qualitative case studies, aims to explore the Software Engineering specific challenges on whether and how SoSo is used or can be used in distributed settings as a channel for informal communication. B. Research Proposal The main research goal is to understand the potentials of SoSo for supporting communication, coordination, team building and knowledge sharing in distributed software development teams. Through different empirical ethnographic case studies, we plan to provide insights in the topic and to propose methods and guidelines, which will be evaluated in distributed student projects as well as real world distributed development projects. C. Research Problem The main research question we plan to answer is: How can Social Software support distributed teams in Global Software Development? Moreover, the research will focus on three main aspects:
What happens today? What are the problems? Developing software is a social activity and developers have to work together collaborating and sharing knowledge and resources. In distributed settings, collaboration is more challenging, due to the lack of informal communication, different time zones, cultural issues and lack of face-to-face interactions. We will investigate in which phases of the Software Engineering process SoSo is used to deal with these issues. This is the 1st phase of the CMD method described below. Conducting the first cycle of empirical research, we will investigate whether and how companies use SoSo and which kind of communication is taking place through these tools. We will understand what subset of problems of GSD can be addressed by complementing formal documentation with the informal communication that SoSo supports. We will also understand what might be advantages and disadvantages of using SoSo. How can SoSo be introduced to support social connections and knowledge sharing in a suitable way? We will analyze how different kinds of SoSo have an impact on (1) communication, (2) collaboration and (3) coordination in software development. We will observe if informal communication in SoSo helps not only to connect people, but if it is also an informal practitioner’s knowledge repository, that complements the official knowledge of the team usually shared trough company’s official tools. This phase will deliberate possible improvements of the current situation. How does SoSo affect the professional side of Software Engineering? Non-structured knowledge shared through SoSo can be really important for companies; mechanisms of storage or of integration with existing official tools can be necessary in order to take advantage of the use of SoSo tools. Social protocols adopted in distribute software development teams can be also analyzed and recommendations can be provided to practitioners.
D. Research Objective The research objective is to analyze the current usage of SoSo in GSD teams. Describing how it is naturally used, we can understand how to improve practices in companies and, based on this, we can develop methods and guidelines for global software development practitioners. II. RELATED WORK The fundamental problem of GSD is that many of the mechanisms that function to coordinate the work in a colocated setting are absent or disrupted in a distributed project [5]. Bruegge et al. [1] proposed a framework for enabling informal collaboration in global software development, underlying the crucial role that informal mechanisms play in distributed software teams. While, traditionally, main media for informal communication in distributed teams were email, phone and video conferencing system, nowadays a lot of informal communication takes place in the so called Social Software (SoSo) [4]. SoSo can be seen as a repository of nonstructured knowledge where informal communication and knowledge sharing take place. SoSo include a wide variety of tools such as: instant messaging, internet forums, mailing lists, blog, wiki, social network sites, social bookmarking, social libraries, virtual worlds. While Software Engineering usually focuses on structured documentation and communication, knowledge shared through SoSo is unstructured. As highly-expertise practitioners involved in distributed team projects share their knowledge both through formal documentation and in an informal situated meanings, SoSo has to be taken into account as a complementary link. Many research works in the CHI, CSCW and IS communities have already investigated the applications of SoSo in corporate contexts [10][11][13]. Despite the growing of SoSo and Web 2.0 tools, the research about SoSo used in workplace still focuses mainly on Instant Messaging (IM). One of the first paper about IM for collaborative work was written in 2000 by Nardi et al. [6] and it documents the flexibility and expressivity of IM for various informal communication tasks in workplace. Recently, in 2010, Ou et al. [8] demonstrated that instant messaging can empower teams at work. Niinimaki and Lassenius [7] studied the use of commercial-grade, widely adopted and acknowledged instant messaging tools in real commercial GSD projects, through a multiple qualitative case study. They reported about the successful use of instant messaging in global distributed projects. There aren’t many empirical works focused on the use of SoSo in GSD; we believe that we should investigate more this topic in real world settings, as it is happening in other communities for other kinds of distributed workplaces. III.
METHODOLOGY
Our research is carried on through empirical software engineering techniques; because of the topic we are focusing on, qualitative methods are the most suitable for our research. Dittrich et al. [3] propose an approach called Cooperative Method Development (CMD) for investigating social and
cooperative aspects of software development. CMD, presented in Figure 1, suggests an action research cycle consisting on 3 phases: (1) Understanding practice through qualitative empirical investigation (2) Deliberate improvement in cooperation between researchers and the practitioners involved (3) Implement and observe improvement that will be evaluate in cooperation between practitioners involved and researchers.
Figure 1: CMD cycle extended The described CMD is our reference research method: it is a reflective process of progressive problem solving that integrates action research and ethnography. We adopt CMD because it focuses on shop floor software development practices, strongly taking into account practitioners perspective: in CMD, researchers follow method improvements as participant observers. We collect our data through different empirical techniques: participant observation, semi-structured interviews and document analysis. In order to carefully take track of our investigation, we tape and transcribe meetings and interviews, we apply interaction analysis on informal computer mediated communication logs and we keep a research diary during each project we conduct. By using participant observation, where the researcher participate in the daily routines, we can observe how, for example, co-operation, discussions and conversations take place between the different participants in the development projects. Interviews give the possibility to clarify uncertainties and ask about specific issues in a deeper way. By using multiple ways of collecting data and combining different kinds of methods it is possible to triangulate the finding. The validation process is particularly important in our project because our action research is globally distributed, as virtual teams are distributed: each phase of the CMD cycle will be carried out in different places and in different moments. We observe practitioners in distributed workplaces, we introduce improvements across sites spatially spread and we have to validate improvements in all places involved. It can be necessary to iterate each phase of CMD using consecutive “sub-cycles” in different places and times. The flux of events and ideas, which constitute the research situation, continue to evolve
through time. It has to be the researcher’s judgment that the significant learning in interaction with the area of application has been reached. IV. RESULTS ACHIEVED I am in the beginning of the second year of my PhD. So far, I have conducted a Systematic Mapping Study about empirical works on the use of Social Software in distributed settings. The work is not yet published. We have also conducted an ethnographic empirical research [2] at DHI, a company that develops software in a global setting: five managers/developers, are in Copenhagen, Denmark; six developers and one tester are in Delhi, India. We explored the integration of formal documentation, bug-tracking system and email with informal communication on instant messaging, screen sharing and audio conversations: whenever overlap times occur, informal communication can take place at the same time in different sites and it can effectively complement formal documentation. Our analysis provides an indication that Instant Messaging (IM) can play a special role in such socio-technical communication systems: IM is acting as a real time glue between different channels. Moreover, the communication through IM provides a means to build trust and social relationships with co-workers. At the moment, we are investigating the role of Social Software in a distributed student project, in which student teams distributed between Denmark and China and between Denmark and Brazil develop software together. The communication ecologies [12] of the student projects are different from the one of DHI, but some lessons learned could affect also industrial settings and we aim to analyze and publish about this. Moreover, we plan to develop further collaboration with another company that makes use of agile methods in a dispersed team. Due to the choice of conducting ethnographic research, it’s not easy to define a priori which specific SoSo we want to observe or on which exact software development process we want to focus on. We have settled observations with two projects in two different companies, as well as observations in distributed student projects. We aim to describe insights from these different scenarios and to develop guidelines considering different factors that could affect the different projects: whether it is an established team or not, which development process is used, how big is the team, what are possible cultural misunderstandings, what are the effects of time zones, how teams develop over time, and so on. V.
during software development process. We aim to improve socio-technical perspectives for GSD processes and tools as well as current practices of using SoSo, providing recommendations about social protocols for distributed software development teams using SoSo. VI.
The evaluation of the method is included in the action research cycle of the CMD method (see Section III). The findings validated with the feedback of the company are triangulated with further investigation in global distributed student projects as well as in other global dispersed industrial settings. VII. REFERENCES [1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
EXPECTED CONTRIBUTION
I would like to keep a Software Engineering perspective during the whole empirical research, taking into account lessons learned from different communities: Computer Mediated Communication (CMC), Computer-Supported Cooperative Work (CSCW), Intercultural Collaboration. The main goal is to understand how informal communication through SoSo makes the distributed software development process to be more effective. This research provides also understanding on human aspect involved in software engineering projects and it affects on knowledge management
RESEARCH EVALUATION METHODS
[12]
[13]
B. Bruegge, A. H Dutoit, T. Wolf, and D. Garching. Sysiphus: Enabling informal collaboration in global software development Chair for Applied Software Engineering. In Proceedings of the IEEE international conference on Global Software Engineering, 2006. Y. Dittrich and R. Giuffrida. Exploring the role of instant messaging in a global software development project. Proceedings of the IEEE International Conference on Global Software Engineering, 2011. Y. Dittrich, K. Ronkko, J. Eriksson, C. Hansson, and O. Lindeberg. Cooperative method development. Empirical Software Engineering, 13(3):231–260, December 2007. M. G. Farkas. Social software in libraries: building collaboration, communication, and community online. Information Today, Inc., 2007. J.D. Herbsleb. Global software engineering: The future of sociotechnical coordination. In 2007 Future of Software Engineering, pages 188–198. IEEE Computer Society, 2007. B. Nardi, S. Whittaker, and Erin Bradner. Interaction and outeraction: instant messaging in action. In CSCW ’00: Proceedings of the 2000 ACM conference on Computer supported cooperative work, 2000. T. Niinimaki and C. Lassenius. Experiences of Instant Messaging in Global Software Development Projects: A Multiple Case Study. In Global Software Engineering, 2008. ICGSE 2008. IEEE International Conference on DOI - 10.1109/ICGSE.2008.27, pp. 55–64, 2008. C. Ou, X. Zhong, R. Davison, and Y. Liang. Can instant messaging empower teams at work? In Research Challenges in Information Science (RCIS), 2010 Fourth International Conference on DOI 10.1109/RCIS.2010.5507296, pp. 589–598, 2010. L. Setlock, S. Fussell, and C. Neuwirth. Taking it out of context: collaborating within and across cultures in face-to-face settings and via instant messaging. In CSCW ’04: Proceedings of the 2004 ACM conference on Computer supported cooperative work, 2004. J. Thom-Santelli and D. Millen. Learning by seeing: photo viewing in the workplace. In CHI ’09: Proceedings of the 27th international conference on Human factors in computing systems, 2009. C. Treude and M. A. Storey. How tagging helps bridge the gap between social and technical aspects in software development. In ICSE ’09: Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, 2009. T. Turner, P. Qvarfordt, J. Biehl, G. Golovchinsky, and M. Back. Exploring the workplace communication ecology. In CHI ’10: Proceedings of the 28th international conference on Human factors in computing systems, 2010. D. Zhao and M. Rosson. How and why people Twitter: the role that micro-blogging plays in informal communication at work. In GROUP ’09: Proceedings of the ACM 2009 international conference on Supporting group work, 2009.