Skip to main content

Granularity of Conflicts and Dependencies in Graph Transformation Systems

  • Conference paper
  • First Online:

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

Abstract

Conflict and dependency analysis (CDA) is a static analysis for the detection of conflicting and dependent rule applications in a graph transformation system. The state-of-the-art CDA technique, critical pair analysis, provides its users the benefits of completeness, i.e., its output contains a precise representation of each potential conflict and dependency in a minimal context, called critical pair. Yet, user feedback has shown that critical pairs can be hard to understand; users are interested in core information about conflicts and dependencies occurring in various combinations. In this paper, we investigate the granularity of conflicts and dependencies in graph transformation systems. We introduce a variety of new concepts on different granularity levels: We start with conflict atoms, representing individual graph elements as smallest building bricks that may cause a conflict. We show that each conflict atom can be extended to at least one conflict reason and, conversely, each conflict reason is covered by atoms. Moreover, we relate conflict atoms to minimal conflict reasons, representing smallest element sets to be overlapped in order to obtain a pair of conflicting transformations. We show how conflict reasons are related to critical pairs. Finally, we introduce dual concepts for dependency analysis. As we discuss in a running example, our concepts pave the way for an improved CDA technique.

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

Buying options

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 EPUB and 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

Learn about institutional subscriptions

Notes

  1. 1.

    A morphism between two graphs consists of two mappings between their nodes and edges being both structure-preserving w.r.t. source and target functions. Note that we denote inclusions by \(\hookrightarrow \) and all other morphisms by \(\rightarrow \).

