Skip to main content

Change management and consistency maintenance in software development environments using object oriented attribute grammars

  • Conference paper
  • First Online:
Object Technologies for Advanced Software (ISOTAS 1993)

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

Included in the following conference series:

Abstract

In this paper, we consider describing software development environments (SDEs) using a computational model OOAG (Object Oriented Attribute Grammar) [Shi89] [SK90], which incorporates functions for managing changes and maintaining consistency. In SDEs, the change managenent and consistency maintenance are key issues and OOAG is suitable for describing them. Software objects in SDEs have many derived values, and software objects and their derived values have complex relations with each other. Careless human activities often cause inconsistencies among software objects and it usually costs a lot to recover them. OOAG provides declarative descriptions to re-compute automatically derived values based on change propagation and to check relations among software objects, which help recovering activities of programmers.

OOAG treats SDEs as aggregated active objects, i.e. tree structures, where software products are distributed. Managing changes of derived values and consistency among software objects are described over tree structures in declarative manner. Attributes associated with nodes are re-computed automatically, if necessary.

OOAG is a computational model with the following extensions to standard attribute grammars(AGs): (1) OOAG can change tree structures depending upon their attribute values. (AGs that have this function are called higher order attribute grammars [HM89] [TC90]). (2) OOAG can describe message passing which pastes temporary attributes and their attribution rules to the tree structure.

The aim of this paper is to show that our approach of treating SDEs as aggregated objects is natural and OOAG's features are suited for the task of describing change management and consistency control in structure-oriented software development environments.

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. David Betz. XLISP: An Experimental Object Oriented Language, January 1985.

    Google Scholar 

  2. Pierre Deransart, Martin Jourdan, and Bernard Lorho. Attribute Grammars: Definitions, Systems, and Bibliography, volume 323 of Lecture Notes in Computer Science. Springer-Verlag, 1988.

    Google Scholar 

  3. Alan Demers and Anne Rogers. Attribute propagation by message passing. SIGPLAN NOTICES, 20(7):43–59, 1985.

    Google Scholar 

  4. R. Fallow. Generating a Production Compiler from an Attribute Grammar. IEEE Software, 1(4), 1984.

    Google Scholar 

  5. Gorel Hedin. An object-oriented notation for attribute grammars. In Proceedings of the European Conference on Object-Oriented Programming(ECOOP '89), 1989.

    Google Scholar 

  6. S.D.Swieerstra H.H.Vogt and M.F.Kuiper. Higher order attribute grammars. In Proceedings of the ACM SIGPLAN '89 Conference on Programming Language Design and Implementation, pages 131–145, Portland,Oregon, 1989. ACM.

    Google Scholar 

  7. Takuya Katayama. A Hierarchical and Functional Software Process Description and its Enaction. In Proceedings of the 11th International Conference on Software Engineering, pages 343–352, 1989.

    Google Scholar 

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

    Article  Google Scholar 

  9. P.Mayer Niels. The WINTERP MANUAL (Version 1.0). Hewlett-Packard Laboratories, Human-Computer Interaction Department, December 1989.

    Google Scholar 

  10. David Notkin. The GANDALF project. The Journal of Systems and Software, 5(2), May 1985.

    Google Scholar 

  11. Thomas W. Reps and Tim Teitelbaum. The Synthesizer Generator. Texts and Monographs in Computer Science. Springer-Verlag, 1989.

    Google Scholar 

  12. Yoichi Shinoda. On Application of Attribute Grammars to Software Development. PhD thesis, Tokyo Institute of Technology, 3 1989.

    Google Scholar 

  13. Yoichi Shinoda and Takuya Katayama. Object Oriented Extension of Attribute Grammars and Its Implementation Using Distributed Attribute Evaluation Algorithm. In Proceedings of the International Workshop on Attribute Grammars and their Applications, Lecture Note in Computer Science. Springer-Verlag, 1990. 177–191.

    Google Scholar 

  14. Masato Suzuki and Katayama Takuya. Redoing: A mechanism for dynamics and flexibility of software process. Technical Report MS-TK-89-07-25, Tokyo Institute of Technology, 1989.

    Google Scholar 

  15. Tim Teitelbaum and R. Chapman. Higher-order attribute grammars and editing environments. In Proceedings of ACM SIGPLAN '90 Conference on Programming Language Design and Implementation, White Plains, NY, June 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Shojiro Nishio Akinori Yonezawa

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gondow, K., Imaizumi, T., Shinoda, Y., Katayama, T. (1993). Change management and consistency maintenance in software development environments using object oriented attribute grammars. In: Nishio, S., Yonezawa, A. (eds) Object Technologies for Advanced Software. ISOTAS 1993. Lecture Notes in Computer Science, vol 742. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57342-9_67

Download citation

  • DOI: https://doi.org/10.1007/3-540-57342-9_67

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57342-5

  • Online ISBN: 978-3-540-48075-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics