{"title":"Using dependency graphs to support collaboration over GitHub: The Neo4j graph database approach","authors":"R. Arora, S. Goel, R. Mittal","doi":"10.1109/IC3.2016.7880234","DOIUrl":null,"url":null,"abstract":"Software Configuration Management Systems capture direct conflicts which arise due to concurrent editing of same shared artifact. However, indirect conflicts, arising due to concurrent editing of related artifacts by collaborative developers, might eventually evade the build process employed by the underlying SCM. Additional collaborative software development tools have been developed, that supplement existing SCM systems, by providing change awareness information about potential indirect conflicts. In this paper, we propose the tool named Collaboration Over GitHub (COG), that provides support for collaborative software development over GitHub and also captures indirect conflicts at finer levels of granularity. For this, COG converts project repositories into dependency graphs which are stored as Neo4j Graph Databases. These graphs store structural and dependency information obtained from codebases and are used for identifying conflicts and affected artifacts.","PeriodicalId":294210,"journal":{"name":"2016 Ninth International Conference on Contemporary Computing (IC3)","volume":"100 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 Ninth International Conference on Contemporary Computing (IC3)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IC3.2016.7880234","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
Software Configuration Management Systems capture direct conflicts which arise due to concurrent editing of same shared artifact. However, indirect conflicts, arising due to concurrent editing of related artifacts by collaborative developers, might eventually evade the build process employed by the underlying SCM. Additional collaborative software development tools have been developed, that supplement existing SCM systems, by providing change awareness information about potential indirect conflicts. In this paper, we propose the tool named Collaboration Over GitHub (COG), that provides support for collaborative software development over GitHub and also captures indirect conflicts at finer levels of granularity. For this, COG converts project repositories into dependency graphs which are stored as Neo4j Graph Databases. These graphs store structural and dependency information obtained from codebases and are used for identifying conflicts and affected artifacts.
软件配置管理系统捕获由于同一共享工件的并发编辑而产生的直接冲突。然而,由于协作开发人员对相关工件的并发编辑而产生的间接冲突,可能最终会逃避底层SCM所使用的构建过程。另外的协作软件开发工具已经被开发出来,通过提供关于潜在间接冲突的变更意识信息来补充现有的SCM系统。在本文中,我们提出了名为Collaboration Over GitHub (COG)的工具,它为GitHub上的协作软件开发提供支持,并在更细的粒度级别上捕获间接冲突。为此,COG将项目存储库转换为依赖关系图,这些依赖关系图存储为Neo4j图形数据库。这些图存储了从代码库获得的结构和依赖信息,并用于识别冲突和受影响的工件。