Parallel and distributed incremental attribute evaluation algorithms for multiuser software development environments

  • Authors:
  • Gail E. Kaiser;Simon M. Kaplan

  • Affiliations:
  • Columbia Univ., New York, NY;Univ. of Illinois, Urbana-Champaign

  • Venue:
  • ACM Transactions on Software Engineering and Methodology (TOSEM)
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

The problem of change propagation in multiuser software development environments distributed across a local-area network is addressed. The program is modeled as an attributed parse tree segmented among multiple user processes and changes are modeled as subtree replacements requested asynchronously by individual users. Change propagation is then implemented using decentralized incremental evaluation of an attribute grammar that defines the static semantic properties of the programming language. Building up to our primary result, we first present algorithms that support parallel evaluation on a centralized tree in response to single edits using a singe editing cursor and multiple edits with multiple editing cursors. Then we present our algorithm for parallel evaluation on a decentralized tree. We also present a protocol to guarantee reliability of the evaluation algorithm as components of the decentralized tree become unavailable due to failures and return to availability.