Repairing software style using graph grammars

  • Authors:
  • Hoda Fahmy;Ric Holt;Spiros Mancoridis

  • Affiliations:
  • University of Toronto, Toronto, Ontario, Canada;University of Waterloo, Waterloo, Ontario, Canada;Drexel University, Philadelphia, PA

  • Venue:
  • CASCON '97 Proceedings of the 1997 conference of the Centre for Advanced Studies on Collaborative research
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Often, software architects impose a particular style on the software systems they design. For large software systems, they would like to ensure that the design continues to conform to this style during the maintenance phase of the software-life cycle.We will assume that the architectural design of a software system is available; for instance, it may have been extracted from the source code of the system using a parser. We will also assume we have a set of stylistic constraints given by the architect. For example, the architect may want to ensure that if a module X is allowed to use a procedure in a module Y, then module Y needs to export that procedure.We define the Style Repair Problem as follows: If the current architectural design does not satisfy a set of stylistic constraints, how can we repair it so that it does? We choose to represent architectural designs as directed graphs; hence, repairing the style of these designs is equivalent to repairing the graph. We show how graph grammars can be used to automatically repair styles, and we show how this provides insight into the problem of style maintenance.