OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL

  • Wei Dou
  • Domenico Bianculli
  • Lionel Briand
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8569)


Modern enterprise information systems often require to specify their functional and non-functional (e.g., Quality of Service) requirements using expressions that contain temporal constraints. Specification approaches based on temporal logics demand a certain knowledge of mathematical logic, which is difficult to find among practitioners; moreover, tool support for temporal logics is limited. On the other hand, a standard language such as the Object Constraint Language (OCL), which benefits from the availability of several industrial-strength tools, does not support temporal expressions.

In this paper we propose OCLR, an extension of OCL with support for temporal constraints based on well-known property specification patterns. With respect to previous extensions, we add support for referring to a specific occurrence of an event as well as for indicating a time distance between events and/or from scope boundaries. The proposed extension defines a new syntax, very close to natural language, paving the way for a rapid adoption by practitioners. We show the application of the language in a case study in the domain of eGovernment, developed in collaboration with a public service partner.


Business Process Temporal Logic Temporal Constraint Object Constraint Language Linear Temporal Logic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bianculli, D., Ghezzi, C., Pautasso, C., Senti, P.: Specification patterns from research to industry: A case study in service-based applications. In: Proc. ICSE 2012, pp. 968–976. IEEE (2012)Google Scholar
  2. 2.
    Bianculli, D., Ghezzi, C., San Pietro, P.: The tale of SOLOIST: A specification language for service compositions interactions. In: Păsăreanu, C.S., Salaün, G. (eds.) FACS 2012. LNCS, vol. 7684, pp. 55–72. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  3. 3.
    Cabot, J., Olivé, À., Teniente, E.: Representing temporal information in UML. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 44–59. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  4. 4.
    Cengarle, M.V., Knapp, A.: Towards OCL/RT. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 390–409. Springer, Heidelberg (2002)Google Scholar
  5. 5.
    Conrad, S., Turowski, K.: Temporal OCL: Meeting specification demands for business components. In: Unified Modeling Language: System Analysis, Design, and Development Issues, pp. 151–165. IGI Global (2001)Google Scholar
  6. 6.
    Dou, W., Bianculli, D., Briand, L.: OCLR: a more expressive, pattern-based temporal extension of OCL. Tech. Rep. TR-SnT-2014-2, SnT Centre - University of Luxembourg (February 2014),
  7. 7.
    Dwyer, M.B., Avrunin, G.S., Corbett, J.C.: Patterns in property specifications for finite-state verification. In: Proc. ICSE 1999, pp. 411–420. IEEE (1999)Google Scholar
  8. 8.
    Flake, S., Mueller, W.: Past- and future-oriented time-bounded temporal properties with OCL. In: Proc. SEFM 2004, pp. 154–163. IEEE (2004)Google Scholar
  9. 9.
    Flake, S., Müller, W.: Expressing property specification patterns with OCL. In: Software Engineering Research and Practice, pp. 595–603. CSREA Press (2003)Google Scholar
  10. 10.
    Gruhn, V., Laue, R.: Patterns for timed property specifications. Electron. Notes Theor. Comput. Sci. 153(2), 117–133 (2006)CrossRefGoogle Scholar
  11. 11.
    Object Constraint Language (2012),
  12. 12.
    Kanso, B., Taha, S.: Temporal constraint support for OCL. In: Czarnecki, K., Hedin, G. (eds.) SLE 2012. LNCS, vol. 7745, pp. 83–103. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  13. 13.
    Konrad, S., Cheng, B.H.C.: Real-time specification patterns. In: Proc. ICSE 2005, pp. 372–381. ACM (2005)Google Scholar
  14. 14.
    Lavazza, L., Morasca, S., Morzenti, A.: A dual language approach extension to UML for the development of time-critical component-based systems. Electron. Notes Theor. Comput. Sci. 82(6), 121–132 (2003)CrossRefGoogle Scholar
  15. 15.
    Morzenti, A., Mandrioli, D., Ghezzi, C.: A model parametric real-time logic. ACM Trans. Program. Lang. Syst. 14, 521–573 (1992)CrossRefGoogle Scholar
  16. 16.
    Robinson, W.N.: Extended OCL for goal monitoring. ECEASST 9 (2008)Google Scholar
  17. 17.
    Soden, M., Eichler, H.: Temporal extensions of OCL revisited. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 190–205. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  18. 18.
    Ziemann, P., Gogolla, M.: OCL extended with temporal logic. In: Broy, M., Zamulin, A.V. (eds.) PSI 2003. LNCS, vol. 2890, pp. 351–357. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Wei Dou
    • 1
  • Domenico Bianculli
    • 1
  • Lionel Briand
    • 1
  1. 1.SnT Centre - University of LuxembourgLuxembourgLuxembourg

Personalised recommendations