Ansätze zur kollaborativen Softwareerstellung

Die Erstellung von Software zur Unterstutzung betrieblicher Ablaufe wird in zunehmendem Mase komplexer. Da der Erstellungsprozess in der Softwareindustrie traditionell einer Werkstatt- bzw. Einzelfertigung entspricht, erfordert die stetig steigende Nachfrage nach betrieblicher Software und die fortschreitende Globalisierung die rationellere Gestaltung der Softwareentwicklung. In der Literatur werden daher immer haufiger die Industrialisierung der Softwareerstellung und neuartige Formen der Spezialisierung, Arbeitsteilung und Zusammenarbeit (engl. Collaboration) vorgestellt. Dabei kann im Wesentlichen unterschieden werden, ob die Zusammenarbeit einzelner Akteure und Arbeitsgruppen auf Projektebene oder die strategische Zusammenarbeit von Unternehmen innerhalb der Softwareindustrie behandelt wird. Uber diese beiden grundlegenden Betrachtungsebenen hinweg lassen sich existierende Ansatze zur arbeitsteiligen Softwareerstellung entlang mehrerer Dimensionen, wie raumliche, zeitliche und organisatorische Verteilung der Aktivitaten im Prozess sowie Intensitat und Richtung der Zusammenarbeitsbeziehungen klassifizieren. Ziel dieses Artikels ist es, einen umfassenden und systematischen Uberblick uber bestehende Ansatze zur kollaborativen Softwareerstellung zu geben, indem diese in einen generischen Klassifikationsrahmen eingeordnet werden. Des Weiteren soll eine etymologische und pragmatische Herleitung des Kollaborationsbegriffs die Etablierung eines eigenstandigen Forschungsparadigmas im Rahmen der Wirtschaftsinformatik ermoglichen.

[1]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[2]  Sirkka L. Jarvenpaa,et al.  Is Anybody Out There? Antecedents of Trust in Global Virtual Teams , 1998, J. Manag. Inf. Syst..

[3]  Mark R. Woodroffe,et al.  Team Performance Factors in Distributed Collaborative Software Development , 2001, PPIG.

[4]  Steve Sawyer,et al.  Software development teams , 2004, CACM.

[5]  Walter F. Tichy,et al.  Should Computer Scientists Experiment More? , 1998, Computer.

[6]  W.R. Bischofberger,et al.  Computer supported cooperative software engineering with Beyond-Sniff , 1995, Proceedings Software Engineering Environments.

[7]  Marta Mattoso,et al.  OdysseyShare: an environment for collaborative component-based development , 2003, Proceedings Fifth IEEE Workshop on Mobile Computing Systems and Applications.

[8]  Maarten Sierhuis,et al.  Management of interdependencies in collaborative software development , 2003, 2003 International Symposium on Empirical Software Engineering, 2003. ISESE 2003. Proceedings..

[9]  Robert Groth Is the software industry's productivity declining? , 2004, IEEE Software.

[10]  Paul Grünbacher,et al.  Tool Support for Distributed Requirements Negotiation , 2003 .

[11]  William J. Tolone,et al.  Supporting collaborative software development with ConversationBuilder , 1992 .

[12]  Tore Dybå,et al.  Conducting realistic experiments in software engineering , 2002, Proceedings International Symposium on Empirical Software Engineering.

[13]  Kuldeep Kumar,et al.  Sustainable Collaboration: Managing Conflict and Cooperation in Interorganizational Systems , 1996, MIS Q..

[14]  David B. Martin,et al.  Patterns of cooperative interaction: linking ethnomethodology and design , 2004, INTR.

[15]  Walt Scacchi,et al.  Work structures and shifts: an empirical analysis of software specification teamwork , 1989, ICSE '89.

[16]  Jay F. Nunamaker,et al.  Enabling the Effective Involvement of Multiple Users: Methods and Tools for Collaborative Software Engineering , 1997, J. Manag. Inf. Syst..

[17]  Sirkka L. Jarvenpaa,et al.  Communication and Trust in Global Virtual Teams , 1999, J. Comput. Mediat. Commun..

[18]  Philippe Kruchten,et al.  The Rational Unified Process: An Introduction , 1998 .

[19]  Li-Te Cheng,et al.  Building Collaboration into IDEs , 2003, ACM Queue.

[20]  Neville Churcher,et al.  Towards synchronous collaborative software engineering , 2004, 11th Asia-Pacific Software Engineering Conference.

[21]  John Riedl,et al.  Toward computer-supported concurrent software engineering , 1993, Computer.

[22]  Victor R. Basili,et al.  The role of experimentation in software engineering: past, current, and future , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[23]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[24]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.

[25]  Barry W. Boehm,et al.  Theory-W Software Project Management: Principles and Examples , 1989, IEEE Trans. Software Eng..

[26]  Neil A. M. Maiden,et al.  Mobile Werkzeuge im Requirements Engineering , 2004, Softwaretechnik-Trends.

[27]  Andreas Oberweis WORKFLOW MANAGEMENT IN SOFTWARE ENGINEERING PROJECTS , 2007 .

[28]  J. Herbsleb,et al.  Global software development , 2001 .

[29]  Manfred Broy,et al.  Das neue V-Modell® XT , 2005, Informatik-Spektrum.

[30]  Erran Carmel,et al.  Tactical Approaches for Alleviating Distance in Global Software Development , 2001, IEEE Softw..

[31]  Carl Cook Collaborative Software Engineering: An Annotated Bibliography , 2004 .

[32]  Sigrid Goldmann,et al.  Workshop: Coordinating Distributed Software Development Projects Final Summary Report , 1999, WETICE.

[33]  Robert O. Briggs,et al.  Surfacing tacit knowledge in requirements negotiation: experiences using EasyWinWin , 2001, Proceedings of the 34th Annual Hawaii International Conference on System Sciences.

[34]  Joachim Henkel,et al.  Software Development in Embedded Linux - Informal Collaboration of Competing Firms , 2003, Wirtschaftsinformatik.

[35]  D. Spinellis,et al.  How is open source affecting software development? , 2004, IEEE Software.

[36]  P. A.Wilcox A CORBA-Oriented Approach to Heterogeneous Tool Integration; OPHELIA , 2003 .

[37]  Muhammad Ali Babar,et al.  Comparison of scenario-based software architecture evaluation methods , 2004, 11th Asia-Pacific Software Engineering Conference.

[38]  Barry W. Boehm,et al.  Developing Groupware for Requirements Negotiation: Lessons Learned , 2001, IEEE Softw..

[39]  James D. Herbsleb,et al.  Splitting the organization and integrating the code: Conway's law revisited , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[40]  Liming Zhu,et al.  An empirical study of groupware support for distributed software architecture evaluation process , 2004, J. Syst. Softw..

[41]  Friedrich Roithmayr,et al.  Wirtschaftsinformatik-Lexikon (7. Aufl.) , 2004 .

[42]  Pierluigi Ritrovato,et al.  Modeling real requirements for cooperative software development: A case study , 2003 .

[43]  Alan Brown Collaborative software engineering , 2001, ICSE 2001.

[44]  Joachim Henkel,et al.  Open source software from commercial firms--tools, complements, and collective invention , 2002 .

[45]  D. Harrison,et al.  Time, Teams, and Task Performance: Changing Effects of Surface- and Deep-Level Diversity on Group Functioning , 2002 .

[46]  H. Keith Edwards,et al.  Analysis of the effectiveness of global virtual teams in software engineering projects , 2003, 36th Annual Hawaii International Conference on System Sciences, 2003. Proceedings of the.

[47]  Neville Churcher,et al.  An extensible framework for collaborative software engineering , 2003, Tenth Asia-Pacific Software Engineering Conference, 2003..

[48]  James Coplien,et al.  Social patterns in productive software development organizations , 1996, Ann. Softw. Eng..

[49]  Mary Beth Rosson,et al.  Effectiveness of elicitation techniques in distributed requirements engineering , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[50]  Lutz J. Heinrich,et al.  Evaluation und Evaluationsforschung in der Wirtschaftsinformatik : Handbuch für Praxis, Lehre und Forschung , 1999 .

[51]  Mark Chu-Carroll,et al.  Coven: brewing better collaboration through software configuration management , 2000, SIGSOFT '00/FSE-8.

[52]  Daniela E. Damian,et al.  An exploratory study of facilitation in distributed requirements engineering , 2003, Requirements Engineering.

