Abstract
Today’s development processes employ a variety of notations and tools, e.g., the Unified Modeling Language UML, the Standard Description Language SDL, requirements databases, design tools, code generators, model checkers, etc. For better process support, the employed tools may be organized within a tool suite or integration platform, e.g., Rational Rose or Eclipse. While these tool-integration platforms usually provide GUI adaption mechanisms and functional adaption via application programming interfaces, they frequently do not provide appropriate means for data integration at the meta-model level. Thus, overlapping and redundant data from different “integrated” tools may easily become inconsistent and unusable. We propose two design patterns that provide a flexible basis for the integration of different tool data at the meta-model level. To achieve consistency between meta-models, we describe rule-based mechanisms providing generic solutions for managing overlapping and redundant data. The proposed mechanisms are widely used within the Fujaba Tool Suite. We report about our implementation and application experiences .
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Arnold K, O’Sullivan B, Scheifler RW, Waldo J, Wollrath A, (1999) The Jini specification. The Jini Technology Series, June 1999
Balzer R (1991) Tolerating inconsistency. In: Proc. 13th international conference on software engineering, Austin, TX. IEEE Press, New York, pp 158–165
Bottoni P, Koch M, Parisi-Pressice F, Taenzer G (2000) Consistency checking and visualization of OCL constraints. In: UML 2000. Lecture notes in computer science, vol 1936. Springer, Berlin Heidelberg New York
Egyed A (2000) Automatically validating model consistency during refinement. Technical report, Center for Software Engineering, University of Southern California, Los Angeles, October 2000
Ehrig H, Tsiolakis A (2000) Consistency analysis of UML class and sequence diagrams using attributed graph grammars. In: Ehrig H, Taentzer G (eds) Proc. ETAPS 2000 workshop on graph transformation systems, Berlin, Germany
Engels G, Küster J, Groenewegen L, Heckel R (2001) A methodology for specifying and analyzing consistency of object-oriented behavioral models. In: Gruhn V (ed) Proc. 8th European software engineering conference (ESEC), September 2001, pp 186–195
Finkelstein A (2000) A foolish consistency: technical challenges in consistency management. In: Ibrahim MT, Küng J, Revell N (eds) Proc. 11th international conference on database and expert systems applications (DEXA’00), London, UK, September 2000. Lecture notes in computer science, vol 1873. Springer, Berlin Heidelberg New York, pp 1–5
Fischer T, Niere J, Torunski L, Zündorf A (1998) Story diagrams: a new graph rewrite language based on the unified modeling language. In: Engels G, Rozenberg G (eds) Proc. 6th international workshop on theory and application of graph transformation (TAGT), Paderborn, Germany, November 1998. Lecture notes in computer science, vol 1764. Springer, Berlin Heidelberg New York, pp 296–309
Gamma E, Helm R, Johnson R, Vlissides J (1995) Design patterns: elements of reusable object oriented software. Addison-Wesley, Reading, MA
Ghezzi C, Nuseibeh B (1998) Special issue on managing inconsistency in software development (1). IEEE Trans Softw Eng 24(11):906–1001
Ghezzi C, Nuseibeh B (1999) Special issue on managing inconsistency in software development (2). IEEE Trans Softw Eng 25(11):782–869
Habel A, Heckel R, Taenzer G (1996) Graph grammars with negative application conditions. Fund Inf 26(3,4):287–313
Hirsch M, Giese H (2003) Towards the incremental model checking of complex realtime UML models. In: Proc. Fujaba Days 2003, Kassel, Germany, October
Jahnke J (1999) Management of uncertainty and inconsistency in database reengineering processes. PhD thesis, University of Paderborn, Paderborn, Germany, September
Jahnke J, Schäfer W, Wadsack J, Zündorf A (2002) Supporting iterations in exploratory database reengineering processes. J Sci Comput Programm 45(2-3):99–136
Java Community Process (2002) JSR 040: Java Metadata Interface (JMI) Specification, June 2002
Jin D, Cordy J, Dean T (2002) Where’s the schema? A taxonomy of patterns for software exchange. In: Proc. 10th international workshop on program comprehension (IWPC), Paris, June 2002
Kazman R, Woods S, Carrière SJ (1998) Requirements for integrating software architecture and reengineering models: CORUM II. In: Proc. working conference on reverse engineering (WCRE’98), Honolulu, HI, October, pp 154–163
Köhler H, Nickel U, Niere J, Zündorf A (2000) Integrating UML diagrams for production control systems. In: Proc. 22nd international conference on software engineering (ICSE), Limerick, Ireland. ACM Press, New York, pp 241–251
Lefering M (1994) Software document integration using graph grammar specifications. In: Proc. 6th international conference on computing and information. J Comput Inf 1(1):1222–1243
Nagl M (ed) (1996) The IPSEN approach. Lecture notes in computer science, vol 1170. Springer, Berlin Heidelberg New York
Nickel U, Schäfer W, Zündorf A (2003) Integrative specification of distributed production control systems for flexible automated manufacturing. In: Nagl M, Westfechtel B (eds) DFG Workshop: Modelle, Werkzeuge und Infrastrukturen zur Unterstützung von Entwicklungsprozessen, pp 179–195
Nuseibeh B, Easterbrook S, Russo A (2000) Leveraging inconsistency in software development. IEEE Comput 33(4):24–29
Object International () Together Control Center, the Together case tool. http://www.togethersoft.com [last accessed October 2004]
OMG (2002) Unified Modeling Language Specification version 1.5. Needham, MA
Rational Rose. the Rational Rose case tool. http://www.rational.com [last accessed October 2004]
Rozenberg G (ed) (1999) Handbook of graph grammars and computing by graph transformation, vol 1. World Scientific, Singapore
Schürr A (1994) Specification of graph translators with triple graph grammars. In: Proc. 20th international workshop on graph-theoretic concepts in computer science. Herrsching, Germany. Springer, Berlin Heidelberg New York
Wagner R (2001) Realisierung eines diagrammübergreifenden Konsistenzmanagement-Systems für UML-Spezifikationen. Master’s thesis, University of Paderborn, Department of Mathematics and Computer Science, Paderborn, Germany, November
Wagner R, Giese H, Nickel U (2003) A plug-in for flexible and incremental consistency management. In: Proc. international conference on the Unified Modeling Language 2003 (Workshop 7: Consistency problems in UML-based software development), San Francisco, October
Waldo J (1999) The Jini architecture for network-centric computing. Commun ACM 42(7):76–82
Woods S, O’Brian L, Lin T, Gallagher K, Quilici A (1998) An architecture for interoperable program understanding tools. In: Proc. 6th international workshop on program comprehension (IWPC), Ischia, Italy, July 1998, pp 54–63
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Burmester, S., Giese, H., Niere, J. et al. Tool integration at the meta-model level: the Fujaba approach. Int J Softw Tools Technol Transfer 6, 203–218 (2004). https://doi.org/10.1007/s10009-004-0155-8
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-004-0155-8