Automatic Generation of Integrated Formal Models Corresponding to UML System Models

  • Helen Treharne
  • Edward Turner
  • Richard F. Paige
  • Dimitrios S. Kolovos
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 33)


This paper presents a complex model transformation that takes two related UML models as input (class diagrams and state machines) and outputs an integrated formal model. The transformation is achieved using the Epsilon model management framework and has involved the definition of new CSP and B metamodels. The target model is a CSPB specification (a fusion of CSP and B) that can be used to analyse the source UML. Through a comparative study we conclude that the code written using Epsilon is more concise than the equivalent model-to-text transformation achieved using the iUML toolset.


Model transformation Epsilon UML CSP 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: Atl: A model transformation tool. Sci. Comput. Program. 72(1-2), 31–39 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  3. 3.
    Abrial, J.R.: The B Book: Assigning programs to meanings. Cambridge University Press, New York (1996)CrossRefzbMATHGoogle Scholar
  4. 4.
    Software Design Group at MIT: Alloy Analyser 4.1.2 (2008)Google Scholar
  5. 5.
    Kolovos, D.S., Paige, R.F.: The Epsilon model management platform (2009)Google Scholar
  6. 6.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon Transformation Language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.: The Epsilon Generation Language. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  8. 8.
    Schneider, S., Treharne, H.: CSP theorems for communicating B machines. Formal Asp. Comput. 17(4), 390–422 (2005)CrossRefzbMATHGoogle Scholar
  9. 9.
    Formal Systems Oxford: FDR 2.83 manual (2007)Google Scholar
  10. 10.
    Leuschel, M., Butler, M.: ProB: A Model Checker for B. In: ESA 1994. LNCS, pp. 855–874. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Turner, E., Treharne, H., Evans, N., Schneider, S.: Automatic generation of CSP || B skeletons from xUML models. In: Fitzgerald, J.S., Haxthausen, A.E., Yenigun, H. (eds.) ICTAC 2008. LNCS, vol. 5160, pp. 364–379. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Mellor, S.J., Balcer, M.J.: Executable UML, A Foundation for Model-Driven Architecture. Addison-Wesley, Reading (2002)Google Scholar
  13. 13.
    Carter, K.: Intelligent UML 2.30 modeller and simulator,
  14. 14.
    Wilkie, I., King, A., Clarke, M., Weaver, C., Raistrick, C., Francis, P.: UML ASL Reference Guide (ASL language level 2.5). Kennedy Carter Ltd. (2003)Google Scholar
  15. 15.
    Evans, N., Treharne, H., Laleau, R., Frappier, M.: Applying CSP ∥ B to information systems. Software and System Modeling 7(1), 85–102 (2008)CrossRefGoogle Scholar
  16. 16.
    Bisztray, D., Heckel, R., Ehrig, H.: Verification of architectural refactoring rules. Technical report, University of Leicester (2008)Google Scholar
  17. 17.
    Bisztray, D., Heckel, R., Ehrig, H.: Verification of architectural refactorings by rule extraction. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 347–361. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: UML2Alloy: A challenging model transformation. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 436–450. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  19. 19.
    Akehurst, D.H., Bordbar, B., Evans, M.J., Howells, W.G.J., McDonald-Maier, K.D.: SiTra: Simple Transformations in Java. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 351–364. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Helen Treharne
    • 1
  • Edward Turner
    • 1
  • Richard F. Paige
    • 2
  • Dimitrios S. Kolovos
    • 2
  1. 1.Department of ComputingUniversity of SurreyUK
  2. 2.Department of Computer ScienceUniversity of YorkUK

Personalised recommendations