Skip to main content

Supporting the software development process with attributed NLC graph grammars

  • Part II Technical Contributions
  • Conference paper
  • First Online:
Graph-Grammars and Their Application to Computer Science (Graph Grammars 1986)

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

Abstract

An important research problem in software engineering is to find appropriate formalisms and tools to support the software development process. Efforts to build program development support tools have developed schemes that employ an internal data structure based on trees. Trees are inherently limited and also create long path lengths along which semantic information is forced to flow. We propose ANLC graph grammars as a formalism which can be used to generate tools based on graphs rather than tree structures. This paper defines ANLC grammars, illustrates the use of the formalism with an example and discusses the advantages of the use of graphs rather than trees in building program development tools.

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.

References

  1. Wayne A. Babich. Software Configuration Management. Addison-Wesley, Reading, Mass., 1986.

    Google Scholar 

  2. Horst Bunke. Graph grammars as a generative tool in image understanding. In Hartmut Ehrig, Manfred Nagl, and Grzegorz Rozenberg, editors, Proceedings of the second International Workshop on Graph Grammars and their Application to Computer Science, LNCS 153, pages 8–19, Springer-Verlag, 1982.

    Google Scholar 

  3. Peter Pin-Shan Chen. The entity-relationship model-toward a unified view of data. ACM Transactions on Database Systems, 1(1):9–36, March 1976.

    Article  Google Scholar 

  4. Veronique Donzeau-Gouge, Gilles Kahn, Bernard Lang, and Bertrand Melese. Documents structure and modularity in mentor. In Proceedings of the ACM SIGPLAN/SIGSOFT Symposium on Practical Software Development Environments, pages 141–148, Pittsburgh, Pa, May 1984.

    Google Scholar 

  5. Gregor Engels and Wilhelm Schafer. Graph grammar engineering: a method used for the development of an integrated programming environment. In Hartmut Ehrig, Christiane Floyd, Maurice Nivat, and James Thatcher, editors, Proceedings of the International Joint Conference on Theory and Practice of Software Development (TAPSOFT), LNCS 186, pages 179–193, Springer-Verlag, 1985.

    Google Scholar 

  6. Herbert Gottler. Attributed graph grammars for graphics. In Hartmut Ehrig, Manfred Nagl, and Grzegorz Rozenberg, editors, Proceedings of the second International Workshop on Graph Grammars and their Application to Computer Science, LNCS 153, pages 130–142, Springer-Verlag, 1982.

    Google Scholar 

  7. R. Gunther. Management Methodology for Software Product Engineering. Wiley Interscience, New York, 1978.

    Google Scholar 

  8. D. Janssens and G. Rozenberg. Graph grammars with neighbourhood-controlled embeddings. Theoretical Computer Science, 21:55–74, 1982.

    Article  Google Scholar 

  9. D. Janssens and G. Rozenberg. On the structure of node-label-controlled graph languages. Information Sciences, 20:191–216, 1980.

    Article  Google Scholar 

  10. Dirk Janssens and Grzegorz Rozenberg. Graph grammars with node-label control and rewriting. In Hartmut Ehrig, Manfred Nagl, and Grzegorz Rozenberg, editors, Proceedings of the second International Workshop on Graph Grammars and their Application to Computer Science, LNCS 153, pages 186–205, Springer-Verlag, 1982.

    Google Scholar 

  11. Larry Jones and Janos Simon. Hierarchical design systems based on attribute grammars. In Proceedings of the Thirteenth ACM Symposium on Principles of Programming Languages (POPL), pages 58–69, St Petersburg, Fla, January 1986.

    Google Scholar 

  12. Simon M. Kaplan. Incremental Attribute Evaluation on Graphs (Revised Version). Technical Report UIUC-DCS-86-1309, University of Illinois at Urbana-Champaign, December 1986.

    Google Scholar 

  13. Donald E. Knuth. Semantics of context-free languages. Mathematical Systems Theory, 2(2):127–145, June 1968.

    Article  Google Scholar 

  14. M. Nagl, G. Engels, R. Gall, and W. Schafer. Software specification by graph grammars. In Hartmut Ehrig, Manfred Nagl, and Grzegorz Rozenberg, editors, Proceedings of the second International Workshop on Graph Grammars and their Application to Computer Science, LNCS 153, pages 267–287, Springer-Verlag, 1982.

    Google Scholar 

  15. David Notkin. The gandalf project. Journal of Systems and Software, 5(2):91–106, May 1985.

    Google Scholar 

  16. Thomas Reps. Generating Language-Based Environments. MIT Press, 1984.

    Google Scholar 

  17. J. Schofield. Editing as a Paradigm for User Interaction — A Thesis Proposal. Technical Report 81-11-01, Dept. of Computer Science, FR-35, University of Washington, November 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hartmut Ehrig Manfred Nagl Grzegorz Rozenberg Azriel Rosenfeld

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kaplan, S.M., Goering, S.K., Campbell, R.H. (1987). Supporting the software development process with attributed NLC graph grammars. In: Ehrig, H., Nagl, M., Rozenberg, G., Rosenfeld, A. (eds) Graph-Grammars and Their Application to Computer Science. Graph Grammars 1986. Lecture Notes in Computer Science, vol 291. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-18771-5_61

Download citation

  • DOI: https://doi.org/10.1007/3-540-18771-5_61

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-48178-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics