Improving software team collaboration with Synchronized Software Development
نویسندگان
چکیده
Effective collaboration is a key factor in the success of a software project developed by a team. In this work, we suggest the approach of Synchronized Software Development (SSD), which promotes a new mechanism of collaboration in general, and for code synchronization in particular. In SSD, code changes made by one developer are automatically propagated to others as long as they keep the code free of compilation errors. Changes that introduce compilation errors are not propagated until the errors are fixed. Moreover, other developers are restricted from concurrently editing the entities involved in these changes. While in this state, developers are, however, free to modify the rest of the entities. The novelty of our approach is that it actively synchronizes developers with the latest error free version of the source code, preventing possible conflicts and merges that may arise due to concurrent changes made by fellow team members. SSD also allows for a more transparent an practically near real time awareness of new code that is being introduced by multiple developers. We built CSI (Code Synchronizing Intelligence), a prototype demonstrating key features of SSD.
منابع مشابه
Improving Video Game Development: Facilitating Heterogeneous Team Collaboration through Flexible Software Processes
Based on our observations in the Austrian video game software development practices we identified a lack of systematic processes and method support and inefficient collaboration between various involved disciplines, i.e. engineers and artists. Video game development includes heterogeneous disciplines, e.g. creative arts, game and content design, and software. Nevertheless, improvement of team c...
متن کاملVirtual Teams: The Impact of Advanced Knowledge and Process Collaboration Technologies on Software Development Team Processes and Performance
Virtual teams are becoming an important aspect of organisational life in many industries. In software development, virtual teams can be particularly useful as team members with the right skill set can generate code for a project no matter where they are in the world. However, this virtual setting often has limitations in terms of communication abilities, conflict, trust and performance. To impr...
متن کاملA Configural Approach to Coordinating Expertise in Software Development Teams
Despite the recognition of how important expertise coordination is to the performance of software development teams, understanding of how expertise is coordinated in practice is limited. We adopt a configural approach to develop a theoretical model of expertise coordination that differentiates between design collaboration and technical collaboration. We propose that neither a strictly centraliz...
متن کاملCover Feature Leveraging Distributed Software Development
T he Internet has been changing the way we collaborate on software development, offering certain advantages but also creating new requirements. Internet-based collaboration does make a wider base of talent available, but the development cycles running at Internet speeds—where your codevelopers might be working as far away as the other side of the planet—require maintaining higher levels of prec...
متن کاملEvaluating Tools that Support Pair Programming in a Distributed Engineering Environment
The construction and improvement of high-quality products in a global software development environment requires (a) flexible practices for collaboration and (b) tools that support these practices in a distributed software development team. Pair Programming (PP), a well-known agile practice has been reported to improve software productivity and software quality in co-located environments. Howeve...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1504.06742 شماره
صفحات -
تاریخ انتشار 2015