• DocumentCode
    2485986
  • Title

    Using graph rewriting to specify software architectural transformations

  • Author

    Fahmy, Hoda ; Holt, Richard C.

  • Author_Institution
    Dept. of Comput. Sci., Toronto Univ., Ont., Canada
  • fYear
    2000
  • fDate
    2000
  • Firstpage
    187
  • Lastpage
    196
  • Abstract
    In order to understand, analyze and possibly modify software, we commonly examine and manipulate its architecture. For example, we may want to examine the architecture at different levels of abstraction or repair the architecture if it has deviated from our mental model of the software. We can view such manipulations as architectural transformations, and more specifically, as graph transformations. In this paper, we use graph rewriting to specify these transformations so that we can work towards automating them. Specifically, we use the PROGRES tool to formulate executable graph-rewriting specifications for various architectural transformations in order to demonstrate the strengths of using graph rewriting. We have applied our executable specifications to small graphs and our results confirm that graph rewriting offers a high-level visual notation that can be used to neatly specify graph modifications, as well as supporting prototype implementations. It also provides a convenient and intuitive framework for exploring various architectural transformations
  • Keywords
    computer aided software engineering; formal specification; graph theory; reverse engineering; rewriting systems; software architecture; software maintenance; PROGRES tool; abstraction levels; executable specifications; graph modifications; graph rewriting; graph transformations; high-level visual notation; program understanding; prototype implementation; software analysis; software architectural transformation specification; software maintenance; software modification; Cognitive science; Computer architecture; Computer science; Data mining; Information analysis; Prototypes; Software architecture; Software maintenance; Software prototyping; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering, 2000. Proceedings ASE 2000. The Fifteenth IEEE International Conference on
  • Conference_Location
    Grenoble
  • ISSN
    1938-4300
  • Print_ISBN
    0-7695-0710-7
  • Type

    conf

  • DOI
    10.1109/ASE.2000.873663
  • Filename
    873663