Abstract—Even though software development (SD) is an intrinsically collaborative process; with the emerging importance of collaborative product development (CPD), collaborative processes gained significant consideration. Collaborative software development (CSD) encompasses an increasingly competitive position with its dynamic and innovative structure, as the complex nature of SD makes collaboration indispensable. This paper presents an Axiomatic Design (AD) based CSD structure exploring factors affecting SD as well as CPD dynamics, in order to offer a guideline to increase success and effectiveness of collaborative efforts in SD. Index Terms—Software Development, Collaboration, Axiomatic Design. I. INTRODUCTION More than ever, organizations have been facing the challenge of improving the quality of their work processes as a strategy to remain alive and competitive and many companies are struggling to reengineer, automate, and improve the way they perform their business [1]. Software Development (SD) has been a challenging task for several decades [2] and the increasing complexity of software development (SD), growing demands for different kinds of software as well as the ongoing globalization require more efficient SD processes [3]. The development of large and complex software systems is considered to be a teamwork process that requires support for coordinating cooperative activities, maintaining project control and sharing information [4]. While Collaborative Product Development (CPD) develops into a business strategy creating competitive advantage for organizations in product development (PD) by creating a collaborative environment to share risks, reduce time to market and innovate; SD collaborations also develop into a more structured activity, since mastering large SD projects becomes even more complex, not only because projects grow larger, but also because software teams are increasingly distributed across space and time due to globalization and internationalization [4]. Supporting efficient knowledge Manuscript received March 23, 2009. This work was financially supported by Galatasaray University Research Fund. Jbid Arsenyan is with the Industrial Engineering Department, Bahcesehir University, Istanbul, 34100, Turkey (phone: +90.212.381.0855; e-mail: jbid.arsenyan@bahcesehir.edu.tr ). Gülçin Büyüközkan is with the Industrial Engineering Department, Galatasaray University, Istanbul, 34357, Turkey (phone: +90.212.227.4480; e-mail: gulcin.buyukozkan@gmail.com ). collaboration and transfer is thus essential for SD organizations to remain competitive [5]. While the software industry deals with the ever-increasing complexity of its products, collaboration among different people participating in the same development project is essential and has already been considered as an everyday part of professional SD [6]. However, CSD literature lacks of a systematic design of the process from a strategic point of view. The aim of this paper is to design a CSD structure by identifying its dynamics and developing a model through these dynamics. Literature offers many system design tools such as Quality Function Deployment (QFD), Axiomatic Design (AD), Design for X and TRIZ. Among these methodologies, AD is an appropriate tool for the design of non-engineering systems such as business plans and organizations [7]. Hence, a CSD structure with a model based on AD is proposed in this paper, while defining the dynamics, including goals, strategies and methodologies, which affect the collaborative efforts in SD. The proposed model forms a guideline for CSD from a strategic point of view, investigating different goals to attain in collaborative efforts in SD. To our knowledge, no previous study exists which explore CSD based on system design. The paper is organized as follows: in the next section, CSD is described briefly. Third section reviews AD and presents the proposed model. The paper is concluded with a few remarks. II. COLLABORATIVE SOFTWARE DEVELOPMENT SD is a combined process of research, development, modification, re-use, reengineering, maintenance and similar activities that result in software products. However, SD process and projects have a long and storied history of failure, where 82% of projects today run late, while errors cost 80% of the average project budget to fix according to The Standish Group. The growing complexity of software systems and the constant extension of new requirements necessitate the cooperation of multiple persons such as analysts, developers, testers, and customers [4]. While the SE industry deals with the ever-increasing complexity of its products, collaboration among different people participating in the development project is essential and has already been considered as an everyday part of professional SD [8]. Collaboration helps SD teams to handle large software systems by knowledge sharing and communication. Also human-centric SD methods, such as Extreme Programming and other agile methods as well as internet-based multi-site cooperation tools that support remote CSD have been developed and implemented to deal with this complexity [6], which benefits its participants in time to market, reusability, robustness, extensibility, Modelling Collaborative Software Development Using Axiomatic Design Principles Jbid Arsenyan, Gülçin Büyüközkan IAENG International Journal of Computer Science, 36:3, IJCS_36_3_06 ______________________________________________________________________________________ (Advance online publication: 1 August 2009)