[53]  Larry M. Augustin,et al.  Accelerating software development through collaboration , 2002, ICSE '02.

[54]  Armin Heinzl,et al.  Die Ausgliederung der betrieblichen Datenverarbeitung: eine empirische Analyse der Motive, Formen und Wirkungen , 1991 .

[55]  T. Allen Managing the flow of technology , 1977 .

[56]  C. Hardy,et al.  Resources, Knowledge and Influence: The Organizational Effects of Interorganizational Collaboration* , 2003 .

[57]  Peter Hruschka Agility: (Rück-)Besinnung auf Grundwerte in der Softwareentwicklung , 2003, Inform. Spektrum.

[58]  Albert Sydney Hornby,et al.  Oxford Advanced Learner's Dictionary , 1974 .

[59]  Jim Highsmith,et al.  Agile Software Development Ecosystems , 2002 .

[60]  Pearl Brereton,et al.  Supporting collaboration in distributed software engineering teams , 2000, Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000.

[61]  Grady Booch,et al.  Collaborative Development Environments , 2003, Adv. Comput..

[62]  Axel Korthaus,et al.  A Model-Driven Approach to Business Software Engineering , 2004 .

[63]  Pierluigi Ritrovato,et al.  Generalised environment for process management in cooperative software engineering , 2002, Proceedings 26th Annual International Computer Software and Applications.

[64]  P. Robert,et al.  PONS : micro Robert poche : dictionnaire d'apprentissage de la langue française , 1989 .

[65]  Johannes Bidlingmaier Begriff und Formen der Kooperation im Handel , 1967 .

[66]  Amela Karahasanovic,et al.  A survey of controlled experiments in software engineering , 2005, IEEE Transactions on Software Engineering.

[67]  Paul Grünbacher Collaborative requirements negotiation with EasyWinWin , 2000, Proceedings 11th International Workshop on Database and Expert Systems Applications.

[68]  Jack Greenfield,et al.  Software factories: assembling applications with patterns, models, frameworks and tools , 2004, OOPSLA '03.

[69]  David E. Avison,et al.  Information Systems Development: Methodologies, Techniques and Tools , 1988 .

[70]  Wei-Tek Tsai,et al.  Distributed, collaborative software inspection , 1993, IEEE Software.

[71]  Vahid Mashayekhi,et al.  CAIS: collaborative asynchronous inspection of software , 1994, SIGSOFT '94.

[72]  Robert E. Kraut,et al.  Patterns of contact and communication in scientific research collaboration , 1990, CSCW '88.

[73]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[74]  David G. Messerschmitt,et al.  Software Ecosystem: Understanding an Indispensable Technology and Industry , 2003 .

[75]  David G. Messerschmitt,et al.  Industrial and Economic Properties of Software: Technology, Processes , 2001 .

[76]  Robert W. Zmud,et al.  A Contingency Approach to Software Project Coordination , 2002, J. Manag. Inf. Syst..

[77]  Barry W. Boehm,et al.  EasyWinWin: a groupware-supported methodology for requirements negotiation , 2001, ESEC/FSE-9.

[78]  Vahid Mashayekhi,et al.  A Case Study of Distributed, Asynchronous Software Inspection , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[79]  Audris Mockus,et al.  An Empirical Study of Speed and Communication in Globally Distributed Software Development , 2003, IEEE Trans. Software Eng..

[80]  Fadi P. Deek,et al.  Collaborative Problem Solving and Groupware for Software Development , 2003, IEEE Engineering Management Review.

[81]  Arthur G. Ryman,et al.  A World-Wide-Web architecture for collaborative software design , 1999, STEP '99. Proceedings Ninth International Workshop Software Technology and Engineering Practice.

[82]  Vijay K. Vemuri,et al.  Inventing the Organizations of the 21st Century , 2003 .

[83]  Vijay K. Vemuri Inventing the Organizations of the 21st Century , 2004 .

[84]  Rainer Weinreich,et al.  An environment for cooperative software development realization and implications , 1998, Proceedings of the Thirty-First Hawaii International Conference on System Sciences.

[85]  Steve Sawyer,et al.  Software Development: Processes and Performance , 1998, IBM Syst. J..

[86]  山本 千之,et al.  The New Oxford Dictionary of English〓見 , 1999 .

[87]  Erran Carmel,et al.  PD and joint application design: a transatlantic comparison , 1993, CACM.

[88]  Gail E. Kaiser,et al.  CHIME: a metadata-based distributed software development environment , 1999, ESEC/FSE-7.

[89]  Robert E. Kraut,et al.  Coordination in software development , 1995, CACM.

[90]  Li-Te Cheng,et al.  Jazzing up Eclipse with collaborative tools , 2003, eclipse '03.

[91]  C. Hardy,et al.  Institutional effects of interorganizational collaboration: The emergence of proto-institutions , 2002 .

[92]  Wolffried Stucky,et al.  Teamwork Coordination in a Distributed Software Development Environment , 1994, GI Jahrestagung.

[93]  Ronald E. Rice,et al.  Technology Adaptation: The Case of a Computer-Supported Inter-Organizational Virtual Team , 2000, MIS Q..

[94]  Stephanie D. Teasley,et al.  How does radical collocation help a team succeed? , 2000, CSCW '00.

[95]  J. Herbsleb,et al.  Two case studies of open source software development: Apache and Mozilla , 2002, TSEM.

[96]  Gerardo Canfora,et al.  Can Collaborative Software Development Benefit from Synchronous Groupware Functions , 2003 .

[97]  Gustav Pomberger,et al.  Kooperative Softwareentwicklung: Konzepte, Modelle und Werkzeuge , 1999, Wirtschaftsinformatik.

[98]  Li-Te Cheng,et al.  How a good software practice thwarts collaboration: the multiple roles of APIs in software development , 2004, SIGSOFT '04/FSE-12.

[99]  Environments to support collaborative software engineering , 2003 .

[100]  Walter F. Tichy,et al.  Case study: extreme programming in a university environment , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[101]  Li-Te Cheng,et al.  Weaving a social fabric into existing software , 2005, AOSD '05.

[102]  Clarence A. Ellis,et al.  Groupware: some issues and experiences , 1991, CACM.

[103]  Tom Rodden,et al.  Supporting long-term collaboration in software maintenance , 1993, COCS '93.

[104]  Brian Fitzgerald,et al.  Understanding open source software development , 2002 .

[105]  Robert O. Briggs,et al.  EasyWinWin: managing complexity in requirements negotiation with GSS , 2002, Proceedings of the 35th Annual Hawaii International Conference on System Sciences.

[106]  Wolfgang Faisst,et al.  Two Scenarios for 21st Century Organizations: Shifting Networks of Small Firms or All-Encompassing "Virtual Countries"? , 1998, Wirtschaftsinf..

[107]  Paul J. Layzell,et al.  A study of communication and cooperation in distributed software project teams , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[108]  Barry Boehm,et al.  A collaborative spiral software process model based on Theory W , 1994, Proceedings of the Third International Conference on the Software Process. Applying the Software Process.

[109]  Leo Egghe Theory of collaboration and collaborative measures , 1991, Inf. Process. Manag..

[110]  Ronald E. Rice,et al.  Technology adaption: the case of a computer-supported inter-organizational virtual team 1 , 2000 .

[111]  Suprateek Sarker,et al.  Building an inductive theory of collaboration in virtual teams: an adapted grounded theory approach , 2000, Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.

[112]  B. Gray,et al.  Toward a Comprehensive Theory of Collaboration , 1991 .

[113]  Jens Dibbern The sourcing of application software services: empirical evidence of cultural, industry and functional differences: with 27 tables , 2004 .

[114]  Michael Rees,et al.  Internet-based Collaborative Software Development using Microsoft Tools , 2001, ISAS-SCI.

[115]  Alan R. Hevner,et al.  Design Science in Information Systems Research , 2004, MIS Q..

[116]  Giancarlo Succi,et al.  Software process support over the Internet , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[117]  David B. Martin,et al.  Patterns of cooperative interaction: Linking ethnomethodology and design , 2004, TCHI.

[118]  Shijian Lu,et al.  Groupware support tools for collaborative software engineering , 1997, Proceedings of the Thirtieth Hawaii International Conference on System Sciences.

[119]  Peter Stahlknecht,et al.  Einfuhrung in Die Wirtschaftsinformatik , 1993 .

[120]  T. Kuhn,et al.  The Structure of Scientific Revolutions. , 1964 .