Supporting collaborative software development over GitHub
No Thumbnail Available
Date
2016-12
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Wiley
Abstract
GitHub is a web-based, distributed Software Configuration Management (SCM) system build over Git, which enables developers to host shared repositories over the Internet and access them from any location, at any time. It helps developers to effectively orchestrate their activities over shared codebases by capturing direct conflicts arising because of concurrent editing on the same shared artifact. However, SCM systems have limited support for capturing inconsistencies arising because of indirect conflicts which arise because of software dependency relationships that exist between related artifacts, and lead to the introduction of syntactic and semantic inconsistencies in codebases.
In this paper, we propose a novel collaborative software development (CSD) tool named, Collaboration Over GitHub (COG), that provides real-time information about arising direct and indirect conflicts among collaborative developers, working over GitHub, through a collection of workspace awareness widgets. These widgets provide people-centric information about direct and indirect collaborators over GitHub. Resource-centric information about current and conflicting activities of real-time collaborators is captured and propagated to others, based on the dependency relationships between software artifacts being manipulated by them.
Description
Keywords
Computer Science, Software Configuration Management (SCM), GitHub, Collaborative software development (CSD)