• DocumentCode
    348145
  • Title

    Enhancing the Object Constraint Language for more expressive specifications

  • Author

    Hamie, Ali

  • Author_Institution
    Div. of Comput., Brighton Univ., UK
  • fYear
    1999
  • fDate
    1999
  • Firstpage
    376
  • Lastpage
    383
  • Abstract
    The Object Constraint Language (OCL) is a precise language which could be used for describing constraints on object-oriented models and other modelling artifacts. The kind of constraints which can be described using OCL include invariants on classes, types and interfaces, preconditions and postconditions of operations and methods. This paper describes some enhancements to OCL that make specifications convey information more effectively. For example, adding redundant invariants, time-based constraints, postconditions, and examples could make the specification clearer to readers, and can be used in showing that the specification says what is intended. Another example of an enhancement is the use of case analysis sugar which splits up a specification into manageable parts. These enhancements have been already integrated in some specification languages such as Larch/C++, a larch style behavioral interface specification language for C++
  • Keywords
    formal specification; object-oriented languages; object-oriented programming; specification languages; Larch/C++; Object Constraint Language; classes; expressive specifications; interfaces; larch style behavioral interface specification language; modelling artifacts; object-oriented models; postconditions; preconditions; redundant invariants; time-based constraints; types; Debugging; Java; Kernel; Object oriented modeling; Robustness; Specification languages; Standards development; Unified modeling language; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering Conference, 1999. (APSEC '99) Proceedings. Sixth Asia Pacific
  • Conference_Location
    Takamatsu
  • Print_ISBN
    0-7695-0509-0
  • Type

    conf

  • DOI
    10.1109/APSEC.1999.809626
  • Filename
    809626