Skip to main content

A specification environment for graph grammars

  • Conference paper
  • First Online:
Graph Grammars and Their Application to Computer Science (Graph Grammars 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 532))

Abstract

Modelling environments (e.g. software development environments) offer tools which build up and maintain complex internal data structures. Therefore, before implementing such tools, it is advisable for the tool developer to formally specify the structure and the operations of these internal data structures. Graph Grammars as an operational specification method have been successfully used for this purpose for many years.

This paper describes an integrated set of tools for building up, maintaining, analyzing and executing such an internal specification described in the language PROGRESS, a graph grammar based VHL-Language. It sketches the characteristics of the PROGRESS environment, its software architecture, the specification of the environment in the language itself, and the implementation which, for the biggest part, have been generated.

The environment will be used for the following two main purposes: (i) for (syntax) checking PROGRESS specifications (at specification time) before implementing an efficiently working system which is equivalent to the specification, and (ii) for rapid prototyping purposes, i.e. for directly executing a specification.

The following paper has to be read in connection with /Sc 90a/ of this volume. Whereas /Sc 90a/ introduces the specification language PROGRESS and its methodological application to a small example the following paper concentrates on the environment's user characteristics and the realization of the environment.

This project was/is partially supported by Stiftung Volkswagenwerk and DFG

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

7. References

  1. Th. Brandes/C. Lewerentz: GRAS: A Non-standard Data Base System within a Software Development, Proc. of the GTE Workshop on Software Engineering Environments for Programming in the Large, Harwichport, 113–121, (June 1985).

    Google Scholar 

  2. S. Ceri (Ed.): Methodology and Tools for Database Design, North-Holland (1983).

    Google Scholar 

  3. G. Engels/R. Gall/M. Nagl/W. Schäfer: Software Specification using Graph Grammars, Computing 31, 317–346 (1983).

    Article  Google Scholar 

  4. G. Engels/C. Lewerentz/W. Schäfer: Graph Grammar Engineering — A Software Specification Method, in Ehrig et al. (Eds.): Proc. 3rd Int. Workshop on Graph Grammars and Their Application to Computer Science, LNCS 153, 186–201, Berlin: Springer-Verlag (1987).

    Google Scholar 

  5. G. Engels: Graphs as Central Data Structures in a Software Development Environment (in German), Doctoral Thesis, Düsseldorf: VDI-Verlag (1986).

    Google Scholar 

  6. G. Engels/M. Nagl/W. Schäfer: On the Structure of Structures Editors for Different Applications, Proc. 2nd ACM Software Eng. Symp. on Pract. Software Development Environments, SIGPLAN Notices 22, 1, 190–198 (1986).

    Google Scholar 

  7. G. Engels/A. Schürr: A Hybrid Interpreter in a Software Development Environment, Proc. 1st European Software Engineering Conf., LNCS 289, 87–96, Berlin: Springer-Verlag (1980).

    Google Scholar 

  8. G. Engels/W. Schäfer: Program Development Environments — Concepts and Realization (in German), Stuttgart: Teubner Verlag (1989).

    Google Scholar 

  9. H. Göttler: Graph Grammars in Software Engineering (in German), IFB 178, Berlin: Springer-Verlag (1988).

    Google Scholar 

  10. R. Herbrecht: A Graph Grammar Editor (in German), Diploma-Thesis; RWTH Aachen (1989).

    Google Scholar 

  11. S. Horwitz/T. Teitelbaum: Generating Editing Environments Based on Relations and Attributes, ACM TOPLAS 8, 4, 577–608 (1986).

    Article  Google Scholar 

  12. M. Jackel: Formal Specification of the Concurrent Constructs of Ada by Graph Grammars, Doctoral Dissertation, Univ. of Osnabrueck (1986).

    Google Scholar 

  13. Th. Janning: Requirements Engineering and a Mapping to Programming in the Large, Dissertation forthcoming.

    Google Scholar 

  14. C. Lewerentz: Extended Programming in the Large in a Software Development Environment, Proc. 3rd ACM SIGPLAN/SIGSOFT Symp. on Practical Software Engineering Environments, Software Engineering Notes 13, 5, 173–182 (1988).

    Article  Google Scholar 

  15. C. Lewerentz: Interactive Design of Large Program Systems (in German), Doctoral Thesis, IFB 194, Berlin: Springer-Verlag (1988).

    Google Scholar 

  16. P.C. Lockemann/H.C. Mayr: Information System Design: Techniques and Software Support, in H.-J. Kugler (Ed.): Information Processing 86, 617–634, Elsevier Science Publ. (1986).

    Google Scholar 

  17. C. Lewerentz/A. Schürr: GRAS, a Management System for Graph-like Documents, in C. Beeri et al. (Eds.): Prod. 3rd Int. Conf. on Data and Knowledge Bases, 19–31, Los Altos: Morgan Kaufmann Publishers (1988).

    Google Scholar 

  18. M. Nagl: Graph Grammars: Theory, Applications, and Implementations (in German), Braunschweig: Vieweg-Verlag (1979).

    Google Scholar 

  19. M. Nagl: Graph Technology Applied to a Software Project, in Rozenberg, Salomaa (Eds.): The Book of L, 303–322, Berlin: Springer-Verlag (1985).

    Google Scholar 

  20. T. Reps: Generating Language-Based Environments, PH.D. Thesis, Cambridge, Mass.: MIT Press (1984).

    Google Scholar 

  21. W. Schäfer: An Integrated Software Development Environment: Concepts, Design and Implementation (in German) Doctoral Thesis, Düsseldorf; VDI-Verlag (1986).

    Google Scholar 

  22. A. Schürr: Introduction to PROGRESS, an Attribute Graph Grammar Based Specification Language, LNCS 411, 151–165 (1989).

    Google Scholar 

  23. A. Schürr: PROGRESS: A VHL-Language Based on Graph Grammars, this volume.

    Google Scholar 

  24. A. Schürr: Programming by Graph Rewriting Systems — Theoretical Foundations and the Corresponding Language (in German), Doctoral Dissertation, RWTH Aachen (1990).

    Google Scholar 

  25. R.Spielmann: Development of a Basic Layer for Graph Grammar Interpreters (in German), Diploma Thesis, RWTH Aachen (1989).

    Google Scholar 

  26. B. Westfechtel: Revision Control in an Integrated Software Development Environment (in German), Doctoral Dissertation, RWTH Aachen (1990).

    Google Scholar 

  27. A. Zündorf: Control Structures for the Specification Language PROGRESS (in German), Diploma Thesis, RWTH (1989).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hartmut Ehrig Hans-Jörg Kreowski Grzegorz Rozenberg

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Nagl, M., Schürr, A. (1991). A specification environment for graph grammars. In: Ehrig, H., Kreowski, HJ., Rozenberg, G. (eds) Graph Grammars and Their Application to Computer Science. Graph Grammars 1990. Lecture Notes in Computer Science, vol 532. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017415

Download citation

  • DOI: https://doi.org/10.1007/BFb0017415

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54478-4

  • Online ISBN: 978-3-540-38395-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics