CoSDEES: A framework for developing CSD environments for educational settings

The recent drift towards the use of Collaborative Software Development (CSD) practices in software industry may prove to be an escalating movement towards changing software development philosophies. Consequently, research is in progress in developing related computing technologies for supporting the collaborative engagements of software developers. Eventually, it is essential that software engineering curriculum also focuses on developing collaborative programming skills of the students. Fostering collaborative learning and programming competencies of students through collaborative software development education at undergraduate level would facilitate their amalgamation into the team-oriented and intensively-collaborative, software development industry. In this paper, we propose a framework, CoSDEES, for the collaborative engagements of students involved in software development, in the form of CSD Activity WorkSpace. The proposed framework is based on Activity Theory. Furthermore, we also propose a comprehensive set of requirement specifications for the CSD environment that manifest the proposed framework. These specifications can be used as a set of guidelines for implementing CSD environments in educational settings. The primary aim of this research is to augment the collaborative activities of students engaged in software development, through the usage of the proposed collaborative software development environments.

[1]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[2]  Christine V. Bullen,et al.  Groupware; A Key to Managing Business Teams? , 2011 .

[3]  V. Kaptelinin,et al.  Acting with Technology , 2008 .

[4]  A. van der Hoek,et al.  Continuous coordination: a new paradigm for collaborative software engineering tools , 2004, ICSE 2004.

[5]  Martin P. Robillard,et al.  Types of collaborative work in software engineering , 2000, J. Syst. Softw..

[6]  David Wallace,et al.  BORROWING FROM HACKATHONS: OVERNIGHT DESIGNATHONS AS A TEMPLATE FOR CREATIVE IDEA HUBS IN THE SPACE OF HANDS-ON LEARNING, DIGITAL LEARNING, AND SYSTEMS RE-THINKING , 2013 .

[7]  Gerry Stahl,et al.  Groupware Goes to School , 2002, CRIWG.

[8]  Carl Gutwin,et al.  A Descriptive Framework of Workspace Awareness for Real-Time Groupware , 2002, Computer Supported Cooperative Work (CSCW).

[9]  Cleidson R. B. de Souza,et al.  Interpreting Activity Theory as a Software Engineering Methodology , 2003 .

[10]  Mary Czerwinski,et al.  WIPDash: Work Item and People Dashboard for Software Development Teams , 2009, INTERACT.

[11]  Marco Aurélio Gerosa,et al.  Applying the 3C model to groupware development , 2005, Int. J. Cooperative Inf. Syst..

[12]  Kenneth D. Forbus,et al.  Incorporating AI into Military Decision Making: An Experiment , 2003, IEEE Intell. Syst..

[13]  Kari Kuutti,et al.  Identifying potential CSCW applications by means of activity theory concepts: a case example , 1992, CSCW '92.

[14]  M. Devetsikiotis,et al.  Jazz Sangam : A Real-Time Tool for Distributed Pair Programming on a Team Development Platform , 2008 .

[15]  Y. Engeström,et al.  Expansive Learning at Work: Toward an activity theoretical reconceptualization , 2001 .

[16]  Michele Lanza,et al.  Syde: a tool for collaborative software development , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[17]  Gao Zuoren,et al.  Model and implementation of CSCW system for AEC design , 2004, 8th International Conference on Computer Supported Cooperative Work in Design.

[18]  Clarence A. Ellis,et al.  Concurrency control in groupware systems , 1989, SIGMOD '89.

[19]  Carl Gutwin,et al.  Workspace Awareness in Real-Time Distributed Groupware: Framework, Widgets, and Evaluation , 1996, BCS HCI.

[20]  Mark Handley,et al.  Network text editor (NTE): A scalable shared text editor for the MBone , 1997, SIGCOMM '97.

[21]  Xiao-Lin Lu System design and development for a CSCW based remote oral medical diagnosis system , 2005, 2005 International Conference on Machine Learning and Cybernetics.

[22]  David F. Redmiles,et al.  Using Activity Theory to Understand Contradictions in Collaborative Software Development , 2003 .

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

[24]  Paul Dourish,et al.  "Breaking the code", moving between private and public work in collaborative software development , 2003, GROUP.

[25]  Chun Chen,et al.  Research on Internet-based real-time collaborative image editing systems , 2004, 8th International Conference on Computer Supported Cooperative Work in Design.

[26]  Carl Leslie Raymond Cook,et al.  Towards Computer-Supported Collaborative Software Engineering , 2007 .

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

[28]  Jonathan Grudin,et al.  Computer-supported cooperative work: history and focus , 1994, Computer.

[29]  Ferda Nur Alpaslan,et al.  Global Teams: Futuristic Models of Collaborative Work for Today's Software Development Industry , 2009 .

[30]  Laurie A. Williams,et al.  Sangam: a distributed pair programming plug-in for Eclipse , 2004, eclipse '04.

[31]  André van der Hoek,et al.  Palantir: raising awareness among configuration management workspaces , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[32]  Pieter Jorissen,et al.  Dynamic interactions in physically realistic collaborative virtual environments , 2005, IEEE Transactions on Visualization and Computer Graphics.

[33]  Andreas Podelski,et al.  Emerging Patterns of Collaboration and Self-Organization , 2013 .

[34]  Kari Kuutti,et al.  The Concept of Activity as a Basic Unit of Analysis for CSCW Research , 1991, ECSCW.

[35]  André van der Hoek,et al.  Continuous coordination a new paradigm to support globally distributed software development projects , 2007 .

[36]  Rob Miller,et al.  Collabode: collaborative coding in the browser , 2011, CHASE '11.

[37]  Gamel O. Wiredu A framework for the analysis of coordination in global software development , 2006, GSD '06.

[38]  Timo Aho,et al.  CoRED: browser-based Collaborative Real-time Editor for Java web applications , 2012, CSCW.

[39]  Franz Rothlauf,et al.  Approaches to Collaborative Software Development , 2008, 2008 International Conference on Complex, Intelligent and Software Intensive Systems.

[40]  Sanjay Goel Design of Interventions for Instructional Reform in Software Development Education for Competency Enhancement. , 2010 .

[41]  Mary Czerwinski,et al.  FASTDash: a visual dashboard for fostering awareness in software teams , 2007, CHI.

[42]  Sanjay Goel,et al.  A Novel Approach for Collaborative Pair Programming , 2010, J. Inf. Technol. Educ..

[43]  Carl Gutwin,et al.  Workspace awareness for groupware , 1996, CHI Conference Companion.

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

[45]  A. Zidani,et al.  Project-Based Learning with a Shared Editor , 2012, 2012 Second International Workshop on Advanced Information Systems for Enterprises.

[46]  Sanjay Goel,et al.  Learning to Write Programs with Others: Collaborative Quadruple Programming , 2012, 2012 IEEE 25th Conference on Software Engineering Education and Training.

[47]  Christopher Oezbek,et al.  Saros: an eclipse plug-in for distributed party programming , 2010, CHASE '10.

[48]  André van der Hoek,et al.  A Need-Based Collaboration Classification Framework , 2004 .

[49]  Anja Guzzi,et al.  Facilitating communication between engineers with CARES , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[50]  Jakob E. Bardram,et al.  Designing for the Dynamics of Cooperative Work Activities , 1998 .

[51]  David Sun,et al.  Leveraging single-user applications for multi-user collaboration: the coword approach , 2004, CSCW.

[52]  Pierre Dillenbourg,et al.  The Evolution of Research on Computer-Supported Collaborative Learning , 2009 .