Multi-Granular Conflict and Dependency Analysis in Software Engineering based on Graph Transformation

Author email: leen.lambers@hpi.de
Tool name: multi-CDA
Description: Conflict and dependency analysis (CDA) of graph transformation has been shown to be a versatile foundation for understanding interactions in many software engineering domains, including software analysis and design, model-driven engineering, and testing. In this paper, we propose a novel static CDA technique that is multi-granular in the sense that it can detect all conflicts and dependencies on multiple granularity levels. Specifically, we provide an efficient algorithm suite for computing binary, coarse-grained, and fine-grained conflicts and dependencies: Binary granularity indicates the presence or absence of conflicts and dependencies, coarse granularity focuses on root causes for conflicts and dependencies, and fine granularity shows each conflict and dependency in full detail. Doing so, we can address specific performance and usability requirements that we identified in a literature survey of CDA usage scenarios. In an experimental evaluation, our algorithm suite computes conflicts and dependencies rapidly. Finally, we present a user study, in which the participants found our coarse-grained results more understandable than the fine-grained ones reported in a state-of-the-art tool. Our overall contribution is twofold: (i) we significantly speed up the computation of fine-grained and binary CDA results and, (ii) complement them with coarse-grained ones, which offer usability benefits for numerous use cases.
Bibtex: @inproceedings{10.1145/3180155.3180258, author = {Lambers, Leen and Str\"{u}ber, Daniel and Taentzer, Gabriele and Born, Kristopher and Huebert, Jevgenij}, title = {Multi-Granular Conflict and Dependency Analysis in Software Engineering Based on Graph Transformation}, year = {2018}, isbn = {9781450356381}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, url = {https://doi.org/10.1145/3180155.3180258}, doi = {10.1145/3180155.3180258}, booktitle = {Proceedings of the 40th International Conference on Software Engineering}, pages = {716–727}, numpages = {12}, location = {Gothenburg, Sweden}, series = {ICSE ’18} }
Link to public pdf: https://dl.acm.org/doi/abs/10.1145/3180155.3180258
Link to tool webpage: https://github.com/KristopherBorn/multiCDA
Link to demo: Not provided by authors
Category: None
Year and Conference: 2018, ICSE
Terms of use