Building integrated software development environments. Part I: tool specification

  • Authors:
  • G. Engels;C. Lewerentz;M. Nagl;W. Schäfer;A. Schürr

  • Affiliations:
  • Department of Computer Science, Leiden University, PO Box 9512, NL-2300 RA Leiden;Forschungazentrum Informatik, Universitat Karlsruhe, Haid-und Neu-Str. 10-14, D-7500 Karlsruhe;Informatik III, RWTH Aachen, AhornstraBe 55, D-51OO Aachen;Informatik X, Universitat Dortmunci, Postfach 50 05 00, D-4600 Dortmund 50;Informatik III, RWTH Aachen, AhornstraBe 55, D-51OO Aachen

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

Quantified Score

Hi-index 0.00

Visualization

Abstract

The conceptual modeling approach of the IPSEN (Integrated Project Support Environment) project for building highly integrated environments is based on using attributed graphs to model and implement arbitrary object structures, in particular all kinds of software documents and their relationships. A language based on graph grammars, called PROGRESS (PROgrammed Graph REwriting SyStems), and a suitable method for the application of this language, called graph grammar engineering, have been developed over the last ten years. This language and method are being extensively used for specifying the complex graph structures of internal document representations as well as for specifying the functionality of all tools (editors, browsers, analyzers, debuggers) working on these internal rpresentations. This paper explains the language and the method for applying the language based on a pragmatic nontrivial example of a software production process and its corresponding documents. In particular, it is shown why and how a graph grammar-based strongly typed language is perfectly suitable to formally specify highly integrated software tools. In addition, it is shown that the implementation of these tools (i.e., an environment composed of these tools) is systematically being derived from the formal specifications.