Skip to main content
Log in

Automatic maintenance of association invariants

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Many approaches to software specification and design make use of invariants: constraints whose truth is preserved under operations on a system or component. Object modelling involves the definition of association invariants: constraints upon the sets of links corresponding to particular associations, most often concerning type, multiplicity, or symmetry. This paper shows how the definitions of operations may be extended to take account of association invariants, so that they may be properly considered when the operations are implemented. It introduces a formal, object-based modelling notation in which the process of extension and implementation, and thus the maintenance of association invariants, can be automated, making it easier to produce correct implementations of an object-oriented design.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Antoniou, G., Arief, M.: Executable declarative business rules and their use in electronic commerce. In: SAC ’02: Proceedings of the 2002 ACM symposium on Applied computing, pp. 6–10. ACM Press, New York (2002)

  2. Barnett, M., Leino, K.R.M., Schulte, W.: The Spec# programming system: An overview. In: Proceedings of CASSIS 2004. LNCS, vol. 3362. Springer, Heidelberg (2004)

  3. Ceri S., Fraternali P., Paraboschi S. and Tanca L. (1994). Automatic generation of production rules for integrity maintenance. ACM Trans. Database Syst. 19(3): 367–422

    Article  Google Scholar 

  4. Davies, J., Crichton, C., Crichton, E., Neilson, D., Sørensen, Ib H.: Formality, evolution, and model-driven software engineering. In: Proceedings of SBMF 2004, Electronic Notes in Computer Science. Elsevier, Amsterdam (2005)

  5. Davies, J., Faitelson, D., Welch, J.: Domain-specific semantics and the data refinement of object models. In: Proceedings of SBMF 2006, Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam (2007)

  6. Demuth, B., Hussmann, H., Loecher, S.: OCL as a Specification Language for Business Rules in Database Applications. In: Proceedings of the 4th International Conference on The Unified Modeling Language, Modeling Languages, Concepts, and Tools, pp. 104–117, London, UK. Springer, Heidelberg (2001)

  7. Faitelson, D., Welch, J., Davies, J.:. From predicates to programs: the semantics of a method language. In: Proceedings of SBMF 2005, Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam (2006)

  8. Gray P.M.D., Kulkarni K.G. and Paton N.W. (1992). Object-Oriented Databases: A Semantic Data Model Approach. Prentice Hall, USA

    MATH  Google Scholar 

  9. Hall, A.: Using Z as a Specification Calculus for Object-Oriented Systems. In: VDM ’90: Proceedings of the Third International Symposium of VDM Europe on VDM and Z - Formal Methods in Software Development, pp. 290–318, London, UK. Springer, Heidelberg (1990)

  10. Hughes J.G. (1991). Object-Oriented Databases. Prentice Hall, USA

    Google Scholar 

  11. Jagadish, H.V., Qian, X.: Integrity maintenance in object-oriented databases. In: Proceedings of the 18th International Conference on Very Large Data Bases, pp. 469–480. Morgan Kaufmann Publishers Inc., Los Altos (1992)

  12. Kleppe A., Warmer J. and Bast W. (2003). MDA Explained, The Model Driven Architecture: Practice and Promise. Addison-Wesley, Reading

    Google Scholar 

  13. Mayol E. and Teniente E. (1999). A survey of current methods for integrity constraint maintenance and view updating. In: Chen, P.P., Embley, D.W., Kouloumdjian, J., Liddle, S.W. and Roddick, J.F. (eds) ER (Workshops), of Lecture Notes in Computer Science, vol. 1727, pp 62–73. Springer, Heidelberg

    Google Scholar 

  14. Raistrick C., Francis P., Wright J., Carter C. and Wilkie I. (2004). Model Driven Architecture with Executable UML. Cambridge University Press, Cambridge

    Google Scholar 

  15. Schewe K.-D., Thalheim B., Schmidt J.W. and Wetzel I. (1992). Integrity enforcement in object-oriented databases. In: Lipeck, U.W. and Thalheim, B. (eds) FMLDO, Workshops in Computing, pp 174–195. Springer, Heidelberg

    Google Scholar 

  16. Progress Software. ObjectStore Database (2006). www.objectstore.com

  17. Welch, J., Faitelson, D., Davies, J.: Automatic maintenance of association invariants. In: Proceedings of SEFM 2005, pp. 282–292. Springer, Heidelberg (2005)

  18. Woodcock, J., Davies, J.: Using Z. Prentice Hall, USA (1996) www.usingz.com

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to James Welch.

Additional information

Communicated by Dr. Bernhard Beckert.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Welch, J., Faitelson, D. & Davies, J. Automatic maintenance of association invariants. Softw Syst Model 7, 287–301 (2008). https://doi.org/10.1007/s10270-008-0085-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-008-0085-0

Keywords

Navigation