Model Transformations Incorporating Multiple Views

  • John Derrick
  • Heike Wehrheim
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4019)


Model transformations are an integral part of OMG’s standard for Model Driven Architecture. Model transformations are advocated to be behaviour preserving: platform specific models should adhere to platform independent descriptions developed in earlier design stages.

In this paper, we deal with models consisting of several views of a system. Often, in such a scenario, model transformations change just one view, and, although the overall transformation of all views is behaviour preserving, it is not behaviour preserving in isolation. To tackle this problem we develop a proof technique (and show its soundness) that allows one to consider just the view that has changed, and not the entire system. We focus specifically on one particular class of view-crossing transformations, namely on transformations conjunctively adding new constraints to a model.


Model Transformation Multiple View Static View Dynamic View Behaviour Preserve 
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. [BD02]
    Bolton, C., Davies, J.: Refinement in Object-Z and CSP. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 225–244. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. [BHTV04]
    Baresi, L., Heckel, R., Thöne, S., Varro, D.: Style-Based Refinement of Dynamic Software Architectures. In: 4th Working IEEE/IFIP Conference on Software Architecture (WICSA4), pp. 155–164. IEEE Computer Society Press, Los Alamitos (2004)CrossRefGoogle Scholar
  3. [BPPT03]
    Bottoni, P., Parisi-Presicce, F., Taentzer, G.: Coordinated distributed diagram transformation for software evolution. In: Heckel, R., Mens, T., Wermelinger, M. (eds.) Electronic Notes in Theoretical Computer Science, vol. 72, Elsevier, Amsterdam (2003)Google Scholar
  4. [DB01]
    Derrick, J., Boiten, E.A.: Refinement in Z and Object-Z. Springer, Heidelberg (2001)MATHGoogle Scholar
  5. [DB03]
    Derrick, J., Boiten, E.A.: Relational concurrent refinement. Formal Aspects of Computing 15(2-3), 182–214 (2003)MATHCrossRefGoogle Scholar
  6. [dE98]
    de Roever, W.-P., Engelhardt, K.: Data Refinement: Model-Oriented Proof Methods and their Comparison. CUP (1998)Google Scholar
  7. [DS03]
    Derrick, J., Smith, G.: Structural Refinement of Systems Specified in Object-Z and CSP. Formal Aspects of Computing 15(1), 1–27 (2003)MATHCrossRefGoogle Scholar
  8. [FDR97]
    Formal Systems (Europe) Ltd. Failures-Divergence Refinement: FDR2 User Manual (October 1997)Google Scholar
  9. [Fis97]
    Fischer, C.: CSP-OZ: A combination of Object-Z and CSP. In: Bowman, H., Derrick, J. (eds.) Formal Methods for Open Object-Based Distributed Systems (FMOODS 1997), vol. 2, pp. 423–438. Chapman and Hall, Boca Raton (1997)Google Scholar
  10. [FKN+92]
    Finkelstein, A., Kramer, J., Nuseibeh, B., Finkelstein, L., Goedicke, M.: Viewpoints: A framework for integrating multiples perspectives in system development. International Journal of Software Engineering and Knowledge Engineering 2(1), 31–58 (1992)CrossRefGoogle Scholar
  11. [FOW01]
    Fischer, C., Olderog, E.-R., Wehrheim, H.: A CSP view on UML-RT structure diagrams. In: Hussmann, H. (ed.) ETAPS 2001 and FASE 2001. LNCS, vol. 2029, pp. 91–108. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  12. [FW99]
    Fischer, C., Wehrheim, H.: Model-checking CSP-OZ specifications with FDR. In: Araki, K., Galloway, A., Taguchi, K. (eds.) Proceedings of the 1st International Conference on Integrated Formal Methods (IFM), pp. 315–334. Springer, Heidelberg (1999)Google Scholar
  13. [He89]
    He, J.: Process simulation and refinement. Formal Aspects of Computing 1, 229–241 (1989)CrossRefGoogle Scholar
  14. [Hoa85]
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)MATHGoogle Scholar
  15. [Jos88]
    Josephs, M.B.: A state-based approach to communicating processes. Distributed Computing 3, 9–18 (1988)MATHCrossRefGoogle Scholar
  16. [KHE03]
    Küster, J., Heckel, R., Engels, G.: Defining and and Validating Transformations of UML Models. In: IEEE Symposium on Visual Languages and Formal Methods, pp. 145–152. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  17. [KHK+03]
    Koehler, J., Hauser, R., Kapoor, S., Wu, F., Kumaran, S.: A Model-Driven Transformation Method. In: EDOC 2003, pp. 186–197. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  18. [LB98]
    Lano, K., Bicarregui, J.: Semantics and Transformations for UML Models. In: Bézivin, J., Muller, P.-A. (eds.) UML 1998. LNCS, vol. 1618, pp. 107–119. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  19. [MORW04]
    Möller, M., Olderog, E.-R., Rasch, H., Wehrheim, H.: Linking CSP-OZ with UML and Java: A Case Study. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 267–286. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  20. [MS04]
    McComb, T., Smith, G.: Architectural Design in Object-Z. In: Australian Software Engineering Conference (ASWEC 2004), IEEE Computer Society Press, Los Alamitos (2004)Google Scholar
  21. [MT04]
    Mens, T., Tourwé, T.: A Survey of Software Refactoring. IEEE Transactions on Software Engineering 30(2) (2004)Google Scholar
  22. [OW05]
    Olderog, E.-R., Wehrheim, H.: Specification and (property) inheritance in CSP-OZ. Science of Computer Programming (55), 227–257 (2005)MATHCrossRefMathSciNetGoogle Scholar
  23. [PR03]
    Philipps, J., Rumpe, B.: Refactoring of Programs and Specifications, pp. 281–297. Kluwer Academic Publishers, Dordrecht (2003)Google Scholar
  24. [Ros98]
    Roscoe, A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1998)Google Scholar
  25. [RW03]
    Rasch, H., Wehrheim, H.: Checking Consistency in UML Diagrams: Classes and State Machines. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 229–243. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  26. [Smi00]
    Smith, G.: The Object-Z Specification Language. Kluwer Academic Publishers, Dordrecht (2000)MATHGoogle Scholar
  27. [SPTJ01]
    Sunyé, G., Pollet, D., Le Traon, Y., Jézéquel, J.-M.: Refactoring UML models. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 134–148. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  28. [TS02]
    Treharne, H., Schneider, S.A.: Communicating B machines. In: Bert, D., P. Bowen, J., C. Henson, M., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, Springer, Heidelberg (2002)Google Scholar
  29. [Weh00]
    Wehrheim, H.: Specification of an automatic manufacturing system – a case study in using integrated formal methods. In: Maibaum, T.S.E. (ed.) ETAPS 2000 and FASE 2000. LNCS, vol. 1783, pp. 334–348. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  30. [Whi02]
    Whittle, J.: Transformations and software modeling languages: Automating transformations in uml. In: Jézéquel, J.-M., Hussmann, H., Cook, S. (eds.) UML 2002. LNCS, vol. 2460, pp. 227–242. Springer, Heidelberg (2002)Google Scholar
  31. [ZJ96]
    Zave, P., Jackson, M.: Where do operations come from? A multiparadigm specification technique. IEEE Transactions on Software Engineering XXII(7), 508–528 (1996)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • John Derrick
    • 1
  • Heike Wehrheim
    • 2
  1. 1.Department of ComputingUniversity of SheffieldSheffieldUK
  2. 2.Institut für InformatikUniversität PaderbornPaderbornGermany

Personalised recommendations