An OCL-Based Technique for Specifying and Verifying Refinement-Oriented Transformations in MDE

  • Claudia Pons
  • Diego Garcia
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4199)


Despite the fact that the refinement technique is one of the cornerstones of a formal approach to software engineering, the concept of refinement in model driven engineering is loosely defined and open to misinterpretations. In this article we present a rigorous technique for specifying and verifying frequently occurring forms of refinement that take place in software modeling. Such strategy uses the formal language Object-Z as a background foundation, whereas designers only have to deal with the broadly accepted UML and OCL languages, thus propitiating the inclusion of verification in ordinary software engineering activities, increasing in this way the level of confidence on the correctness of the final product. Finally, an automatic tool is provided to support such model refinement activities; this tool adopts the micromodels strategy to reduce the search scope, making the verification process feasible.


Refinement Condition Abstract Operation Concrete Operation Abstraction Mapping Refinement Pattern 
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.
    Astesiano, E., Reggio, G.: An Algebraic Proposal for Handling UML Consistency. In: Workshop on Consistency Problems in UML-based Software Development, San Francisco, USA (2003)Google Scholar
  2. 2.
    Boiten, E.A., Bujorianu, M.C.: Exploring UML refinement through unification. In: Jurjens, J., Rumpe, B., et al. (eds.) Proceedings of the UML 2003 workshop on Critical Systems Development with UML, TUM-I0323, Technische Universitat Munchen (2003)Google Scholar
  3. 3.
    Davies, J., Crichton, C.: Concurrency and Refinement in the Unified Modeling Language. Electronic Notes in Theoretical Computer Science, vol. 70(3). Elsevier, Amsterdam (2002)Google Scholar
  4. 4.
    Derrick, J., Boiten, E.: Refinement in Z and Object-Z. Foundation and Advanced Applications. In: FACIT, Springer, Heidelberg (2001)Google Scholar
  5. 5.
    Engels, G., Küster, J., Heckel, R., Groenewegen, L.: A Methodology for Specifying and Analyzing Consistency of Object Oriented Behavioral Models. In: Procs. of the IEEE Int. Conference on Foundation of Software Engineering (2001)Google Scholar
  6. 6.
  7. 7.
    Jean-Marie, F., Jacky, E., Mireille, B.: Beyond MDA : Model Driven Engineering (L’Ingénierie Dirigée par les Modèles : au-délà du MDA) Edition Hezmes-Lavoisier. Février (2006), ISBN 2-7462-1213-7 Google Scholar
  8. 8.
    Gogolla, M., Bohling, J., Richters, M.: Validation of UML and OCL Models by Automatic Snapshot Generation. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 265–279. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  9. 9.
    Jackson, Daniel, Shlyakhter, I., Sridharan: A micromodularity Mechanism. In: Proceedings of the ACM Sigsoft Conference on the Foundation of Software Engineering FSE 2001 (2001)Google Scholar
  10. 10.
    Kim, S., Carrington, D.: Formalizing the UML Class Diagrams using Object-Z. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, Springer, Heidelberg (1999)CrossRefGoogle Scholar
  11. 11.
    Lano, K., Biccaregui, J.: Formalizing the UML in Structured Temporal Theories. In: 2nd. ECOOP Workshop on Precise Behavioral Semantics, TUM-I9813 (1998)Google Scholar
  12. 12.
    Lano, K., Androutsopolous, K., David, C.: Refinement Patterns for UML. In: Proceedings of REFINE 2005. Elsevier Electronic Notes in Theoretical Computer Science, vol. 137, pp. 131–149 (2005)Google Scholar
  13. 13.
    Ledang, H., Souquieres, J.: Integration of UML and B Specification Techniques: Systematic Transformation from OCL Expressions into B. In: Procs. of IEEE Asia-Pacific Software Engineering Conference 2002, December 4-6 (2002)Google Scholar
  14. 14.
    Liu, Z., Jifeng, H., Li, X., Chen, Y.: Consistency and Refinement of UML Models. In: 3er Workshop on Consistency Problems in UML-based Software Development III, event of the UML Conference (2004)Google Scholar
  15. 15.
    OMG - UML 2.0. The Unified Modeling Language Superstructure version 2.0 – OMG Final Adopted Specification (August 2003),
  16. 16.
    OCL 2.0. OMG Final Adopted Specification (October 2003)Google Scholar
  17. 17.
    Object Management Group, MDA Guide, v1.0.1, omg/03-06-01 (June 2003) Google Scholar
  18. 18.
    Paige, R., Kolovos, D., Polack, F.: Refinement via Consistency Checking in MDD. In: REFINE 2005. Electronic Notes in Theoretical Computer Science, vol. 137 (2005)Google Scholar
  19. 19.
    Claudia, P.: On the definition of UML refinement patterns. In: Workshop MoDeVa at ACM/IEEE 8th Int. Conference on Model Driven Engineering Languages and Systems (MoDELS), Jamaica (October 2005)Google Scholar
  20. 20.
    Claudia, P.: Heuristics on the Definition of UML Refinement Patterns. In: Wiedermann, J., Tel, G., Pokorný, J., Bieliková, M., Štuller, J. (eds.) SOFSEM 2006. LNCS, vol. 3831, Springer, Heidelberg (2006)Google Scholar
  21. 21.
    QVT Partners revised submission to QVT 1.1 (ad/2003-08-08)Google Scholar
  22. 22.
    Richters, M., Gogolla, M.: OCL-Syntax, Semantics and Tools. In: Clark, A., Warmer, J. (eds.) Object Modeling with the OCL. LNCS, vol. 2263, Springer, Heidelberg (2002)CrossRefGoogle Scholar
  23. 23.
    Smith, G.: The Object-Z Specification Language. Advances in Formal Methods. Kluwer Academic Publishers, Dordrecht (2000)Google Scholar
  24. 24.
    Stahl, M.V.: Model Driven Software Development. John Wiley, Chichester (2006)Google Scholar
  25. 25.
    Van Der Straeten, R., Mens, T., Simmonds, J., Jonckers, V.: Using description logic to maintain consistency between UML-models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, Springer, Heidelberg (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Claudia Pons
    • 1
    • 2
  • Diego Garcia
    • 1
    • 3
  1. 1.LIFIA – Facultad de Informática, Universidad Nacional de La Plata 
  2. 2.CONICET (Consejo Nacional de Investigaciones Científicas y Técnicas) 
  3. 3.UTN (Universidad Tecnológica Nacional)La Plata, Buenos AiresArgentina

Personalised recommendations