Skip to main content

Behavior Preservation in Model Refactoring Using DPO Transformations with Borrowed Contexts

  • Conference paper
Graph Transformations (ICGT 2008)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5214))

Included in the following conference series:

Abstract

Behavior preservation, namely the fact that the behavior of a model is not altered by the transformations, is a crucial property in refactoring. The most common approaches to behavior preservation rely basically on checking given models and their refactored versions. In this paper we introduce a more general technique for checking behavior preservation of refactorings defined by graph transformation rules. We use double pushout (DPO) rewriting with borrowed contexts, and, exploiting the fact that observational equivalence is a congruence, we show how to check refactoring rules for behavior preservation. When rules are behavior-preserving, their application will never change behavior, i.e., every model and its refactored version will have the same behavior. However, often there are refactoring rules describing intermediate steps of the transformation, which are not behavior-preserving, although the full refactoring does preserve the behavior. For these cases we present a procedure to combine refactoring rules to behavior-preserving concurrent productions in order to ensure behavior preservation. An example of refactoring for finite automata is given to illustrate the theory.

Research partially supported by DAAD (German Academic Exchange Service), DFG project Behavior-GT and MIUR project ART.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Mens, T., Gorp, P.V.: A taxonomy of model transformation. ENTCS 152, 125–142 (2006)

    Google Scholar 

  2. Mens, T., Tourwe, T.: A survey of software refactoring. IEEE Transactions on Software Engineering 30(2), 126–139 (2004)

    Article  Google Scholar 

  3. Rangel, G., König, B., Ehrig, H.: Bisimulation verification for the DPO approach with borrowed contexts. In: Proc. of GT-VMT 2007. Electronic Communications of the EASST, vol. 6 (2007)

    Google Scholar 

  4. Biermann, E., Ehrig, K., Köhler, C., Kuhns, G., Taentzer, G., Weiss, E.: EMF model refactoring based on graph transformation concepts. In: SeTra 2006. Electronic Communications of EASST, vol. 3 (2006)

    Google Scholar 

  5. Hoffmann, B., Janssens, D., Eetvelde, N.V.: Cloning and expanding graph transformation rules for refactoring. ENTCS 152, 53–67 (2006)

    Google Scholar 

  6. Mens, T., Taentzer, G., Runge, O.: Analysing refactoring dependencies using graph transformation. Software and Systems Modeling 6(3), 269–285 (2007)

    Article  Google Scholar 

  7. van Kempen, M., Chaudron, M., Kourie, D., Boake, A.: Towards proving preservation of behaviour of refactoring of UML models. In: SAICSIT 2005, South African Institute for Computer Scientists and Information Technologists, pp. 252–259 (2005)

    Google Scholar 

  8. Pérez, J., Crespo, Y.: Exploring a method to detect behaviour-preserving evolution using graph transformation. In: Proceedings of the Third International ERCIM Workshop on Software Evolution, pp. 114–122 (2007)

    Google Scholar 

  9. Narayanan, A., Karsai, G.: Towards verifying model transformations. In: Bruni, R., Varró, D. (eds.) Proc. of GT-VMT 2006, Vienna. ENTCS, pp. 185–194 (2006)

    Google Scholar 

  10. Van Gorp, P., Stenten, H., Mens, T., Demeyer, S.: Towards automating source-consistent UML refactorings. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 144–158. Springer, Heidelberg (2003)

    Google Scholar 

  11. 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)

    Chapter  Google Scholar 

  12. Ehrig, H., König, B.: Deriving bisimulation congruences in the DPO approach to graph rewriting. In: Walukiewicz, I. (ed.) FOSSACS 2004. LNCS, vol. 2987, pp. 151–166. Springer, Heidelberg (2004)

    Google Scholar 

  13. Hirschkoff, D.: Bisimulation verification using the up-to techniques. International Journal on Software Tools for Technology Transfer 3(3), 271–285 (2001)

    MATH  Google Scholar 

  14. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer, New York (2006)

    MATH  Google Scholar 

  15. Lambers, L.: Adhesive high-level replacement system with negative application conditions. Technical report, TU Berlin (2007)

    Google Scholar 

  16. Rangel, G., Lambers, L., König, B., Ehrig, H., Baldan, P.: Behavior preservation in model refactoring using DPO transformations with borrowed contexts. Technical Report 12/08, TU Berlin (2008)

    Google Scholar 

  17. Ehrig, H., König, B.: Deriving bisimulation congruences in the DPO approach to graph rewriting with borrowed contexts. Mathematical Structures in Computer Science 16(6), 1133–1163 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  18. Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., Loewe, M.: Algebraic approaches to graph transformation part I: Basic concepts and double pushout approach. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph transformation, Foundations, vol. 1, pp. 163–246. World Scientific, Singapore (1997)

    Google Scholar 

  19. Rangel, G.: Bisimulation Verification for Graph Transformation Systems with Borrowed Contexts. PhD thesis, TU Berlin (to appear, 2008)

    Google Scholar 

  20. Rangel, G., König, B., Ehrig, H.: Deriving bisimulation congruences in the presence of negative application conditions. In: Amadio, R. (ed.) FOSSACS 2008. LNCS, vol. 4962, pp. 413–427. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Rangel, G., Lambers, L., König, B., Ehrig, H., Baldan, P. (2008). Behavior Preservation in Model Refactoring Using DPO Transformations with Borrowed Contexts. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds) Graph Transformations. ICGT 2008. Lecture Notes in Computer Science, vol 5214. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87405-8_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87405-8_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87404-1

  • Online ISBN: 978-3-540-87405-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics