Abstract
Development processes in engineering disciplines are inherently complex. Throughout the development process, the system to be built is modeled from different perspectives, on different levels of abstraction, and with different intents. Since state-of-the-art development processes are highly incremental and iterative, models of the system are not constructed in one shot; rather, they are extended and improved repeatedly. Furthermore, models are related by manifold dependencies and need to be maintained mutually consistent with respect to these dependencies. Thus, tools are urgently needed which assist developers in maintaining consistency between inter-dependent and evolving models. These tools have to operate incrementally, i.e., they have to propagate changes performed on one model into related models which are affected by these changes. In addition, they need to support user interactions in settings where the effects of changes cannot be determined automatically and deterministically. We present an algorithm for incremental and interactive consistency maintenance which meets these requirements. The algorithm is based on graphs, which are used as the data model for representing the models to be integrated, and graph transformation rules, which describe the modifications of the graphs to be performed on a high level of abstraction.
Similar content being viewed by others
References
Akehurst D., Kent S. and Patrascoiu O. (2003). A relational approach to defining and implementing transformations between metamodels. J. Softw. Systems Modeling 2(4): 215–239
Appukuttan, B.K., Clark, T., Reddy, S., Tratt, L., Venkatesh, R.: A model driven approach to model transformations. In: Proceedings of the 2003 Model Driven Architecture: Foundations and Applications (MDAFA2003), CTIT Technical Report TR-CTIT-03-27. University of Twente, The Netherlands (2003)
Baresi, L., Mauri, M., Pezzè, M.: PLCTools: Graph transformation meets PLC design. Electron. Notes Theor. Comput. Sci. 72(2), (2002)
Becker S.M., Haase T. and Westfechtel B. (2005). Model-based a-posteriori integration of engineering tools for incremental development processes. J. Softw. Systems Modeling 4(2): 123–140
Becker, S.M., Haase, T., Westfechtel, B., Wilhelms, J: Integration tools supporting cooperative development processes in chemical engineering. In: Proceedings of the 6th Biennial World Conference on Integrated Design and Process Technology (IDPT-2002), Pasadena. Society for Design and Process Science (2002)
Becker, S.M., Lohmann, S., Westfechtel, B.: Rule execution in graph-based incremental interactive integration tools. In: Proceedings of the 2nd International Conference on Graph Transformations (ICGT 2004), LNCS, vol. 3256, pp. 22–38. Springer, Heidelberg (2004)
Becker S.M. and Westfechtel B. (2004). UML-based definition of integration models for incremental development processes in chemical engineering. J. Integr. Des. Process Sci. Trans. SDPS 8(1): 49–63
Böhlen, B., Jäger, D., Schleicher, A., Westfechtel, B.: UPGRADE: building interactive tools for visual languages. In: Proceedings of the 6th World Multiconference on Systemics, Cybernetics, and Informatics (SCI 2002), vol. I (Information Systems Development I), pp. 17–22, USA (2002)
Braun, P., Marschall, F.: Transforming object oriented models with BOTL. Electron. Notes Theor. Comput. Sci. 72(3), (2003)
Burmester S., Giese H., Niere J., Tichy M., Wadsack J.P., Wagner R., Wendehals L. and Zündorf A. (2004). Tool integration at the meta-model level: the Fujaba approach. Int. J. Softw. Tools Technol. Transf. (STTT) 6(3): 203–218
Cremer K., Marburger A. and Westfechtel B. (2002). Graph-based tools for re-engineering. J. Softw. Maintenance Evolut. Res. Practice 14(4): 257–292
de Lara, J., Vangheluwe, H: Computer aided multi-paradigm modelling to process petri-nets and statecharts. In: Proceedings of 1st International Conference on Graph Transformations (ICGT 2002), LNCS, vol. 2505, pp. 239–253. Springer, Heidelberg (2002)
Ehrig, H., Engels, G., Kreowski, H., Rozenberg, G. (eds.): Handbook on Graph Grammars and Computing by Graph Transformation: Application, Languages, and Tools, vol. 2. World Scientific, Singapore (1999)
Ehrig, K., Guerra, E., de Lara, J., Lengyel, L., Levendovszky, T., Prange, U., Taentzer, G., Varró, D., Varró-Gyapay, S.: Model transformation by graph transformation: a comparative study. In: MTiP 2005, International Workshop on Model Transformations in Practice (Satellite Event of MoDELS 2005) Available from: http://www.inf.mit.bme.hu/FTSRG/Publications/varro/2005/mtip05.pdf (2005)
Enders B.E., Heverhagen T., Goedicke M., Tröpfner P. and Tracht R. (2002). Towards an integration of different specification methods by using the ViewPoint framework. Trans. SDPS 6(2): 1–23
Finkelstein, A., Kramer, J., Goedicke, M.: ViewPoint oriented software development. In: International Workshop on Software Engineering and its Applications, pp. 374–384 (1990)
Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph rewrite language based on the unified modeling language. In: Proceedings of the 6th International Workshop on Theory and Application of Graph Transformation (TAGT), LNCS vol. 1764, pp. 296–309. Springer, Heidelberg (1998)
Gerber, A., Lawley, M., Raymond, K., Steel, J., Wood, A.: Transformation: the missing link of MDA. In: Proceedings of 1st International Conference on Graph Transformations (ICGT 2002), LNCS vol. 2505, pp. 90–105, Barcelona. Springer, Heidelberg (2002)
Herold, S.: Ein Rahmenwerk für graphbasierte Integrationswerkzeuge. Master’s thesis, RWTH Aachen University, Germany (2005)
Jahnke, J., Zündorf, A.: Applying graph transformations to database re-engineering. In Ehrig et al. [13], pp. 267–286
Kent, S., Smith, R.: The bidirectional map** problem. Electron. Notes Theor. Comput. Sci. 82(7) (2003)
Kiesel N., Schürr A. and Westfechtel B. (1995). GRAS: a graph-oriented software engineering database system. Infor. Systems 20(1): 21–51
Kleppe, A.G., Warmer, J., Bast, W.: MDA Explained: The Model Driven Architecture: Practice and Promise. Pearson Education, Boston (2003)
Königs, A., Schürr, A.: Multi-domain integration with MOF and extended triple graph grammars [online]. In: Bezivin, J., Heckel, R. (eds.) Language Engineering for Model-Driven Software Development, number 04101 in Dagstuhl Seminar Proceedings. Internationales Begegnungs- und Forschungszentrum (IBFI), Schloss Dagstuhl, Germany, 2005. < http://drops.dagstuhl.de/opus/volltexte/2005/22 > [date of citation: 2005-02-01]
Lefering, M.: Integrationswerkzeuge in einer Softwareent-wicklungsumgebung. Berichte aus der Informatik. Shaker Verlag, Aachen (1995)
Lefering, M., Schürr, A.: Specification of integration tools. In Nagl [29], pp. 324–334
Lohmann, S.: Ausführung von Integrationsregeln mit einem Graphersetzungssystem. Master’s thesis, RWTH Aachen University, Germany (2004)
Mens, T., van Gorp, P., Karsai, G., Varró, D.: Applying a model transformation taxonomy to graph transformation technology. In: Karsai, G., Täntzer, G. (eds.) GraMot 2005, International Workshop on Graph and Model Transformations, vol. 152 of Electron. Notes Theor. Comput. Sci. pp. 143–159 (2006)
Nagl, M. (ed.): Building Tightly-Integrated Software Development Environments: The IPSEN Approach. LNCS, vol. 1170. Springer, Berlin (1996)
Nagl, M., Marquardt, W.: SFB-476 IMPROVE: Informatische Unterstützung übergreifender Entwicklungsprozesse in der Verfahrenstechnik. In: Informatik ‘97: Informatik als Innovationsmotor, Informatik aktuell, pp. 143–154, Aachen Springer, Heidelberg (1997)
OMG. MOF 2.0 query / view / transformations, request for proposal (2002)
OMG Architecture Board ORMSC. Model driven architecture (MDA) (2001)
Rozenberg, G. (1997). Handbook on Graph Grammars and Computing by Graph Transformation 1 (Foundations). World Scientific, Singapore
Schürr, A.: Specification of graph translators with triple graph grammars. In: Proceedings of the 20th International Workshop on Graph-Theoretic Concepts in Computer Science (WG 1994), LNCS, vol. 903, pp. 151–163, Herrsching. Springer, Heidelberg (1995)
Schürr, A., Winter, A., Zündorf, A.: The PROGRES approach: Language and environment. In Ehrig et al. [13], pp. 487–550
Spanoudakis, G., Zisman, A.: Inconsistency management in software engineering: Survey and open research issues. In: Handbook of Software Engineering and Knowledge Engineering, vol. 1, pp. 329–380. World Scientific, Singapore (2001)
Sprinkle, J., Agrawal, A., Levendovszky, T., Shi, F., Karsai, G.: Domain model translation using graph transformations. In: Proceedings of the 10th International Conference on Engineering of Computer-Based Systems (ECBS 2003), pp. 159–167. IEEE Computer Society (2003)
Taentzer, G., Koch, M., Fischer, I., Volle, V.: Distributed graph transformation with application to visual design of distributed systems. In: Handbook on Graph Grammars and Computing by Graph Transformation: Concurrency, Parallelism, and Distribution, vol. 3, pp. 269–340. World Scientific, Singapore (1999)
Wagner, R., Giese, H., Nickel, U.A.: A plug-in for flexible and incremental consistency mangement. In: Proceedings of the International Conference on the Unified Modeling Language 2003 (Workshop 7: Consistency Problems in UML-Based Software Development), San Francisco. Blekinge Institute of Technology (2003)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Dr. Francesco Parisi-Presicce.
This paper is an extended version of [6].
Rights and permissions
About this article
Cite this article
Becker, S.M., Herold, S., Lohmann, S. et al. A graph-based algorithm for consistency maintenance in incremental and interactive integration tools. Softw Syst Model 6, 287–315 (2007). https://doi.org/10.1007/s10270-006-0045-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-006-0045-5