4
Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) Anne Hoffmann and Christian Lescher Siemens Corporate Technology, Software & Engineering (CT SE) Otto-Hahn-Ring 6, D-82000 Munich, Germany {anne.hoffmann|christian.lescher}@siemens.com Abstract Software and system development nowadays is increas- ingly a globally-distributed undertaking. Development teams are often distributed over multiple sites and coun- tries. Geographic separation, different time zones and cul- tural differences have brought new challenges to Require- ments Engineering, which require improved skills in com- munication, collaboration and dealing with intercultural is- sues. This paper presents the idea of the CIRCUS workshop held in conjunction with RE’09 and summarizes organiza- tional prerequisites and proven success factors for Global Requirements Engineering. 1 Introduction Software and system development nowadays is increas- ingly a globally-distributed undertaking. Development teams are often distributed over multiple sites and countries. A variety of motivations, including cost competitiveness, ability to use the most appropriate resources regardless of location, and co-location with important markets or customers are driving this move. While the advantages are obvious, global development also introduces big chal- lenges. One of the major problem areas is Requirements Engineering. Communication and coordination on require- ments are impeded by distance and cultural differences. Competitiveness now and in the future requires a world- class competence in this new global development paradigm. This paper presents the idea of the CIRCUS workshop held in conjunction with RE’09. It provides an overview of challenges in Global Requirements Engineering and sum- marizes organizational prerequisites and proven success factors. 2 Challenges in Global Requirements Engi- neering Globalization is seen as one of the major challenges in Requirements Engineering [2]. Global Requirements Engi- neering is characterized by geographic separation, different time zones and cultural differences. In the context of glob- ally distributed development teams, “the inherent difficulty of achieving a shared understanding of the requirements is amplified, both because of loss of context and loss of com- munication bandwidth.” [6] 2.1 The Role of Communication The loss of communication bandwidth in globally dis- tributed settings is critical to Global Requirements Engi- neering. Software engineers need to spend much of their time seeking information that is needed to complete their tasks, exchanging information, or negotiating changes in requirements. Without this interaction, it is impossible to complete work in a way that will result in a cohesive system that meets its intent. Informal and ad-hoc interactions also play a large part in facilitating effective coordination. While we attempt to deal with needed coordination through de- fined processes and well specified systems, this is typically not enough. Chance discussions around a water cooler or during a joint lunch help people come to know who is work- ing on what, what skills people have, discover conflicts in assumptions, or get questions answered [11]. This informa- tion becomes important for being able to quickly discover and resolve issues. Communication takes up a surprisingly large percent- age of a software developer’s time. In fact D. Barstow showed that an individual programmer spends more time either looking for or exchanging information than any other activity [1]. Past studies have also shown that organizational processes, design documents, and so forth don’t provide all the information that is necessary [3]. Miscommunication is 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS 2009) 978-0-7695-4097-9/10 $26.00 © 2010

[IEEE 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) - Atlanta, GA, USA (2009.08.31-2009.08.31)] 2009 Collaboration

Embed Size (px)

Citation preview

Page 1: [IEEE 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) - Atlanta, GA, USA (2009.08.31-2009.08.31)] 2009 Collaboration

Collaboration and Intercultural Issues on Requirements:Communication, Understanding and Softskills (CIRCUS)

Anne Hoffmann and Christian LescherSiemens Corporate Technology, Software & Engineering (CT SE)

Otto-Hahn-Ring 6, D-82000 Munich, Germany{anne.hoffmann|christian.lescher}@siemens.com

Abstract

Software and system development nowadays is increas-ingly a globally-distributed undertaking. Developmentteams are often distributed over multiple sites and coun-tries. Geographic separation, different time zones and cul-tural differences have brought new challenges to Require-ments Engineering, which require improved skills in com-munication, collaboration and dealing with intercultural is-sues. This paper presents the idea of the CIRCUS workshopheld in conjunction with RE’09 and summarizes organiza-tional prerequisites and proven success factors for GlobalRequirements Engineering.

1 Introduction

Software and system development nowadays is increas-ingly a globally-distributed undertaking. Developmentteams are often distributed over multiple sites and countries.A variety of motivations, including cost competitiveness,ability to use the most appropriate resources regardlessof location, and co-location with important markets orcustomers are driving this move. While the advantagesare obvious, global development also introduces big chal-lenges. One of the major problem areas is RequirementsEngineering. Communication and coordination on require-ments are impeded by distance and cultural differences.Competitiveness now and in the future requires a world-class competence in this new global development paradigm.

This paper presents the idea of the CIRCUS workshopheld in conjunction with RE’09. It provides an overview ofchallenges in Global Requirements Engineering and sum-marizes organizational prerequisites and proven successfactors.

2 Challenges in Global Requirements Engi-neering

Globalization is seen as one of the major challenges inRequirements Engineering [2]. Global Requirements Engi-neering is characterized by geographic separation, differenttime zones and cultural differences. In the context of glob-ally distributed development teams, “the inherent difficultyof achieving a shared understanding of the requirements isamplified, both because of loss of context and loss of com-munication bandwidth.” [6]

2.1 The Role of Communication

The loss of communication bandwidth in globally dis-tributed settings is critical to Global Requirements Engi-neering. Software engineers need to spend much of theirtime seeking information that is needed to complete theirtasks, exchanging information, or negotiating changes inrequirements. Without this interaction, it is impossible tocomplete work in a way that will result in a cohesive systemthat meets its intent. Informal and ad-hoc interactions alsoplay a large part in facilitating effective coordination. Whilewe attempt to deal with needed coordination through de-fined processes and well specified systems, this is typicallynot enough. Chance discussions around a water cooler orduring a joint lunch help people come to know who is work-ing on what, what skills people have, discover conflicts inassumptions, or get questions answered [11]. This informa-tion becomes important for being able to quickly discoverand resolve issues.

Communication takes up a surprisingly large percent-age of a software developer’s time. In fact D. Barstowshowed that an individual programmer spends more timeeither looking for or exchanging information than any otheractivity [1]. Past studies have also shown that organizationalprocesses, design documents, and so forth don’t provide allthe information that is necessary [3]. Miscommunication is

2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS 2009) 978-0-7695-4097-9/10 $26.00 © 2010

Page 2: [IEEE 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) - Atlanta, GA, USA (2009.08.31-2009.08.31)] 2009 Collaboration

one large reason for issues such as cost overruns, scheduleslips, and quality problems [7]. Herbsleb and Mockus foundthat distributed work items take about 2.5 times longer tocomplete than similar items where all the work is co-located[5].

2.2 Intercultural Issues and the HumanFactors

Besides communication, challenges in Global Require-ments Engineering are mostly related to people-related as-pects, the human factors. To focus on people-related as-pects, softskills and the human factors is of growing im-portance. For instance, at the recent IEEE InternationalConference on Global Software Engineering (ICGSE), July13th-16th, 2009, more than half of the 32 papers reported onpeople-related aspects such as trust and culture, communi-cation, softskills, social networks, or relationship building.

Trust and team building is very much impeded by geo-graphic, temporal and socio-cultural distance. Cultural dif-ferences – norms of the collective, different contexts – cansignificantly impact a shared understanding of requirements[9]. Culture has two dimensions: national culture and or-ganizational culture. Aspects of national (ethnic) cultureinclude language, attitude towards hierarchy and communi-cation style [8, 4]. Both national and organization culturehave impact on Global Requirements Engineering.

2.3 The Customer-Developer Partnership

The above mentioned challenges are valid for bothproject-internal collaboration and collaboration betweencustomers and development organizations. To be suc-cessful in Global Requirements Engineering, an effectivecollaboration with the customers is essential. According toWiegers, “high quality requirements result from effectivecommunication and collaboration between developers andcustomers – a partnership” [12]. Wiegers describes therights and responsibilities for software customers, amongthem: speaking the same language, learning about thebusiness context, writing understandable requirementsspecifications, communicating changes as soon as they areknown, treating each other with respect and maintaining acollaborative attitude.

We elaborated a detailed list of risk factors which im-pede coordination in globally distributed projects, includ-ing technical, organizational and people risk factors, in anearlier publication [10].

3 Success Factors for Global RequirementsEngineering

As nowadays it is common to develop a system or a soft-ware on different development sites, thorough collaborationbecomes very important to be able to deliver the product tothe customer in time and budget and in the expected quality.We have been working for several years on requirements incollaboration-intensive projects, collecting success factorsthat helped our projects to succeed. We also recognized im-portant Organizational Prerequisites, which are fundamen-tal preconditions for globally distributed projects.

3.1 Organizational Prerequisites

In the following, we summarize fundamental organiza-tional prerequisites for successful Global Requirements En-gineering.

• Support by management. Almost everything thataims to be successful requires management buy-in,meaning continous management attention and thus,support. This includes the setup of a project to imple-ment collaboration and that this project is adequatelyfunded.

• Training and coaching. Collaboration is not success-ful, when done only intuitively. Extensive training(and thus budget for it) is needed as well as coaching,for instance senior expertise within the projects advis-ing in daily work issues.

• Compatibility of development environments, pro-cesses, project management, and managementpractices. Working together means that different ap-proaches on different sites have to be synchronized oreven harmonized. This also enables efficient movingof persons between sites.

• Clear escalation path. It has to be clear whom to talkto when things go wrong. Therefore, a unique escala-tion path has to be established, which is known to everyteam member. The defintion of an escalation usuallycomes with the setup of the corressponding project.Furthermore, enabling of more direct communicationrather than having to go up and down the hierarchy isimportant.

• Adequate communication infrastructure. Commu-nication over distances is a key challenge in GlobalRequirements Engineering. This has to be reflected inthe setup of a communication structure. Such as ensur-ing availability of information for all persons involved,sometimes meaning availability of support 24 hours aday.

2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS 2009) 978-0-7695-4097-9/10 $26.00 © 2010

Page 3: [IEEE 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) - Atlanta, GA, USA (2009.08.31-2009.08.31)] 2009 Collaboration

3.2 Seven Key Success Factors

In addition to these prerequisites we identified seven suc-cess factors. To our knowledge, these seven factors coverthe main aspects of collaboration, understanding and com-munication in distributed environments.

1. Trust. To establish a trust relationship among projectmembers of the involved sites is essential. Withouttrust there is no team, without a team there is no collab-oration. Thus, without trust, success becomes a matterof luck.

2. Responsibility. Responsibility has to be definedclearly. This is done by a clearly defined common goalthat is understood in the same way and agreed on byevery site and every person. Also, responsibility isdelegated to the sites. This is always important, butbecomes even more important in distributed environ-ments.

3. Regular and open communication. Open commu-nication is a prerequisite for detecting problems earlyon. For instance, talking honestly to each other on afrequent basis will enable the other sites to provide as-sistance if possible. Regular and open communicationincludes involving customers continously, this meansstaying in close contact to the customer. Generally,personal contacts cannot be ommitted as it channelstrust. Thus a solution might be to have an onsite rep-resentative to ensures communication flow among thesites.

4. Well-defined architecture, communication inter-faces and work packages. The system architecturedetermines the need for communication and coordina-tion. A well-defined, optimized architecture can helpto reduce the need to coordinate. Communication in-terfaces and work packages have be to well-defined toensure traceable and efficient communication flow, es-pecially among the sites.

5. Well-defined requirements. Requirements define,what is to be done in a project. Also, they describe theexpected outcome. As these requirements are the ba-sis for every work item in the project, they have to bewell written and easy understandable, yet unambigu-ous. Also, they have to be reviewed in order to ensurecommon understanding.

6. Language and Terminology. Ensure adequate lan-guage skills to avoid misunderstandings that cost timeand money. Even, if the project has agreed on a com-monly used language, there might be different under-standings of the usage of terminology and domain lan-guage. This are for instance differences between native

and non-native speakers, or dialects. This holds for do-main languages also. For instance, the term “systemarchitecture” is used world-wide. However, its defini-tion and thus understanding might be different. Here,a glossary ensures same usage and understanding ofterms within the projects’ context.

7. Cultural differences. Each culture has their own prin-ciples. Even, different enterprises have different work-ing cultures. Therefore, it is neccessary to be aware ofthese differences and to know how to deal with them,otherwise you will not be able to really work together.

4 The CIRCUS Workshop

Being aware of above described success factors, we de-rived the CIRCUS workshop concept in order to providea forum for discussion of best practices, lessons learnedand for experience exchange on multi-site collaboration andintercultural issues on requirements and how to deal withthem. There are multiple research activities as well as bestpractices in industry, which are very valuable for experi-ence exchange. CIRCUS aims to share experience as wellas providing a platform for continous exchange and work-ing together.

Also, during the workshop open issues and questionswill be collected and documented, thus providing a basisfor further activities. These activities could be but are notlimited to

• Working groups elaborating on specific topics not yetcovered in current research activities

• Address specific topics in upcoming workshops not yetcovered, and

• Joint publications

5 Conclusion and Future Work

Exchanging experience within the CIRCUS workshopshall provide us knowledge about existing approachesand new ideas on how to improve collaboration in GlobalRequirements Engineering.

Our next steps will aim at answering questions such as

• How to train awareness for collaboration and intercul-tural issues?

• How to detect hidden problems in collaborations assoon as possible?

• How to systematically address collaboration and inter-cultural issues?

2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS 2009) 978-0-7695-4097-9/10 $26.00 © 2010

Page 4: [IEEE 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS) - Atlanta, GA, USA (2009.08.31-2009.08.31)] 2009 Collaboration

References

[1] D. Barstow. Artificial intelligence and software engineering.Proc. Ninth Int’l Conf. Software Eng., 9:541–561, 1987.

[2] B. H. Cheng and J. M. Atlee. Research directions in re-quirements engineering. In Future of Software Engineering(FOSE ’07), pages 285–303. IEEE Computer Society, 2007.

[3] B. Curtis, H. Krasner, and N. Iscoe. A field study of thesoftware design process for large systems. Commun. ACM,31(11):1268–1287, November 1988.

[4] D. Damian. Stakeholders in global requirements engi-neering: Lessons learned from practice. IEEE Software,24(2):21–27, 2007.

[5] J. Herbsleb and A. Mockus. An empirical study of speedand communication in globally distributed software de-velopment. IEEE Transactions on Software Engineering,29(6):481–494, 2003.

[6] J. D. Herbsleb. Global software engineering: The future ofsocio-technical coordination. In Future of Software Engi-neering (FOSE ’07), pages 188–198. IEEE Computer Soci-ety, 2007.

[7] D. J. Hoch, S. K. Lindner, C. R. Roeding, and G. Purkert.Secrets of Software Success: Management Insights from 100Software Firms around the World. Harvard Business SchoolPress, Boston, MA, USA, 2000.

[8] G. Hofstede and G. J. Hofstede. Cultures and Organiza-tions: Software of the Mind. McGraw Hill Professional,2005.

[9] Y. Hsieh. Culture and shared understanding in distributedrequirements engineering. International Conference onGlobal Software Engineering, 0:101–108, 2006.

[10] C. Lescher, J. D. Herbsleb, and M. Bass. A coordinationrisk analysis method for multi-site projects: Experience re-port. In Proceedings of the IEEE International Conferenceon Global Software Engineering (ICGSE09), 2009.

[11] G. M. Olson and J. S. Olson. Distance matters. Human-Computer Interaction, 15(2&3):139–178, 2000.

[12] K. E. Wiegers. Software Requirements, Second Edition. Mi-crosoft Press, February 2003.

2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills (CIRCUS 2009) 978-0-7695-4097-9/10 $26.00 © 2010