References

  1. Heckel, R., Küster, J.M., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002). doi:10.1007/3-540-45832-8_14

    Chapter  Google Scholar 

  2. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. Springer, Heidelberg (2006)

    MATH  Google Scholar 

  3. Hausmann, J.H., Heckel, R., Taentzer, G.: Detection of conflicting functional requirements in a use case-driven approach: a static analysis technique based on graph transformation. In: Proceedings of the 22nd International Conference on Software Engineering (ICSE), pp. 105–115. ACM (2002)

    Google Scholar 

  4. Jayaraman, P., Whittle, J., Elkhodary, A.M., Gomaa, H.: Model composition in product lines and feature interaction detection using critical pair analysis. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 151–165. Springer, Heidelberg (2007). doi:10.1007/978-3-540-75209-7_11

    Chapter  Google Scholar 

  5. Küster, J.M., Gerth, C., Engels, G.: Dependent and conflicting change operations of process models. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 158–173. Springer, Heidelberg (2009). doi:10.1007/978-3-642-02674-4_12

    Chapter  Google Scholar 

  6. Mehner-Heindl, K., Monga, M., Taentzer, G.: Analysis of aspect-oriented models using graph transformation systems. In: Moreira, A., Chitchyan, R., Araújo, J., Rashid, A. (eds.) Aspect-Oriented Requirements Engineering, pp. 243–270. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  7. Mens, T., Straeten, R., D’Hondt, M.: Detecting and resolving model inconsistencies using transformation dependency analysis. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MODELS 2006. LNCS, vol. 4199, pp. 200–214. Springer, Heidelberg (2006). doi:10.1007/11880240_15

    Chapter  Google Scholar 

  8. Mens, T., Taentzer, G., Runge, O.: Analysing refactoring dependencies using graph transformation. Softw. Syst. Model. 6(3), 269–285 (2007)

    Article  Google Scholar 

  9. Baresi, L., Heckel, R., Thöne, S., Varró, D.: Modeling and validation of service-oriented architectures: application vs. style. In: ACM SIGSOFT Symposium on Foundations of Software Engineering Held Jointly with 9th European Software Engineering Conference, pp. 68–77. ACM (2003)

    Google Scholar 

  10. Ermel, C., Gall, J., Lambers, L., Taentzer, G.: Modeling with plausibility checking: inspecting favorable and critical signs for consistency between control flow and functional behavior. In: Giannakopoulou, D., Orejas, F. (eds.) FASE 2011. LNCS, vol. 6603, pp. 156–170. Springer, Heidelberg (2011). doi:10.1007/978-3-642-19811-3_12

    Chapter  Google Scholar 

  11. Strüber, D., Taentzer, G., Jurack, S., Schäfer, T.: Towards a distributed modeling process based on composite models. In: Cortellessa, V., Varró, D. (eds.) FASE 2013. LNCS, vol. 7793, pp. 6–20. Springer, Heidelberg (2013). doi:10.1007/978-3-642-37057-1_2

    Chapter  Google Scholar 

  12. Lambers, L., Ehrig, H., Orejas, F.: Efficient conflict detection in graph transformation systems by essential critical pairs. Electr. Notes Theor. Comput. Sci. 211, 17–26 (2008)

    Article  MATH  Google Scholar 

  13. Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)

    MATH  Google Scholar 

  14. Born, K., Lambers, L., Strüber, D., Taentzer, G.: Granularity of conflicts and dependencies in graph transformation systems: extended version, Philipps-Universität Marburg, Technical Report (2017). www.uni-marburg.de/fb12/swt/research/publications

  15. Plump, D.: Critical pairs in term graph rewriting. In: Prívara, I., Rovan, B., Ruzička, P. (eds.) MFCS 1994. LNCS, vol. 841, pp. 556–566. Springer, Heidelberg (1994). doi:10.1007/3-540-58338-6_102

    Chapter  Google Scholar 

  16. Ehrig, H., Padberg, J., Prange, U., Habel, A.: Adhesive high-level replacement systems: a new categorical framework for graph transformation. Fundam. Inform. 74(1), 1–29 (2006)

    MathSciNet  MATH  Google Scholar 

  17. Ehrig, H., Golas, U., Habel, A., Lambers, L., Orejas, F.: \(\cal{M}\)-adhesive transformation systems with nested application conditions. part 2: embedding, critical pairs and local confluence. Fundam. Inform. 118(1–2), 35–63 (2012). http://dx.doi.org/10.3233/FI-2012-705

    MathSciNet  MATH  Google Scholar 

  18. Taentzer, G.: AGG: a graph transformation environment for modeling and validation of software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 446–453. Springer, Heidelberg (2004). doi:10.1007/978-3-540-25959-6_35

    Chapter  Google Scholar 

  19. Verigraph. https://github.com/Verites/verigraph

  20. Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: advanced concepts and tools for in-place EMF model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 121–135. Springer, Heidelberg (2010). doi:10.1007/978-3-642-16145-2_9

    Chapter  Google Scholar 

  21. Lambers, L.: Certifying rule-based models using graph transformation, Ph.D. dissertation, Berlin Institute of Technology (2010)

    Google Scholar 

  22. Orejas, F., Lambers, L.: Lazy graph transformation. Fundam. Inform. 118(1–2), 65–96 (2012)

    MathSciNet  MATH  Google Scholar 

  23. Deckwerth, F., Kulcsár, G., Lochau, M., Varró, G., Schürr, A.: Conflict detection for edits on extended feature models using symbolic graph transformation. In: International Workshop on Formal Methods and Analysis in Software Product Line Engineering. EPTCS, vol. 206, pp. 17–31 (2016)

    Google Scholar 

  24. Strüber, D., Rubin, J., Arendt, T., Chechik, M., Taentzer, G., Plöger, J.: RuleMerger: automatic construction of variability-based model transformation rules. In: Stevens, P., Wąsowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 122–140. Springer, Heidelberg (2016). doi:10.1007/978-3-662-49665-7_8

    Chapter  Google Scholar 

Download references

Acknowledgements

We wish to thank Jens Kosiol and the anonymous reviewers for their constructive comments. This work was partially funded by the German Research Foundation, Priority Program SPP 1593 “Design for Future – Managed Software Evolution”. This research was partially supported by the research project Visual Privacy Management in User Centric Open Environments (supported by the EU’s Horizon 2020 programme, Proposal number: 653642).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gabriele Taentzer .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Born, K., Lambers, L., Strüber, D., Taentzer, G. (2017). Granularity of Conflicts and Dependencies in Graph Transformation Systems. In: de Lara, J., Plump, D. (eds) Graph Transformation. ICGT 2017. Lecture Notes in Computer Science(), vol 10373. Springer, Cham. https://doi.org/10.1007/978-3-319-61470-0_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-61470-0_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-61469-4

  • Online ISBN: 978-3-319-61470-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics