Software specification using graph grammars

The following paper demonstrates that programmed sequential graph grammars can be used in a systematic proceeding to specify the changes of high level intermediate data structures arising in a programming support environment, in which all tools work in an incremental and syntax-driven mode. In this paper we lay stress upon the way to get the specification rather than on the result of this process. Therefore, we give here some approach to “specification engineering” using graph grammars. This approach is influenced by the syntactical definition of the underlying language for Programming in the Small, the module concept etc. to be supported on one side but also by the idea of the user interface.ZusammenfassungDer folgende Aufsatz zeigt auf, daß programmierte sequentielle Graph-Grammatiken dazu benutzt werden können, die Veränderung hoher Zwischencodes zu spezifizieren, die im Kontext einer Software-Entwicklungsumgebung auftreten, deren Werkzeuge alle inkrementell und syntaxgesteuert arbeiten. Wir legen in diesem Aufsatz mehr Wert auf die Erläuterung einer systematischen Vorgehensweise, um die Spezifikation zu erhalten, als auf die detaillierte Abhandlung der Spezifikation selbst. Somit kann dieses Papier auch als ein Ansatz zu einem „Spezifikations-Engineering” mit Hilfe von Graph-Grammatiken angesehen werden. Der Ansatz wird maßgeblich beeinflußt von der Syntaxdefinition der zugrundeliegenden formalen Sprache für das Programmieren im Kleinen bzw. für das Modulkonzept etc. einerseits und andererseits von der Vorstellung der Form der Benutzerschnittstelle.

[1]  Thomas Reps,et al.  Programming Techniques and Data Structures , 1981 .

[2]  Manfred Nagl,et al.  Einführung in die Programmiersprache Ada, 2. neubearbeitete und erweiterte Auflage , 1983 .

[3]  Rupert Gall,et al.  Structured Development of Modular Software Systems: The Module Graph as Central Data Structure , 1981, WG.

[4]  Niklaus Wirth,et al.  Pascal User Manual and Report , 1991, Springer New York.

[5]  Jürg Nievergelt,et al.  Structure-oriented Editors , 1980 .

[6]  Raymond T. Boute Simplifying ADA by removing limitations , 1980, SIGP.

[7]  Hartmut Ehrig,et al.  Graph-Grammars and Their Application to Computer Science and Biology , 1978, Lecture Notes in Computer Science.

[8]  Hans Jürgen Schneider,et al.  Syntax-Directed Description of Incremental Compilers , 1974, GI Jahrestagung.

[9]  Manfred Nagl,et al.  Software specification by graph grammars , 1982, Graph-Grammars and Their Application to Computer Science.

[10]  Hans Jürgen Schneider Syntax-Directed Description of Incremental Compilers , 1974, GI Jahrestagung.

[11]  Raul I. Medina-Mora,et al.  Syntax-directed editing: towards integrated programming environments , 1982 .

[12]  Gregor Engels,et al.  Specification of a Programming Support Environment by Graph Grammars , 1982, International Workshop on Graph-Theoretic Concepts in Computer Science.

[13]  Manfred Nagl,et al.  An Incremental Compiler as Component of a System for Software Generation , 1980, Fachtagung über Programmiersprachen.

[14]  Bernard Lang,et al.  Programming Environments Based on Structured Editors: The MENTOR Experience, , 1980 .

[15]  Manfred Nagl Graph-Grammatiken: Theorie, Anwendungen, Implementierung , 1979 .