Extending OCL Operation Contracts with Objective Functions

by Matthias P. Krieger and Achim D. Brucker

Cover for krieger.ea:objective-functions:2011.We explore the potential of adding objective functions to OCL operation contracts. If an operation contract includes an objective function, the operation has the obligation to yield results that make the objective function assume an optimal value. Thus, an objective function expresses a preference among the possible operation results that conform to the postconditions of the operation contract and any class invariants. Objective functions strictly increase the expressiveness of OCL operation contracts. While objective functions arise naturally in application domains like operations research, we argue that objective functions are a useful general-purpose specification instrument and discuss several application examples. As tool support for operation contracts with objective functions, we present an animator for OCL operation contracts with optimization capabilities. We ensure tool interoperability by specifying objective functions in a UML profile.

Keywords: OCL, UML, objective functions
Categories: ,
Documents: (full text as PDF file)

QR Code for krieger.ea:objective-functions:2011.Please cite this article as follows:
Matthias P. Krieger and Achim D. Brucker. Extending OCL Operation Contracts with Objective Functions. In Electronic Communications of the EASST, 44, 2011.
Keywords: OCL, UML, objective functions
(full text as PDF file) (BibTeX) (Endnote) (RIS) (Word) (doi:10.14279/tuj.eceasst.44.662) (ECEASST) (Share article on LinkedIn. Share article on CiteULike. )

BibTeX
@Article{ krieger.ea:objective-functions:2011,
abstract = {We explore the potential of adding objective functions to OCL operation contracts. If an operation contract includes an objective function, the operation has the obligation to yield results that make the objective function assume an optimal value. Thus, an objective function expresses a preference among the possible operation results that conform to the postconditions of the operation contract and any class invariants. Objective functions strictly increase the expressiveness of OCL operation contracts. While objective functions arise naturally in application domains like operations research, we argue that objective functions are a useful general-purpose specification instrument and discuss several application examples. As tool support for operation contracts with objective functions, we present an animator for OCL operation contracts with optimization capabilities. We ensure tool interoperability by specifying objective functions in a UML profile.},
author = {Matthias P. Krieger and Achim D. Brucker},
copyright = {ECEASST},
copyrighturl = {http://journal.ub.tu-berlin.de/eceasst/article/view/662},
doi = {10.14279/tuj.eceasst.44.662},
editor = {Jordi Cabot and Tony Clark and Manuel Clavel and Martin Gogolla},
issn = {1863-2122},
journal = {Electronic Communications of the EASST},
keywords = {OCL, UML, objective functions},
language = {USenglish},
pdf = {https://www.brucker.ch/bibliography/download/2011/krieger.ea-objective-functions-2011.pdf},
title = {Extending {OCL} Operation Contracts with Objective Functions},
url = {https://www.brucker.ch/bibliography/abstract/krieger.ea-objective-functions-2011},
volume = {44},
volumetitle = {Proceedings of the Workshop on {OCL} and Textual Modelling (OCL 2011)},
year = {2011},
}