Supporting semantic conflict prevention in real-time collaborative programming environments

  • Authors:
  • Hongfei Fan;Chengzheng Sun

  • Affiliations:
  • Nanyang Technological University, Singapore;Nanyang Technological University, Singapore

  • Venue:
  • ACM SIGAPP Applied Computing Review
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Real-time collaborative programming environments support multiple programmers to concurrently edit shared source code documents at the same time over communication networks. One of the key challenges in supporting real-time collaborative programming is semantic conflicts, which may occur when multiple programmers are performing concurrent and incompatible programming work in the same source code region or in different source code regions with dependency relationships. Semantic conflicts may result in programming errors that are difficult to detect and costly to resolve. This paper presents in-depth analyses of representative collaborative programming scenarios for understanding the nature and general conditions of semantic conflicts, and proposes a novel Dependency-based Automatic Locking (DAL) approach for supporting semantic conflict prevention in real-time collaborative programming environments. The novelty of the DAL approach lies in its capabilities of supporting automatic and fine-grained locking on selected source code regions with dependency relationships to balance conflict prevention, concurrent work, and programmer convenience in real-time collaborative programming. The DAL approach and technical solutions have been implemented in the CoEclipse prototype system as a proof-of-concept for this emerging technique, which is being continuously extended for further exploration and evaluation.