Skip to main content

On the Evolution of OCL for Capturing Structural Constraints in Modelling Languages

  • Chapter
Rigorous Methods for Software Construction and Analysis

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5115))

Abstract

The Object Constraint Language (OCL) can be used to capture structural constraints in the context of the abstract syntax of modelling languages (metamodels) defined in the MOF metamodelling architecture. While the expression language of OCL has been revised and updated a number of times since its inception, the constructs used for capturing constraints (invariants) have remained unchanged. In this paper we argue that the abstract and concrete syntax of OCL invariants should also be updated to address a number of shortcomings and render OCL more usable in a contemporary modelling environment. To support our arguments we have implemented the proposed extensions in the prototype Epsilon Validation Language (EVL). To demonstrate the benefits delivered, we present and discuss a concrete example.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Object Management Group. Meta Object Facility (MOF) 2.0 Core Specification, http://www.omg.org/cgi-bin/doc?ptc/03-10-04

  2. Object Management Group. UML 2.0 OCL Specification, http://www.omg.org/docs/ptc/03-10-14.pdf

  3. Burdy, L., Cheon, Y., Cok, D., Ernst, M., Kiniry, J., Leavens, G.T., Leino, K.R.M., Poll, E.: An overview of JML tools and applications. International Journal on Software Tools for Technology Transfer 7(3), 212–232 (2005)

    Article  Google Scholar 

  4. Barnett, M., DeLine, R., Jacobs, B., Fähndrich, M., Leino, K.R.M., Schulte, W., Venter, H.: The Spec# programming system: Challenges and directions. In: Meyer, B., Woodcock, J. (eds.) VSTTE 2005. LNCS, vol. 4171, pp. 144–152. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  5. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1997)

    MATH  Google Scholar 

  6. Kolovos, D.S.: Extensible Platform for Specification of Integrated Languages for mOdel maNagement (Epsilon), http://www.cs.york.ac.uk/~dkolovos/epsilon

  7. Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon object language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Chiorean, D., Bortes, M., Corutiu, D.: Proposals for a Widespread Use of OCL. In: Proc. Tool Support for OCL and Related Formalisms - Needs and Trends, Models/UML 2005, Montego Bay, Jamaica (October 2005)

    Google Scholar 

  9. Cabot, J., Teniente, E.: Incremental Evaluation of OCL Constraints. In: Dubois, E., Pohl, K. (eds.) CAiSE 2006. LNCS, vol. 4001, pp. 81–95. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  10. Egyed, A.: Instant consistency checking for the UML. In: ICSE 2006: Proceeding of the 28th international conference on Software engineering, Shanghai, China, pp. 381–390. ACM Press, New York (2006)

    Chapter  Google Scholar 

  11. Eclipse Foundation, http://www.eclipse.org

  12. ArgoUML, http://argouml.tigris.org

  13. Eclipse.org. Eclipse Modelling Framework, http://www.eclipse.org/emf

  14. Sun Microsystems. Meta Data Repository, http://mdr.netbeans.org

  15. Epsilon component - Eclipse Generative Modeling Technology (GMT), http://www.eclipse.org/gmt/epsilon

  16. Eclipse GMF - Graphical Modeling Framework, http://www.eclipse.org/gmf

  17. Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd edn. Prentice Hall PTR, Englewood Cliffs (2004)

    Google Scholar 

  18. openArchitectureWare, http://www.openarchitectureware.org/

  19. Jouault, F., Bezívin, J.: Using ATL for Checking Models. In: Proc. International Workshop on Graph and Model Transformation (GraMoT), Tallinn, Estonia (September 2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Kolovos, D.S., Paige, R.F., Polack, F.A.C. (2009). On the Evolution of OCL for Capturing Structural Constraints in Modelling Languages. In: Abrial, JR., Glässer, U. (eds) Rigorous Methods for Software Construction and Analysis. Lecture Notes in Computer Science, vol 5115. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11447-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11447-2_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11446-5

  • Online ISBN: 978-3-642-11447-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics