Professional Documents
Culture Documents
net/publication/4369370
Conference Paper in Business and Information Systems Engineering the international journal of Wirtschaftsinformatik · April 2008
DOI: 10.1109/CISIS.2008.106 · Source: IEEE Xplore
CITATIONS READS
42 1,836
5 authors, including:
Some of the authors of this publication are also working on these related projects:
Governance Practices in Platform Ecosystems of the Enterprise Software Industry View project
All content following this page was uploaded by Franz Rothlauf on 29 September 2015.
Abstract—Software development is becoming more and more on the other hand, existing approaches can be characterized
complex. Traditionally and to date, the software development pro- and compared. This classification and evaluation of the current
cess rather corresponds to job-shop manufacturing. Therefore, state-of-the-art in distributed CSD facilitates identifying ap-
the ever growing demands for different kinds of software as well
as the ongoing globalization require more efficient development propriate methods and tools for distributed and collaboration-
processes. Both scientific literature and practical experience intensive software development processes as well as finding
hence postulate a necessary industrialization of software devel- gaps and deficiencies in the existing set of solutions.
opment and design of novel forms of specialization, task distri- In the following section, an initial conceptual foundation
bution, and collaboration. Existing approaches to collaborative is created and distinct dimensions of the classification frame-
software development can be classified and analyzed according
to multiple categories. By evaluating these, current deficiencies work are introduced. Section III classifies and evaluates the
are identified and discussed for further investigation. different approaches arranging them according to different
collaboration-intensive SE process steps, while section IV
Index Terms—Collaborative Software Development, Software
Engineering, Software Development Processes, Industrialization presents specific collaboration tool support. Section V ana-
of Software Production, Inter-Organizational Software Develop- lyzes the fundamental results from this literature review for
ment. persistent deficiencies and particularly against the background
of relevant behavioral theories and future challenges. In doing
so, the article is mainly aimed at researchers from SE-related
I. I NTRODUCTION
fields and also offers motivations and recommendations for
524
comprehensive this occurs, the higher the intensity [3], [11]. approaches that satisfy one or more of the CSD requirements
The intensity is determined by the fact whether work on an are introduced and analyzed in the following section.
object is actually done collectively or collaboration just occurs
through the systematic exchange of knowledge-based services III. C OLLABORATIVE D EVELOPMENT M ETHODS
and/or software components [6], [16]. CSD processes, both In SE, process-oriented approaches examine formally struc-
horizontal and vertical, exhibit uneven levels of participant tured procedures , e.g. in the form of process models. Ex-
involvement in collective endeavors [3], which results in the amples are the sequential and iterative models (waterfall and
various existing roles. From a legal perspective, the intensity spiral model) as well as more recent process frameworks like
of inter-organizational (organizationally distributed) software the RUP. The individual SE disciplines, from customer require-
development can also be classified depending on to what extent ments elicitation in RE to the deployment of the final software,
a loose, a contract, or a capital-based relationship is the case. account for a structured organization of the processes. Since
As opposed to strategic alliances, joint ventures, for instance, there are no process models for a vertically continuous and
require a common investment (capital-based relationship) and collaboration-intensive SE process up to now (cp. section
thus usually result in more intensive collaboration, since costs II), existing fragmental approaches are organized vertically
and revenue are distributed between the companies involved alongside the value chain. Thus, we differentiate and analyze
[15]. articles containing collaborative approaches from the fields of
Thus CSD particularly implies frequent interaction with (1) RE, (2) design and modeling as well as (3) implementation,
intensive knowledge exchange among the distributed stake- testing, and maintenance.
holders persuing potentially antagonistic goals (cp. [3], [6],
[17]). Based on these possible task distribution dimensions
and process characteristics, a software development scenario is A. Collaborative Requirements Engineering
called collaborative, if it features one or more of the following Up to now, various collaborative approaches to requirement
characteristics: elicitation and analysis have been developed and evaluated.
• organizational distribution (between several departments Since many stakeholders’ interests have to be coordinated and
and/or companies), consolidated in this early project phase [18, p. 118], so far,
• temporal distribution (i.e. asynchronous collaboration some interesting approaches to collaborative RE (CRE) have
processes) and been developed within the SE field. They differ in the type of
• spatial distribution (between several locations and/or distribution supported as well as regards the tool infrastructure
floors). provided.
The WinWin spiral model is based on the Theory W,
Taken together, these three task distribution dimensions
developed accordingly to the Harvard concept of negotiation
account for the the quintessential determinants of CSD sce-
techniques [19]. Its basic assumption is that the success of
narios. Increasing organizational, temporal, and/or spatial dis-
CSD projects depends on all involved parties to positively gain
tribution, affects a software development process negatively
benefits from the collaboration and the different requirements
regarding the congruence of the stakeholders’ goals and thus
to be equally represented. To accomplish this, asymmetric win-
distinguishes CSD from strictly collective SE cooperation
lose situations between individual stakeholders are avoided
(cp. [3], [4]). The transition from the strictly collective, non-
through systematic negotiation and moderation techniques to
collaborative cooperation and CSD is fluent and sometimes
minimize the overall project risk. WinWin represents an appli-
diffuse. However, a software development process becomes
ance of this theory and an enhancement to the original spiral
more collaborative by increasing organizational, spatial, and/or
model at the same time. Here, changing interests of various
temporal distribution. Besides these characteristics of distribu-
stakeholders as well as their coordination throughout several
tion, more of the following process-based characteristics leads
iterations are considered by consolidating them continuously
to an increase of the collaborative character of a software
resulting in high collaboration intensity.
development scenario:
Up to now, the EasyWinWin method represents the fourth
• a vertical, interdisciplinary teamwork (spanning several generation of the WinWin approach [20]. EasyWinWin
phases between different roles) with a simultaneously (EWW) is characterized by a flexible, iterative elicitation
• high intensity of the working process (as regards time process that also allows integrating new participants in the
spent and frequency of interaction). ongoing process. Furthermore, the establishment of trust is
Analogously to the organizational, temporal, and spatial encouraged through physical meetings and moderated discus-
distribution, the collaborative character of the software de- sions. The methodology is however complex and in despite of
velopment process becomes predominant with an increase in its specific groupware not primarily conceived for a distributed
these two criteria. CSD processes therefore usually require environment. Collaboration occurs with high intensity and
specific tool support (cf. [6], [10], [14], see also section partially asynchronously.
IV). As a preliminary conclusion, CSD distinguishes itself The groupware-based version ARENA enables the reduction
from other software development processes with respect to the of complexity, spatially distributed work, and asynchronous
degree of organizational, temporal, and/or spatial distribution. information exchange, e.g. by logging discussions [21]. How-
However, the working process nevertheless is supposed to ever, ARENA only allows asynchronous but distributed and
remain intense, phase-spanning, and interdisciplinary. Selected mobile collaborative requirement elicitation. Due to technical
525
reasons, ARENA however can no longer be combined with nor temporal distribution. A possible organizational distribu-
the earlier WinWin groupware [21]. tion of development tasks is not specified to this approach
either. Yet, there are some first approaches to apply XP in
B. Collaborative Design and Modeling Processes a spatially distributed environment through the use of appro-
priate tools for overcoming distance like Voice-over-IP, video
Collaborative design and modeling (CDM) processes con-
conferencing, and parallel, synchronous editing of source code
vert requirement specifications into both architectural and
(collaborative editing, see above).
more detailed component models as a basis for the subsequent
Collaboration-intensive, code-centric processes, that are also
implementation as source code. Collaborative approaches are
efficient and effective in large, distributed projects, have been
frequently transferred from other engineering disciplines (e.g.
established within various open source software development
from Computer-Aided and Concurrent-Design processes in the
projects [22], [26]. Moreover, both the Collaborative Soft-
automobile industry). Initial approaches which will not be
ware Inspection and Collaborative Asynchronous Inspection
further addressed here were Joint Application Design (JAD)
of Software methods are distributed approaches to collab-
[22] as well as Participatory Design (PD) [23].
orative quality assurance, based on hypertext as a part of
Concurrent design processes [13], such as the Collaborative
the post-implementation disciplines of testing, and mainte-
Software Engineering Methodology (CSEM), are more and
nance. It features a tool-based method for the distributed
more incorporated into UML-based methods for model-driven
asynchronous source code inspection that aims at minimizing
software development (MDD) and eventually automatic source
synchronous physical meetings [27]. Approaches to distributed
code generation from models. Even though there are so far not
and asynchronous maintenance of software (e.g. collaboration
many theoretically sound methodologies in this field, modern
in software maintenance, [28]) also fall into this category.
development tools such as, for instance, Gentleware Poseidon
The latter approach supports distributed collaboration among
and IBM Rational XDE allow concurrent DSD and MDD pro-
several software engineers by providing a hypertext-based
cesses (Concurrent MDD, CMDD). The current UML software
system to record maintenance decisions and to reference to
supports asynchronous, distributed collaboration by managing
source code which is also belongs to traceability and rationale
and versioning the models centrally, similar to source code
management activities.
in configuration managements systems like Subversion. The
methods mentioned provide at least server-side repositories
with the ability to register changes in the models and to IV. C OLLABORATION T OOL S UPPORT
determine discrepancies. Conflicts due to modification by
On the basis of existing Groupware and integrated de-
different developers on a model can therefore also be reduced
velopment environments (IDE) functionality, Collaborative
similarly to code versioning in a Subversion system.
Software Development Platforms (CSDPs) offer centralized
coordination and communication capabilities for asynchronous
C. Collaboration in Implementation, Testing and Maintenance and synchronous collaboration processes for highly distributed
Due to their direct relation to source code as primary teams of developers over the Internet while integrating tradi-
artifact, approaches to collaborative implementation, test- tional tool support. As a first proof-of-concept, they are already
ing and maintenance (CITM) already feature a higher tool used successfully within numerous open source projects [22],
orientation as the ones discussed in the previous disci- [26]. Hence, in addition to commercial solutions, there are var-
plines. Collaboration-intensive processes can be supported ious open source and experimental approaches from research
synchronously in form of both shared workspaces and appli- projects.
cation sharing (Collaborative Editing) and/or asynchronously As regards commercial solutions, platforms like Source-
through versioning systems [2], [14]. By now, various tools Forge represent specialized enhancements of server-based
like SubEthaEdit enable editing source code files collabora- CSCW solutions [22]. The basic functionalities of a collab-
tively. Here, developers see the respective changes made by oration platform can be distinguished into the three major
their spatially distributed colleagues directly in the document. categories (1) “coordination”, (2) “collaboration”, and (3)
The methodological support for the implementation-based “community building”, which is a new feature compared to
collaboration processes however is still neglected in academic the aforementioned solutions (cp. [3]). In addition to SCM
research. In practice, a return to socio-technical problems can systems, asynchronous and synchronous communication tools
be observed within the general field of CSD [24]. As a part of (forums, wikis, chats, etc.), CSDPs also feature detailed task
this trend, particularly people-centered approaches for small management with issue trackers [29], [30]. CSDPs thus allow
to medium-sized development groups, so-called agile devel- for better traceability of individual process steps as well as
opment methods, for instance Extreme Programming (XP) relationships between different software artifacts among each
are subject to investigations [25]. Distinctive collaboration- other and their authors and contributors (cp. [18], p. 163) and
intensive processes within XP are pair programming, where [24]). CSDPs can be accessed either through an IDE plugin or
two collocated developers simultaneously work on one part directly via browser [29]. For inter-organizational scenarios, a
of the source code and alternately one codes and the other CSDP can also be provided by an independent vendor as an
one evaluates the code as well as continuous CRE, i.e. the application service (software-as-a-service) over the Internet.
customer is highly integrated on-site. However, XP features As opposed to IDEs, CSDPs cover all functions necessary for a
only little methodical guidance and neither considers spatial vertically-continuous and collaboration-intensive development
526
process. In addition to asynchronous information exchange, framework consists of the organizational, spatial, and temporal
synchronous collaboration processes are more and more sup- distribution of SE tasks, process direction, and collaboration
ported through complementary tools like instant messaging intensity (see figure 1). Based on these criteria, methodological
or voice services [10], [11]. Server-based CSDP solutions (process-related) approaches as well as existing collaboration
therefore cover a maximum of tool-related requirements for tool support are taken into consideration.
conducting CSD projects (cp. section II and [30]). Established As a conclusion from analyzing and comparing these ex-
requirements management tools, on the other hand, do not isting approaches, strictly tool-based CSD approaches prevail
provide sufficient support for distributed collaboration (see significantly in terms of frequency and state of elaboration.
analyses in [31] and [32]). Existing process models and frameworks neither dedicatedly
As has been mentioned before, in addition to existing com- address different dimensions and characteristics of a vertically-
mercial collaboration platforms, there are many experimental integrated CSD process, nor do they attempt to consolidate
and prototypical ones. Their specific features as compared to existing horizontal approaches to particular SE disciplines
standard commercial CSDPs available on the market (cp. [29]) (cp. sections III-A to III-C). Predominantly, existing process-
will be addressed in the following. For preparing this article, related approaches focus on RE tasks. Many development
a total of 12 experimental platforms were analyzed [15]. methodologies and particularly the collaboration tools applied
None of the experimental platforms systematically differenti- in commercial large-scale distributed projects originate from
ates and supports intra- and inter-organizational collaboration open source contexts [29]. Open source methods and tools are
scenarios. However, these approaches can be distinguished by however not easily applicable and transferable to commercial
different considerations of temporal distribution as well as in- environments and require methodological modifications and
tended collaboration-intensity. Comprehensive and continuous adaptations [15]. Furthermore, only a few approaches exam-
support for vertical, collaboration-intensive CSD processes is ine questions of behavioral theories from social sciences as
only provided by ConversationBuilder, GENESIS, JAZZ, and regards collaboration-intensive software development and the
MILOS. These approaches are therefore further analyzed in associated socio-technical issues. Therefore, there is still a lack
the following: of approaches attempting to identify methodical CSD support
ConversationBuilder supports common management and based on behavioral science and socio-technical theories in-
versioning artifacts as well as distributed collaboration in the cluding tool infrastructure (cp. also [9]).
form of so-called “conversations” [33]. GENESIS (GEner- Thus, in future research, there is still a need for further
alised eNvironment for procEsS management in cooperatIve investigations regarding the support of CSD processes in
Software engineering) includes workflow as well as artifact terms of both theoretical and practical points of view. From
management systems and features extensive coordination and a practical standpoint, there is a need for developing solu-
communication functions. Both process- and product-based tion approaches including methodological and tool-related SE
software projects are supported, while GENESES utilizes support for distributed collaboration-intensive processes while
its own language to define the processes [34]. The JAZZ at the same time considering socio-technical issues. In doing
project, actively supported by IBM Research, constitutes a so, the biggest challenge lies in developing and introducing
collaborative enhancement to the open source delelopment tool integrated approaches for this interdisciplinary and practically
“Eclipse”. Its main approach is to leave the users in their relevant problem. Future CSD research has to support the com-
familiar IDE environments and simply provide context-based panies to find the appropriate methods and tools for various
enhancements for more intense collaboration within software collaboration contexts regarding their respective requirements.
projects (see [35]). MILOS, on the other hand, provides Furthermore, specific quality standards have to be maintained
tools for collaborative process modeling, project planning, and within companies from different business environments (cp.
implementation as well as traceability management and change section II and [8]), like for instance bi-directional end-to-end
notification. Additionally, it is compatible to Microsoft Project traceability of the entire development process as prescribed
[36]. by the capability maturity model (integration) and numerous
CSDPs have proven to be efficient in collaboration-intensive other process quality standards. Moreover, other industry-
scenarios like, for instance, highly distributed and specialized specific standards, like the US Food and Drug Administration
open source projects or globally-distributed offshore develop- (FDA) in the medical engineering field, also require process
ment projects (cp. section II and [7]). The use of traditional transparency and traceability of all process steps of SE for
methods and tools in large-scale distributed projects however medical products. Especially in the case of high distribution
consistently leads to problems within the individual disciplines of resources and high collaboration intensity, in typical CSD
due to vertical barriers as regards the overall process [15]. processes, traceability requirements represent a major chal-
lenge.
From a more academic perspective, it has to be concluded,
V. D ISCUSSION AND C ONCLUSION
that the approaches and tools introduced are rarely based
The goal of this paper is to create a systematic overview of on sound theoretical assumptions and analyses regarding the
existing approaches to CSD from a SE process perspective. empirical behavior of team members and social interaction
For this purpose, three dimensions of collaboration in SE processes. Therefore, combining SE knowledge with behav-
contexts as well as different categories of approaches are iden- ioral theories from social science should be one main task in
tified from academic literature. This analysis and classification future research. As a starting point, the social exchange theory,
527
the resource dependency theory, and/or the theory of planned [15] T. Hildenbrand, M. Geisser, and M. Nospers, “Die Übertragbarkeit
behavior could be applied to CSD scenarios. Based on these der open source-entwicklungsmethodik in die unternehmenspraxis,”
Softwaretechnik-Trends, vol. 26, no. 1, pp. 37–42, 2006.
and other theories, it is to be examined how SE processes, [16] D. L. Dean, J. D. Lee, M. O. Pendergast, A. M. Hickey, and J. F. N.
group behavior, and tool application has to be designed so Jr., “Enabling the effective involvement of multiple users: Methods and
that the software products are developed efficiently with an tools for collaborative software engineering,” Journal of Management
Information Systems, vol. 14, no. 3, pp. 179–222, 1998.
uncompromised level of quality (cp. [3], p. 208). [17] D. A. Harrison, K. H. Price, J. H. Gavin, and A. T. Florey, “Time,
To overcome the different dimensions of distribution, sev- teams, and task performance: Changing effects of surface- and deep-
eral SE methods and tools can be applied, whereas they were level diversity ongroup functioning,” Academy of Management Journal,
vol. 45, no. 5, pp. 1029–1045, 2002.
initially not designed based on behavioral theories. Research in [18] I. Sommerville, Software Engineering, 8th ed. Boston, USA: Addison-
the field of Human-Computer Interaction has already proven Wesley, 2007.
the feasibility and usefulness of behavioral theories on an [19] B. W. Boehm and P. Bose, “A collaborative spiral software process
model based on theory w,” in Proceedings of the 3rd International
individual level. Therefore, an ensuing challenge lies in the in- Conference on the Software Process (ICSP’94). IEEE Computer
terdisciplinary examination of group behavior (human focus), Society, 1994, pp. 59–68.
development processes (task focus) and tool support (tech- [20] P. Grünbacher, “Integrating groupware and case capabilities for improv-
ing stakeholder involvement in requirements engineering,” in Proceed-
nology focus). The growing number of global and offshore ings of the 26th EUROMICRO Conference (EUROMICRO’00). IEEE
development scenarios underlines the rising relevance of this Computer Society, 2000, pp. 2232–2239.
multi-faceted perspective on collaboration and coordination [21] B. W. Boehm, P. Grünbacher, and R. O. Briggs, “Developing groupware
for requirements negotiation: Lessons learned,” IEEE Software, vol. 18,
issues in practical environments (for an empirical analysis of no. 3, pp. 46–55, 2001.
offshore development scenarios see [7]). [22] L. Augustin, D. Bressler, and G. Smith, “Accelerating software devel-
opment through collaboration,” in Proceedings of the 24rd International
R EFERENCES Conference on Software Engineering (ICSE’02). IEEE Computer
Society, 2002, pp. 559–563.
[1] R. Kilian-Kehr, O. Terzidis, and D. Voelz, “Industrialisation of the [23] M. J. Muller and S. Kuhn, “Participatory design,” Communications of
software sector,” Wirtschaftsinformatik, vol. 49, no. Sonderheft, pp. 62– the ACM, vol. 36, no. 6, pp. 24–28, 1993.
71, 2007. [24] C. R. B. de Souza, T. Hildenbrand, and D. Redmiles, “Towards visualiza-
[2] D. Redmiles, A. van der Hoek, B. Al-Ani, T. Hildenbrand, S. Quirk, tion and analysis of traceability relationships in distributed and offshore
A. Sarma, R. S. S. Filho, C. de Souza, and E. Trainer, “Continuous software development projects,” in Proceedings of the 1st International
coordination: A new paradigm to support globally distributed software Conference on Software Engineering Approaches for Offshore and
development projects,” WIRTSCHAFTSINFORMATIK, vol. 49, no. Son- Outsourced Development (SEAFOOD’07). Springer, 2007.
derheft, pp. S28–S38, 2007. [25] K. Beck, “Embracing change with extreme programming,” IEEE Com-
[3] J. H. Bair, “Supporting cooperative work with computers: Addressing puter, vol. 32, no. 10, pp. 70–77, 1999.
meetingmania,” in Proceedings of the 34th IEEE Computer Society In- [26] J. Feller and B. Fitzgerald, Understanding Open Source Software De-
ternational Conference: Intellectual Leverage (COMPCON’89). IEEE velopment. Boston, USA: Addison-Wesley, 2001.
Computer Society, 1989, pp. 208–217. [27] V. Mashayekhi, J. M. Drake, W.-T. Tsai, and J. Riedl, “Distributed,
[4] H. Krcmar, “Computerunterstützung für die gruppenarbeit: zum collaborative software inspection,” IEEE Software, vol. 10, no. 5, pp.
stand der computer supported cooperative work forschung,” 66–75, 1993.
WIRTSCHAFTSINFORMATIK, vol. 34, no. 4, pp. 425–437, 1992. [28] R. Lougher and T. Rodden, “Supporting long-term collaboration in soft-
[5] J. Altmann and G. Pomberger, “Cooperative software development: Con- ware maintenance,” in Proceedings of the Conference on Organizational
cepts, model and tools,” in Proceedings of the TOOLS-30 Conference Computing Systems (COCS’93). ACM Press, 1993, pp. 228–238.
(TOOLS-30’99). IEEE Computer Society, 1999, pp. 194–277. [29] J. Robbins, “Adopting open source software engineering (osse) practices
[6] D. G. Messerschmitt and C. Szyperski, Software Ecosystem: by adopting osse tools,” in Free/Open Source Processes and Tools,
Understanding an Indispensable Technology and Industry. J. Feller, B. Fitzgerald, S. A. Hissam, and K. R. Lakhani, Eds.
Cambridge, USA: MIT Press, 2003. [Online]. Available: Cambridge, USA: MIT Press, 2005, pp. 245–264. [Online]. Available:
http://mitpress.mit.edu/softeco/(28.04.2005) http://www.ics.uci.edu/∼jrobbins/papers/robbins-msotb.pdf
[7] J. Dibbern, J. Winkler, and A. Heinzl, “Explaining variations in client [30] F. Rodriguez, M. Geisser, K. Berkling, and T. Hildenbrand, “Evaluat-
extra costs between software projects offshored to india,” MIS Quarterly, ing collaboration platforms for offshore software development scenar-
no. Special Issue on Information Systems Offshoring, 2008, accepted for ios,” in Proceedings of the 1st International Conference on Software
publication. Engineering Approaches For Offshore and Outsourced Development
[8] B. Curtis, H. Krasner, and N. Iscoe, “A field study of the software design (SEAFOOD’07). Springer, 2007, pp. 96–108.
process for large systems,” Communications of the ACM, vol. 31, no. 11, [31] M. Geisser, T. Hildenbrand, and N. Riegel, “Evaluating the applicability
pp. 1268–1287, 1988. of requirements engineering tools for distributed software development,”
[9] T. Hildenbrand, F. Rothlauf, and A. Heinzl, “Ansätze zur kollaborativen Working Paper des Lehrstuhls für ABWL und Wirtschaftsinformatik der
softwareerstellung,” WIRTSCHAFTSINFORMATIK, vol. 49, no. Sonder- Universität Mannheim, no. 2, 2007.
heft, pp. S72–S80, 2007. [32] C. Hood, S. Mühlbauer, and C. Rupp, iX-Studie: Anforderungsmanage-
[10] J. D. Herbsleb and A. Mockus, “An empirical study of speed and ment, 2nd ed. Hannover, Deutschland: Heise Zeitschriften Verlag, 2007.
communication in globally distributed software development,” IEEE [33] S. M. Kaplan, W. J. Tolone, A. M. Carroll, D. P. Bogia, and C. Big-
Transactions on Software Engineering, vol. 29, no. 6, pp. 481–494, 2003. noli, “Supporting collaborative software development with conversa-
[11] E. Carmel and R. Agarwal, “Tactical approaches for alleviating distance tionbuilder,” in Proceedings of the 5th ACM SIGSOFT Symposium on
in global software development,” IEEE Software, vol. 18, no. 2, pp. Software Development Environments (SDE’92). ACM Press, 1992, pp.
22–29, 2001. 11–20.
[12] J. DeFranco-Tommarello and F. P. Deek, “Collaborative problem solving [34] M. Gaeta and P. Ritrovato, “Generalised environment for process man-
and groupware for software development,” Information Systems Man- agement in cooperative software engineering,” in Proceedings of the 26th
agement, vol. 21, no. 1, pp. 67–80, 2004. Annual International Computer Software and Applications Conference
[13] P. Dewan and J. Riedl, “Toward computer-supported concurrent software (COMPSAC’02). IEEE Computer Society, 2002, pp. 1049–1053.
engineering,” IEEE Computer, vol. 26, no. 1, pp. 17–27, 1993. [35] L.-T. Cheng, C. R. de Souza, S. Hupfer, J. Patterson, and S. Ross,
[14] A. van der Hoek, D. Redmiles, P. Dourish, A. Sarma, R. Silva Filho, “Building collaboration into ides,” ACM Queue, vol. 1, no. 9, pp. 40–50,
and C. de Souza, “Continuous coordination: A new paradigm for 2003.
collaborative software engineering tools,” in Proceedings of the 26th [36] F. Maurer, G. Succi, H. Holz, B. Kötting, and B. Dellen, “Software
International Conference on Software Engineering (ICSE’04), Workshop process support over the internet,” in Proceedings of the 21st Interna-
on Directions in Software Engineering Environments (WoDiSEE’04). tional Conference on Software Engineering (ICSE’99). IEEE Computer
IEEE Computer Society, 2004, pp. 29–36. Society, 1999, pp. 642–645.
528