Publications of the University of Bremen Database Systems Group

[Büttner and Kuhlmann, 2009]
Fabian Büttner and Mirco Kuhlmann. Shortcomings of the Embedding of OCL into QVT ImperativeOCL. In Michel R.V. Chaudron, editor, Workshops and Symposia at 11th Int. Conf. Model Driven Engineering Languages and Systems (MODELS'2008), pages 263-272. Springer, Berlin, LNCS 5421, 2009.
MOF QVT introduces ImperativeOCL as an imperative language for operational descriptions of model transformations (QVT operational mappings). ImperativeOCL extends conventional OCL by expressions with side-effects. A couple of semantical problems arise from the way OCL is embedded into ImperativeOCL - imperative expressions are modelled as a subtype of OCL expressions. This paper points out these semantical problems and proposes a change to the operational mappings language of QVT that resolves these problems, following an approach that reuses OCL by composition rather than by inheritance in the abstract syntax of ImperativeOCL. The proposed change reduces the complexity of the imperative language, removes undefinedness, and leaves OCL conformant to its original definition.
(10 pages, gzipped PostScript: 550kb via HTTP, FTP, uncompressed PostScript: 10798kb via HTTP, FTP)


[Cabot et al., 2009]
Jordi Cabot, Martin Gogolla, and Pieter Van Gorp. Eighth International Workshop on OCL Concepts and Tools. In Michel R.V. Chaudron, editor, Workshops and Symposia at 11th Int. Conf. Model Driven Engineering Languages and Systems (MODELS'2008), pages 257-262. Springer, Berlin, LNCS 5421, 2009.
This paper reports on the 8th OCL workshop held at the MODELS conference in 2008. The workshop focussed on how to evaluate, compare and select the right OCL tools for a given purpose and how to deal with the expressiveness and complexity of OCL. The workshop included sessions with paper presentations as well as a special tool demo session.
(6 pages, gzipped PostScript: 118kb via HTTP, FTP, uncompressed PostScript: 286kb via HTTP, FTP)


[Dang and Gogolla, 2009a]
Duc-Hanh Dang and Martin Gogolla. On Integrating OCL and Triple Graph Grammars. In Michel R.V. Chaudron, editor, Workshops and Symposia at 11th Int. Conf. Model Driven Engineering Languages and Systems (MODELS'2008), pages 124-137. LNCS 5421, Springer, Berlin, 2009.
Triple Graph Grammars (TGGs) tend to be a promising approach for explaining relationships between models in general, and model co-evolution and model consistency within model-driven development in particular. Declarative TGG descriptions can be translated into operational scenarios for model integration, model synchronization, and model transformation. To realize such scenarios, restrictions formulated with the Object Constraint Language (OCL) are an important factor. How to integrate TGGs and OCL is a topic of ongoing research activities. There are strong similarities between the result of such an integration and the Queries, Views and Transformations (QVT) standard of the Object Management Group (OMG). We propose a language for this integration: One part of this language has a one-one mapping to TGGs and the remaining part covers OCL concepts. The language is realized in our tool UML-based Specification Environment (USE) by taking two views on operations derived from TGG rules: Declarative OCL pre- and postconditions are employed as operation contracts, and imperative command sequences are taken as an operational realization. USE offers full OCL support for restricting models and metamodels with invariants, for checking pre- and postconditions of operations as well as for validating and animating transformation operations. Our approach covers a complete realization of TGGs incorporating OCL within our tool USE.
(13 pages, gzipped PostScript: 5555kb via HTTP, FTP, uncompressed PostScript: 21481kb via HTTP, FTP)


[Dang and Gogolla, 2009b]
Duc-Hanh Dang and Martin Gogolla. Precise Model-Driven Transformations Based on Graphs and Metamodels. In Dang Van Hung and Padmanabhan Krishnan, editors, Proc. 7th IEEE Int. Conf. Software Engineering and Formal Methods (SEFM 2009). IEEE, 2009.
Presenting precisely models and supporting automatic manipulation of models are at the heart of model-centric software development. A formal foundation for these tasks is a necessity as well as a challenge. We present a model-driven approach based on the integration of two light-weight formal methods, the Object Constraint Language (OCL) and Triple Graph Grammars (TGGs). OCL together with metamodeling allows us to present precisely models. With TGGs we can carry out model manipulations, especially model transformations. We focus on explaining the tool which realizes our approach. This tool is developed as an extension of the UML-based Specification Environment (USE), which offers full OCL support. A case study showing the transformation between statecharts and extended hierarchical automata explains our approach.
(10 pages, gzipped PostScript: 497kb via HTTP, FTP, uncompressed PostScript: 2639kb via HTTP, FTP)


[France and Gogolla, 2009]
Robert France and Martin Gogolla. Educators' Symposium at MODELS 2009. In Andy Schürr and Bran Selic, editors, Proc. 11th Int. Conf. Model Driven Engineering Languages and Systems (MoDELS'2008), pages 753-754. Springer, Berlin, LNCS 5795, 2009.
The Educator's Symposium at the MODELS conference, the premier conference devoted to the topic of model-driven engineering of software-based systems, is intended as a forum in which educators and trainers can meet to discuss pedagogy, use of technology in the classroom, and share their experience pertaining to teaching modeling techniques and model-driven development.
(2 pages, gzipped PostScript: 33kb via HTTP, FTP, uncompressed PostScript: 76kb via HTTP, FTP)


[Gogolla et al., 2009]
Martin Gogolla, Mirco Kuhlmann, and Lars Hamann. Consistency, Independence and Consequences in UML and OCL Models. In Catherine Dubois, editor, Proc. 3rd Int. Conf. Test and Proof (TAP'2009), pages 90-104. Springer, Berlin, LNCS 5668, 2009.
Properties in UML models are frequently formulated as OCL invariants or OCL pre- and postconditions. The UML-based Specification Environment (USE) supports validation and to a certain degree verification of such properties. USE allows the developer to prove the consistency and independence of invariants by building automatically generated test cases. USE also assists the developer in checking consequences and making deductions from invariants by automatically constructing a set of test cases in form of model scenarios. Suspected deductions are either falsified by a counter test case or are shown to be valid in a fixed finite search space.
(16 pages, gzipped PostScript: 206kb via HTTP, FTP, uncompressed PostScript: 2441kb via HTTP, FTP)


[Kuske et al., 2009]
Sabine Kuske, Martin Gogolla, Hans-Jorg Kreowski, and Paul Ziemann. Towards an Integrated Graph-Based Semantics for UML. Journal on Software and System Modeling, 8(3):403-422, 2009.
This paper shows how a central part of the Unified Modeling Language UML can be integrated into a single visual semanticmodel. It discusses UML models composed of class, object, state, sequence and collaboration diagrams and presents an integrated semantics of these models. As formal basis the theoretically well-founded area of graph transformation is employed which supports a visual and rule-based transformation of UML model states. For the translation of a UML model into a graph transformation system the operations in class diagrams and the transitions in state diagrams are associatedwith graph transformation rules that are then combined into one system in order to obtain a single coherent semantic description. Operation calls in sequence and collaboration diagrams can be associated with applications of graph transformation rules in the constructed graph transformation system so that valid sequence and collaboration diagrams correspond to derivations, i.e., to sequences of graph transformation rule applications. The main aim of this paper is to provide a formal framework that supports visual simulation of integrated UML specifications in which system states and state changes are modeled in a straighforward way.
(19 pages, gzipped PostScript: 6533kb via HTTP, FTP, uncompressed PostScript: 10475kb via HTTP, FTP)


[Akehurst et al., 2008]
Dave Akehurst, Martin Gogolla, and Steffen Zschaler, editors. Proc. OCL4ALL - Modelling Systems with OCL, http://eceasst.cs.tu-berlin.de/index.php/eceasst/issue/archive, 2008. Electronic Communications of the EASST, Vol. 9. Satellite Events at the MoDELS'2007 Conference.
The requirements that the modelling community wants to see supported by OCL now go far beyond its initial requirements. When OCL was conceived it was designed as a language for supporting precise modelling. The advent of the MDA (Model Driven Architecture) vision and the rapid acceptance of MDE (Model Driven Engineering) approaches emphasize new application domains (like Domain Specific Languages or Semantic Web). This increase in new modelling languages causes a need for new OCL-like languages for systems modelling, frequently developed as extensions to the original. As this year's special focus, the OCL workshop recognised that OCL is used as a basis for many text-based navigation languages. The workshop brought together the community that defines these extensions in order to consolidate the experiences, successes and failures involved in doing so. The workshop discussed the potential for redesigning or at least restructuring the OCL standard definition in order to better facilitate and support third-party extensions to the language. The workshop aimed to look specifically at how to apply the key software engineering principles of modularity and reuse to the definition of OCL. The workshop was organized as a part of the MoDELS 2007 Conference in Nashville, Tennesee, USA. It continued the series of OCL workshops held at previous UML/MoDELS conferences in York (2000), Toronto (2001), San Francisco (2003), Lisbon (2004), Montego Bay (2005) and Genova (2006). This EC-EASST volume contains improved papers of the papers already published on-line. The workshop organizers are grateful to authors for their effort to polish their papers. Last but not least, we are grateful to the members of the Program Committee, the additional referees, all participants of the workshop and to the EC-EASST editors for their support.

[Büttner et al., 2008]
Fabian Büttner, Mirco Kuhlmann, Martin Gogolla, Jens Dietrich, Frank Steimke, Andre Pankratz, Alina Stosiek, and Alexander Salomon. MDA Employed in a Joint eGovernment Strategy: An Experience Report. In Terry Bailey, editor, Proc. 3rd ECMDA Workshop ``From Code Centric To Model Centric Software Engineering'' (2008), http://www.esi.es/modelplex/c2m/program.php, 2008. European Software Institute.
DOL (Deutschland OnLine, Germany online) is a joint eGovernment strategy in Germany. Its objectives include the development of standards for electronic data exchange between public authorities. To achieve this goal, DOL projects are employing UML models, profiles, and tools: A cross-project conceptual model and a profile for common core components are used to harmonize the different domain specific models, and a further DOL specific UML profile has been developed to attach data transmission details to the domain specific models. The automated creation of data exchange specifications from these platform-specific models is realised by an MDA tool developed in DOL: The XGenerator allows the validation of UML models against applied profiles by checking OCL constraints, and the XGenerator supports a flexible, MDA based generation of XML Schema definitions, DocBook based documentation, and WSDL descriptions. This paper reports on how UML profiles and formal MDA techniques have been assembled into a reusable architecture for the development of data exchange specifications.
(13 pages, gzipped PostScript: 289kb via HTTP, FTP, uncompressed PostScript: 711kb via HTTP, FTP)


[Dang, 2008]
Duc-Hanh Dang. Triple Graph Grammars and OCL for Validating System Behavior. In Hartmut Ehrig, Reiko Heckel, Grzegorz Rozenberg, and Gabriele Taentzer, editors, Proc. 4th Int. Conf. Graph Transformations (ICGT'2008). Springer, Berlin, LNCS, 2008.
We propose an approach based on the integration of Triple Graph Grammars (TGGs) and the Object Constraint Language (OCL) for checking the conformance between use case and design models.
(3 pages, gzipped PostScript: 52kb via HTTP, FTP, uncompressed PostScript: 106kb via HTTP, FTP)


[Gogolla, 2008a]
Martin Gogolla. On Horizontal and Vertical Relationships between Models. In Uwe Asmann, Jean Bézivin, Richard Paige, Bernhard Rumpe, and Douglas C. Schmidt, editors, Perspectives Workshop: Model Engineering of Complex Systems (MECS). IBFI, Schloss Dagstuhl, Germany, 2008. Dagstuhl Seminar Proceedings 08331. 4 pages.
Detecting, modeling and managing relationships between models are central tasks within model-driven engineering. By taking a simple view on software development, we distinguish in a vertical dimension between domain-specific models, core models, and executable models. A typical example for a vertical relationship is the refinement relationship beween a core model and an executable model. In the horizontal dimension, there may be several so-called property models which have the task to validate or verify particular properties of the core model. Software development coincides in our view with model development, and therefore finding the right models and their relationships is a crucial task.
(4 pages, gzipped PostScript: 107kb via HTTP, FTP, uncompressed PostScript: 1544kb via HTTP, FTP)


[Gogolla, 2008b]
Martin Gogolla. Teaching Touchy Transformations. In Michal Smialek, editor, MODELS Educators' Symposium (EDUSYMP'2008), pages 13-25. Warsaw University, ISBN 83-916444-8-0, 2008.
This paper reports on a teaching unit on model development and model transformation. One example model is first developed and considered as the source of various possible transformations. These transformations are explained implicitly afterwards by showing the different target models obtained by the transformations. The source model and the target models each emphasize a particular aspect, and an appropriate teaching method is chosen in order to communicate central ideas in a well-understandable way. The chosen teaching methods stress active student participation in the development of models and transformations.
(13 pages, gzipped PostScript: 167kb via HTTP, FTP, uncompressed PostScript: 2235kb via HTTP, FTP)


[Gogolla et al., 2008a]
Martin Gogolla, Fabian Büttner, and Duc-Hanh Dang. From Graph Transformation to OCL using USE. In Andy Schürr, Manfred Nagl, and Albert Zündorf, editors, Proc. 3rd Int. Workshop Applications of Graph Transformation with Industrial Relevance (AGTIVE '07), pages 585-586. Springer, Berlin, LNCS 5088, 2008.
With the tool USE, UML class diagrams with additional OCL constraints can be validated and properties can be formally checked. Constraints may be class invariants and operation pre- and postconditions. USE builds system states with object diagrams and expresses system evolution with operations employing basic state manipulations by creating and destroying objects (nodes) and links (edges) and by modifying attributes. A graph transformation system is expressed in USE by modeling the working graph with an object diagram and by expressing the graph transformation rules with operations modifying the working graph. These operations encapsulate an executable sequence of basic state manipulations and are additionally characterized by pre- and postconditions in which application conditions of the graph transformation rules can be expressed. The graph transformation rules are formulated in a special language permitting to describe left and right hand side of rules as well as their application conditions. This language is automatically translated into USE command sequences and OCL pre- and postconditions. The rules may be executed interactively through operation calls. The current working graph and its properties may be inspected on a graphical user interface and through evaluation of OCL expressions, e.g., for determining the rule redexes in the current working graph. Additionally, OCL invariants may be used to restrict the permitted working graphs.
(2 pages, gzipped PostScript: 104kb via HTTP, FTP, uncompressed PostScript: 1693kb via HTTP, FTP)


[Gogolla et al., 2008b]
Martin Gogolla, Fabian Büttner, and Mirco Kuhlmann. System Modeling with USE (UML-based Specification Environment). Genie Logiciel (French Software Engineering Journal), 85:57-58, 2008. ISSN 0295-6322.
The Unified Modeling Language (UML) is accepted today as an important standard for developing software. UML tools however provide little support for validating and checking models in early development phases. There is also nearly no substantial support for the Object Constraint Language (OCL). Therefore, our group works on an approach for the validation of UML models and OCL constraints based on animation and certification. The USE tool (UML-based Specification Environment) supports analysts, designers and developers in executing UML models and checking OCL constraints and thus enables them to employ model-driven techniques for software production. Our group also applies OCL and USE in concrete projects. OCL and USE are employed in DOL, a joint eGovernment strategy in Germany. The objectives of DOL include standardisation of electronic data exchange between public agencies. DOL is employing UML models, profiles, and tools: Reusable conceptual models are provided, the UN/CEFACT profile for CoreComponents is used to ensure correct derivation of models in concrete projects, and a further UML profile (the XOEV profile) has been developed to attach data transmission details to the conceptual models. The automated creation of data exchange specifications is supported by the MDA tool XGenerator: It allows the validation of UML models against their applied profiles using OCL constraints, and it supports a flexible, MDA-based generation of XML Schema definitions, DocBook-based documentation, and WSDL descriptions.
(3 pages, gzipped PostScript: 175kb via HTTP, FTP, uncompressed PostScript: 528kb via HTTP, FTP)


[Gogolla et al., 2008c]
Martin Gogolla, Mirco Kuhlmann, and Fabian Büttner. A Benchmark for OCL Engine Accuracy, Determinateness, and Efficiency. In Krzysztof Czarnecki, editor, Proc. 11th Int. Conf. Model Driven Engineering Languages and Systems (MoDELS'2008), pages 446-459. LNCS 5301, Springer, Berlin, 2008.
The Object Constraint Language (OCL) is a central element in modeling and transformation languages like UML, MOF, and QVT. Consequently approaches for MDE (Model-Driven Engineering) depend on OCL. However, OCL is present not only in these areas influenced by the OMG but also in the Eclipse Modeling Framework (EMF). Thus the quality of OCL and its realization in tools seems to be crucial for the success of model-driven development. Surprisingly, up to now a benchmark for OCL to measure quality properties has not been proposed. This paper puts forward in the first part the concepts of a comprehensive OCL benchmark. Our benchmark covers (A) OCL engine accuracy (e.g., for the undefined value and the use of variables), (B) OCL engine determinateness properties (e.g., for the collection operations any and flatten), and (C) OCL engine efficiency (for data type and user-defined operations). In the second part, this paper empirically evaluates the proposed benchmark concepts by examining a number of OCL tools. The paper discusses several differences in handling particular OCL language features and underspecifications in the OCL standard.
(15 pages, gzipped PostScript: 160kb via HTTP, FTP, uncompressed PostScript: 423kb via HTTP, FTP)


[Kuhlmann and Gogolla, 2008a]
Mirco Kuhlmann and Martin Gogolla. Analyzing Semantic Properties of OCL Operations by Uncovering Interoperational Relationships. Electronic Communications of the EASST, http://eceasst.cs.tu-berlin.de/index.php/eceasst, 9, 2008. UML/MoDELS Workshop on OCL (OCL4ALL'2007), 17 Pages.
The OCL (Object Constraint Language) as part of the UML (Unified Modeling Language) is a rich language with different collection kinds (sets, multi-sets, sequences) and a large variety of operations defined thereon. Without negating the strong correlation between both fields we can say that these operations have their origin partly in logic (like the operations forAll and exists) and partly in computer science, in particular database systems (like the operation select). Some of these operations may be expressed in terms of other operations. This paper presents a systematic study of relationships which hold between OCL features like the mentioned operations. Apart from presenting the relationships between operations in a conceptual way, the relationships are described by a formal metamodel allowing systematic and computer supported access to the operation relationships by querying an underlying formal description.
(18 pages, gzipped PostScript: 744kb via HTTP, FTP, uncompressed PostScript: 4735kb via HTTP, FTP)


[Kuhlmann and Gogolla, 2008b]
Mirco Kuhlmann and Martin Gogolla. Modeling and Validating Mondex Scenarios Described in UML and OCL with USE. Formal Aspects of Computing, 20(1):79-100, 2008.
This paper describes the Mondex case study with UML class diagrams and restricting OCL constraints. The constraints have been formulated either as OCL class invariants or as OCL pre- and postconditions. The proposed two models include UML class diagrams and OCL constraints which have been checked by the UML and OCL tool USE (UML-based Specification Environment). USE allows validation of a model by testing it with scenarios. The Mondex case study has been validated by positive and negative test cases. The test cases allow the validity of the various constraints to be traced and checked. Validation results are presented as textual protocols or as UML sequence diagrams where starting, intermediate, and resulting system states are represented by UML object diagrams. UML sequence diagrams, UML object diagrams, and textual protocols are shown with varying degrees of detail for the attributes, constraints, and executed commands.
(25 pages, gzipped PostScript: 726kb via HTTP, FTP, uncompressed PostScript: 28464kb via HTTP, FTP)


[Mustafa et al., 2008]
Tanveer Mustafa, Karsten Sohr, Duc-Hanh Dang, Michael Drouineaud, and Stefan Kowski. Implementing Advanced RBAC Administration Functionality with USE. Electronic Communications of the EASST, http://eceasst.cs.tu-berlin.de/index.php/eceasst, 15, 2008. MoDELS Workshop on OCL (OCL Concepts and Tools 2008), 19 Pages.
Role-based access control (RBAC) is a powerful means for laying out and developing higher-level organizational policies such as separation of duty, and for simplifying the security management process. One of the important aspects of RBAC is authorization constraints that express such organizational policies. While RBAC has generated a great interest in the security community, organizations still seek a flexible and effective approach to impose role-based authorization constraints in their security-critical applications. In particular, today often only basic RBAC concepts have found their way into commercial RBAC products; specifically, authorization constraints are not widely supported. In this paper, we present an RBAC administration tool that can enforce certain kinds of role-based authorization constraints such as separation of duty constraints. The authorization constraint functionality is based upon the OCL validation tool USE. We also describe our practical experience that we gained on integrating OCL functionality into a prototype of an RBAC administration tool that shall be extended to a product in the future.
(19 pages, gzipped PostScript: 790kb via HTTP, FTP, uncompressed PostScript: 1980kb via HTTP, FTP)


[Sohr et al., 2008]
Karsten Sohr, Michael Drouineaud, Gail-Joon Ahn, and Martin Gogolla. Analysing and Managing Role-Based Access Control Policies. IEEE Transactions on Knowledge and Data Engineering, 2008. Published online 13 March 2008. DOI 10.1109/TKDE.2008.28.
Today more and more security-relevant data is stored on computer systems; security-critical business processes are mapped to their digital counterparts. This situation applies to various domains such as health care industry, digital government, and financial service institutes requiring that different security requirements must be fulfilled. Authorisation constraints can help the policy architect design and express higher-level organisational rules. Although the importance of authorisation constraints has been addressed in the literature, there does not exist a systematic way to verify and validate authorisation constraints. In this paper, we specify both non-temporal and history-based authorisation constraints in the Object Constraint Language (OCL) and first-order linear temporal logic (LTL). Based upon these specifications, we attempt to formally verify role-based access control policies with the help of a theorem prover and to validate policies with the USE system, a validation tool for OCL constraints. We also describe an authorisation engine, which supports the enforcement of authorisation constraints.
(14 pages, gzipped PostScript: 5437kb via HTTP, FTP, uncompressed PostScript: 24166kb via HTTP, FTP)


[Varro et al., 2008]
Daniel Varro, Mark Asztalos, Denes Bisztray, Artur Boronat, Duc-Hanh Dang, Rubino Geiss, Joel Greenyer, Pieter Van Gorp, Ole Kniemeyer, Anantha Narayanan, Edgars Rencis, and Erhard Weinell. Transformation of UML Models to CSP: A Case Study for Graph Transformation Tools. In Andy Schürr, Manfred Nagl, and Albert Zündorf, editors, Proc. 3rd Int. Workshop Applications of Graph Transformation with Industrial Relevance (AGTIVE '07). Springer, Berlin, LNCS 5088, 2008.
Graph transformation provides an intuitive mechanism for capturing model transformations. In the current paper, we investigate and compare various graph transformation tools using a compact practical model transformation case study carried out as part of the AGTIVE 2007 Tool Contest. The aim of this case study is to generate formal CSP processes from high-level UML activity diagrams, which enables to carry out mathematical analysis of the system under design.
(26 pages, gzipped PostScript: 1011kb via HTTP, FTP, uncompressed PostScript: 17896kb via HTTP, FTP)


[Akehurst et al., 2007]
Dave Akehurst, Martin Gogolla, and Steffen Zschaler. OCL4ALL - Modelling Systems with OCL. In Holger Giese, editor, Satellite Events at the MoDELS'2007 Conference, pages 176-181. Springer, Berlin, LNCS 5002, 2007.
This year's OCL workshop at the MODELS conference looked out to usages of OCL outside the direct context of UML or beyond the capabilities of standard OCL. It was a very interesting and successful workshop, which apart from the presentation of 10 papers a lively discussion on various topics surround current usage of OCL was held. Six main topics recurred throughout the discussions: (1) Means and uses of transformation to other languages, (2) Support for side-effects and executability, (3) Continuing need for OCL, (4) Providing extensions to the standard, (5) Platform independence of the language, (6) Formality of the language. This summary report presents the results of the workshop and the discussions.
(6 pages, gzipped PostScript: 79kb via HTTP, FTP, uncompressed PostScript: 157kb via HTTP, FTP)


[Dang, 2007]
Duc-Hanh Dang. Validation of System Behavior from an Integrated Semantics of Use Case and Design Models. In Claudia Pons, editor, Proc. Doctoral Symposium ACM/IEEE 10th Int. Conf. Model-Driven Engineering Languages and Systems , http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/, 2007. CEUR Workshop Proceedings, Vol. 262. 5 pages.
This paper summarizes an approach how to specify use cases and how to solve the problem of validating the conformance between the use case model and the design model. An integrated semantics of the two models is proposed. We employ UML- and OCL-based techniques as well as ideas from graph transformation. This research contributes to model transformation within the area of Model Driven Development (MDD).
(5 pages, gzipped PostScript: 86kb via HTTP, FTP, uncompressed PostScript: 181kb via HTTP, FTP)


[Gogolla, 2007]
Martin Gogolla. Model Development in the UML-based Specification Environment (USE). In Ed Brinksma, David Harel, Angelika Mader, Perdita Stevens, and Roel Wieringa, editors, Methods for Modelling Software Systems (MMOSS). IBFI, Schloss Dagstuhl, Germany, 2007. Dagstuhl Seminar Proceedings 06351. 3 pages.
The tool USE (UML-based Specification Environment) supports analysts, designers, and developers in executing UML models and checking OCL constraints and thus enables them to employ model-driven techniques for software production. USE has been developed since 1998 at the University of Bremen. This paper will shortly discuss to what extent and how USE relates to the selected questions and topics (like model quality or modelling method) raised for this seminar.
(3 pages, gzipped PostScript: 60kb via HTTP, FTP, uncompressed PostScript: 122kb via HTTP, FTP)


[Gogolla et al., 2007]
Martin Gogolla, Fabian Büttner, and Mark Richters. USE: A UML-Based Specification Environment for Validating UML and OCL. Science of Computer Programming, 69:27-34, 2007.
The Unified Modeling Language (UML) is accepted today as an important standard for developing software. UML tools however provide little support for validating and checking models in early development phases. There is also no substantial support for the Object Constraint Language (OCL). We present an approach for the validation of UML models and OCL constraints based on animation and certification. The USE tool (UML-based Specification Environment) supports analysts, designers and developers in executing UML models and checking OCL constraints and thus enables them to employ model-driven techniques for software production.
(12 pages, gzipped PostScript: 196kb via HTTP, FTP, uncompressed PostScript: 3118kb via HTTP, FTP)


[Bezivin et al., 2006]
Jean Bezivin, Fabian Büttner, Martin Gogolla, Frederic Jouault, Ivan Kurtev, and Arne Lindow. Model Transformations? Transformation Models! In Oscar Nierstrasz, Jon Whittle, David Harel, and Gianna Reggio, editors, Proc. 9th Int. Conf. Model Driven Engineering Languages and Systems (MoDELS'2006). LNCS 4199, Springer, Berlin, 2006.
Much of the current work on model transformations seems essentially operational and executable in nature. Executable descriptions are necessary from the point of view of implementation. But from a conceptual point of view, transformations can also be viewed as descriptive models by stating only the properties a transformation has to fulfill and by omitting execution details. This contribution discusses the view that model transformations can be abstracted as being transformation models. As a simple example for a transformation model, the well-known transformation from the Entity-Relationship model to the Relational model is shown. A transformation model in this contribution is nothing more than an ordinary, simple model, i.e., a UML/MOF class diagram together with OCL constraints. A transformation model may transport syntax and semantics of the described domain. The contribution thus covers two views on transformations: An operational model transformation view and a descriptive transformation model view.
(15 pages, gzipped PostScript: 330kb via HTTP, FTP, uncompressed PostScript: 7278kb via HTTP, FTP)


[Büttner and Bauerdick, 2006]
Fabian Büttner and Hanna Bauerdick. Realizing UML Model Transformations with USE. In Dan Chiorean, Birgit Demuth, Martin Gogolla, and Jos Warmer, editors, UML/MoDELS Workshop on OCL (OCLApps'2006), pages 96-110. Technical University of Dresden, Technical Report TUD-FI06, 2006.
The USE (UML-based Specification Environment) tool has been successfully applied for model validation in the past. In our current work, we are enriching the USE specification language with imperative elements. We employ this extension as an assembler to realize UML model (class diagram) transformations with USE in a flexible way: UML transformations are described using a custom abstract language based on object diagram-like patterns. These descriptions are automatically translated into the imperative USE extensions. Our approach aims to provide a flexible instrument to experiment with different transformations and transformation formalisms.
(16 pages, gzipped PostScript: 131kb via HTTP, FTP, uncompressed PostScript: 421kb via HTTP, FTP)


[Büttner and Gogolla, 2006]
Fabian Büttner and Martin Gogolla. Realizing Graph Transformations by Pre- and Postconditions and Command Sequences. In Andrea Corradini, Hartmut Ehrig, Ugo Montanari, Leila Ribeiro, and Gregorz Rozenberg, editors, Proc. 3rd Int. Conf. Graph Transformations (ICGT'2006), pages 398-412. LNCS 4178, Springer, Berlin, 2006.
This paper studies two realizations of graph transformations which are based on a UML class diagram. The first realization achieves a representation in terms of descriptive pre- and postconditions. The second one yields an operationally executable command sequence in terms of basic commands for object and link creation, attribute modification, and object and link destruction. Our aim for realizing graph transformations in terms of target languages offering different views, i.e., descriptive or operational, is to take advantage of both views and to utilize the benefits which both views provide.
(15 pages, gzipped PostScript: 200kb via HTTP, FTP, uncompressed PostScript: 2004kb via HTTP, FTP)


[Chiorean et al., 2006a]
Dan Chiorean, Birgit Demuth, Martin Gogolla, and Jos Warmer. OCL for (Meta-)Models in Multiple Application Domains. In Thomas Kühne, editor, Satellite Events at the MoDELS'2006 Conference, pages 152-158. Springer, Berlin, LNCS 4364, 2006.
The workshop OCLApps 2006 was organized as a part of MoDELS/UML Conference in Genova, Italy. It continues the series of five OCL (Object Constraint Language) workshops held at previous UML/MoDELS conferences between 2000-2005. Similar to its predecessors, the workshop addressed both people from academia and industry. The advent of the MDA (Model Driven Architecture) vision and the rapid acceptance of MDE (Model Driven Engineering) approaches emphasize new application domains (like Semantic Web or Domain Specific Languages) and call for new OCL functionalities. In this context, the OCLApps 2006 Workshop, was conceived as a forum enabling researchers and industry experts to present and debate how the OCL could support these new requirements.
(6 pages, gzipped PostScript: 90kb via HTTP, FTP, uncompressed PostScript: 185kb via HTTP, FTP)


[Chiorean et al., 2006b]
Dan Chiorean, Birgit Demuth, Martin Gogolla, and Jos Warmer, editors. Proc. OCL for (Meta-)Models in Multiple Application Domains, http://eceasst.cs.tu-berlin.de/index.php/eceasst/issue/archive, 2006. Electronic Communications of the EASST, Vol. 5. Satellite Events at the MoDELS'2006 Conference.
Conceived as a formalism meant to support unambiguous and detailed modeling using UML (Unified Modeling Language), OCL (Object Constraint Language) needs adaptation to changes expressed in the modeling community. The requirements that the modelers want to see supported today by OCL go far beyond its initial requirements. The advent of the MDA (Model Driven Architecture) vision and the rapid acceptance of MDE (Model Driven Engineering) approaches emphasize new application domains (like Semantic Web or Domain Specific Languages) and call for new OCL functionalities. Apart from the requirements asked by application domains, technologies, visions and paradigms used in modeling, the formalisms and techniques currently used have to support development of large scale applications. Therefore, efficiency represents another important feature that tools supporting OCL must provide. The OCL is required to ensure a fine balance between the use of language in specifying models realized in early life-cycle phases and the rigor asked by the strong relationship with formal languages. Fixing ambiguities reported from the OCL specification without affecting the above mentioned balance is also important. Today, promoting OCL needs a conjoint support from both the research community and the industry. The main target of the OCLApps 2006 Workshop was to organize a debate forum joining people from research and industry able to present an updated state of the art in this domain, to contribute to the OCL dissemination and use. The workshop was organized as a part of MoDELS/UML 2006 Conference in Genova - Italy, continuing the series of OCL workshops held at previous UML/MoDELS conferences in: York (2000), Toronto (2001), San Francisco (2003), Lisbon (2004) and Montego Bay (2005).

[Hölscher et al., 2006]
Karsten Hölscher, Paul Ziemann, and Martin Gogolla. On Translating UML Models into Graph Transformation Systems. Journal of Visual Languages and Computing, 17(1):78-105, 2006.
In this paper we present a concept of a rigorous approach that provides a formal semantics for a fundamental subset of UML. This semantics is derived by translating a given UML model into a graph transformation system, allowing modelers to actually execute their UML model. The graph transformation system comprises graph transformation rules and a working graph which represents the current state of the modeled system. In order to support UML models which use OCL, we introduce a specific graph transformation approach that incorporates full OCL in the common UML fashion. The considered UML subset is defined by means of a metamodel similar to the UML 1.5 metamodel. The concept of a system state that represents the state of the system at a specific point in time during execution is likewise introduced by means of a metamodel. The simulated system run is performed by applying graph transformation rules on the working graph. The approach has been implemented in a research prototype which allows the modeler to execute the specified model and to validate the basic aspects of the model in an early software development phase.
(30 pages, gzipped PostScript: 528kb via HTTP, FTP, uncompressed PostScript: 4842kb via HTTP, FTP)


[Mwatawala et al., 2006]
Maulid W. Mwatawala, Arne Lindow, Martin Gogolla, and Marc De Meyer. Employing the Unified Modeling Language (UML) and Relational Modeling Concepts for the Development of a Schema for Fruit Flies. In Eyas El-Qawasmeh, editor, Proc. 4th Int. Multiconference on Computer Science and Information Technology (CSIT'2006). Applied Science University (ASU), Amman, Jordan, 2006.
This paper is about the analysis, conceptual design, and implementation of a fruit fly database containing information about fruit flies of Morogoro Tanzania, their description, host range, infestation levels in different fruits and the proposed management techniques. The analysis and design of the database is described with Unified Modeling Language, Entity Relationship diagrams, Extended Entity Relationship diagrams and tabular views of relational model. So this paper is an example of a practical and useful application of Information and Communication Technology in solving a pest problem in a developing country, whose economy is largely dependent on agriculture.
(12 pages, gzipped PostScript: 482kb via HTTP, FTP, uncompressed PostScript: 2505kb via HTTP, FTP)


[Vidacs et al., 2006]
Laszlo Vidacs, Martin Gogolla, and Rudolf Ferenc. From C++ Refactorings to Graph Transformations. In Jean-Marie Favre, Reiko Heckel, and Tom Mens, editors, Proc. ICGT'2006 Workshop Software Evolution and Transformation (SETRA'2006), pages 127-141. Electronic Communications of EASST (European Association of Software Science and Technology), 2006.
In this paper, we study a metamodel for the C++ programming language. We work out refactorings on the C++ metamodel and present the essentials as graph transformations. The refactorings are demonstrated in terms of the C++ source code and the C++ target code as well. Graph transformations allow to capture refactoring details on a conceptual and easy to understand, but also very precise level. Using this approach we managed to formalize two major aspects of refactorings: the structural changes and the preconditions.
(15 pages, gzipped PostScript: 1644kb via HTTP, FTP, uncompressed PostScript: 12636kb via HTTP, FTP)


[Baar et al., 2005]
Thomas Baar, Dan Chiorean, Alexandre Correa, Martin Gogolla, Heinrich Hußmann, Octavian Patrascoiu, Peter H. Schmitt, and Jos Warmer. Tool Support for OCL and Related Formalisms - Needs and Trends. In Jean-Michel Bruel, editor, Satellite Events at the MoDELS'2005 Conference, pages 1-9. Springer, Berlin, LNCS 3844, 2005.
The recent trend in software engineering to model-centered methodologies is an excellent opportunity for OCL to become a widely used specification language. If the focus of the development activities is shifted from implementation code to more abstract models then software developers need a formalism to provide a complete, unambiguous and consistent model at a very detailed level. OCL is currently the only language that can bring this level of detail to UML models. The purpose of the workshop was to identify future challenges for OCL and to discuss how OCL and its current tool support can be improved to meet these challenges. The workshop gathered numerous experts from academia and industry to report on success stories, to formulate wishes to the next generation of OCL tools, and to identify weaknesses in the language, which make OCL sometimes cumbersome to use. The workshop could also attract numerous people whose aim was to get an overview on the state of the art of OCL tool support and on how OCL can efficiently be applied in practice.
(9 pages, gzipped PostScript: 112kb via HTTP, FTP, uncompressed PostScript: 227kb via HTTP, FTP)


[Büttner, 2005]
Fabian Büttner. Transformation-Based Structure Model Evolution. In Jean-Michel Bruel, editor, Satellite Events at the MoDELS'2005 Conference, pages 339-340. Springer, Berlin, LNCS 3844, 2005.
This paper summarizes an approach to support evolution of software models by means of a transformation catalogue. These transformations treat UML class diagram models, OCL constraints, and existing states of the models in a coherent and consistent way. By implementing the catalogue in the UML tool USE, we effectively support developers in an iterative and incremental process for model development.
(5 pages, gzipped PostScript: 19kb via HTTP, FTP, uncompressed PostScript: 67kb via HTTP, FTP)


[Büttner et al., 2005]
Fabian Büttner, Hanna Bauerdick, and Martin Gogolla. Towards Transformation of Integrity Constraints and Database States. In Danielle C. Martin, editor, Proc. Dexa'2005 Workshop Logical Aspects and Applications of Integrity Constraints (LAAIC'2005), pages 823-828. IEEE, Los Alamitos, 2005.
This paper discusses integrity constraint evolution, from two perspectives: From the perspective of changing the constraint, and from the perspective of consequently changing an existing database state. The paper concentrates on structural models provided by UML class diagrams and OCL invariant constraints. We discuss how changes in association multiplicities can be extended to further integrity constraints attached to a class diagram and how these changes interact with given database states.
(6 pages, gzipped PostScript: 57kb via HTTP, FTP, uncompressed PostScript: 190kb via HTTP, FTP)


[Czarnecki et al., 2005]
Krzysztof Czarnecki, Jean-Marie Favre, Martin Gogolla, and Tom Mens. Essentials of the 4th UML/MoDELS Workshop in Software Model Engineering (WiSME'2005). In Jean-Michel Bruel, editor, Satellite Events at the MoDELS'2005 Conference, pages 151-159. Springer, Berlin, LNCS 3844, 2005.
Model-Driven Engineering is a form of generative engineering, by which all or at least central parts of a software application are generated from models. Model Driven Engineering should be seen as an integrative approach combining existing software engineering techniques (e.g., testing and refinement) and technical spaces (e.g., 'ModelWare', 'XmlWare') that have usually been studied in separation. The goal of the workshop is to improve common understanding of these techniques across technical spaces and create bridges and increase the synergies among the spaces. This year's WiSME workshop will concentrate on two complementing themes: Bridging Technical Spaces and Model-Driven Evolution. This paper reports on a workshop held at the 8th UML/MoDELS conference. It describes motivation and aims, organisational issues, and abstracts of the accepted papers.
(9 pages, gzipped PostScript: 39kb via HTTP, FTP, uncompressed PostScript: 95kb via HTTP, FTP)


[Ermel et al., 2005]
Claudia Ermel, Karsten Hölscher, Sabine Kuske, and Paul Ziemann. Animated Simulation of Integrated UML Behavioral Models Based on Graph Transformation. In IEEE, editor, Proc. IEEE Symposium Visual Languages and Human-Centric Computing (VL/HCC'05), pages 125-133, 2005.
This paper shows how integrated UML models combining class, object, use-case, collaboration and state diagrams can be animated in a domain-specific layout. The presented approach is based on graph transformation, i.e. UML model diagrams are translated to a graph transformation system and the behavior of the integrated model is simulated by applications of graph transformation rules. For model validation, users may prefer to see the behavior of selected model aspects as scenarios presented in the layout of the application domain. We propose to integrate animation views with the model.s graph transformation system. A prototypical validation system has been implemented recently supporting the automatic translation of a UML model into a graph transformation system, and the interactive execution and simulation of the model behavior. We sketch the tool interconnection to GenGED, a visual language environment which allows to enrich graph transformation systems for model simulation by features for animation.
(9 pages, gzipped PostScript: 374kb via HTTP, FTP, uncompressed PostScript: 948kb via HTTP, FTP)


[Gogolla, 2005a]
Martin Gogolla. Exploring ER and RE Syntax and Semantics with Metamodel Object Diagrams. In Peter J. Nürnberg, editor, ACM Int. Conf. Proceeding Series (Vol. 214), Proc. Metainformatics Symposium (MIS'2005). ACM Press, New York, 2005. ACM Digital Library, 12 pages.
This paper explains how a metamodel transformation between two well-known database models work: Entity-Relationship (ER) database schemas are transformed into Relational (RE) database schemas hand in hand with the transformation of ER states into Relational states. The schemas determine the syntax of the datamodels, and the set of associated states fix the semantics of the datamodels. Often, when database models are considered, one formally only treats syntactical aspects, i.e., schemas, and handles the semantics, i.e., states, merely informally. Our approach formally handles syntax and semantics of database models and their transformation within a single, uniform framework. The approach thus precisely describes properties of the datamodels and properties of the transformation. Our metamodel transformations do not simply convert ER schemas into Relational schemas, but they respect the semantics in a formal way and they can also be used the other way round in order to transfrom Relational schemas into ER ones. This opens the approach for re-engineering as well.
(12 pages, gzipped PostScript: 223kb via HTTP, FTP, uncompressed PostScript: 1000kb via HTTP, FTP)


[Gogolla, 2005b]
Martin Gogolla. Tales of ER and RE Syntax and Semantics. In James R. Cordy, Ralf Lämmel, and Andreas Winter, editors, Transformation Techniques in Software Engineering. IBFI, Schloss Dagstuhl, Germany, 2005. Dagstuhl Seminar Proceedings 05161. 51 pages.
This paper explains how four model transformations between database models work: (1) An ER (Entity-Relationship) database schema is transformed into a collection of ER database states, (2) a RE (Relational) database schema into a collection of RE database states, (3) an ER database schema into a RE database schema, and (4) a collection of ER database states into a collection of RE database states. These four separate transformations may be viewed as a single transformation between the ER datamodel and the RE datamodel. The schemas are regarded as determining the syntax of the datamodels, and the set of associated states is regarded as being the semantics of the datamodels, because the states associate meaning with the schemas. When one usually considers database models, one formally only treats syntactical aspects, i.e., schemas, and handles the semantics merely informally. Our approach allows to formally handle syntax and semantics of database models and their transformation within a single and uniform framework. The approach thus allows to precisely describe properties of the datamodels and properties of the transformation. The method behind our approach is to divide a language into a syntax and semantics part and to describe a transformation between two languages as a direction-neutral affair. Formal properties of the languages to be transformed and formal properties of the transformation are described uniformly. Transformation properties can be properties regarding syntax and semantics. The method can be applied not only to database languages but to transformations between common computer science languages.
(51 pages, gzipped PostScript: 339kb via HTTP, FTP, uncompressed PostScript: 1582kb via HTTP, FTP)


[Gogolla et al., 2005a]
Martin Gogolla, Jörn Bohling, and Mark Richters. Validating UML and OCL Models in USE by Automatic Snapshot Generation. Journal on Software and System Modeling, 4(4):386-398, 2005.
The paper studies the testing and certification of UML and OCL models as supported by the validation tool USE. We extend the available USE features by introducing a language for defining properties of desired snapshots and by showing how such snapshots are generated. Within the approach, it is possible to treat test cases and validation cases. Test cases show that snapshots having desired properties can be constructed. Validation cases show that given properties are consequences of the original UML and OCL model. We sketch the underlying language features and indicate how to give a formal interpretation for them.
(24 pages, gzipped PostScript: 249kb via HTTP, FTP, uncompressed PostScript: 731kb via HTTP, FTP)


[Gogolla et al., 2005b]
Martin Gogolla, Jean-Marie Favre, and Fabian Büttner. On Squeezing M0, M1, M2, and M3 into a Single Object Diagram. In Thomas Baar, Dan Chiorean, Alexandre Correa, Martin Gogolla, Heinrich Hußmann, Octavian Patrascoiu, Peter H. Schmitt, and Jos Warmer, editors, Proc. MoDELS'2005 Workshop Tool Support for OCL and Related Formalisms. In: Satellite Events at MoDELS'2005 Conference. Jean-Michel Bruel (Ed.). Springer, LNCS 3844. Long Version: EPFL (Switzerland), Technical Report LGL-REPORT-2005-001, 2005.
We propose an approach for the integrated description of a metamodel and its formal relationship to its models and the model instantiations. The central idea is to use so-called layered graphs permitting to describe type graphs and instance graphs. A type graph can describe a collection of types and their relationships whereas an instance graph can represent instances belonging to the types and respecting the relationships required by the type graph. Type graphs and instance graphs are used iteratively, i.e., an instance graph on one layer can be regarded as a type graph of the next lower layer. Our approach models layered graphs with a UML class diagram, and operations and invariants are formally characterized with OCL and are validated with the USE tool. Metamodeling properties like strictness or well-typedness and features like potency can be formulated as OCL constraints and operations. We are providing easily understandable definitions for several metamodeling notions which are currently used in a loose way by modelers. Such properties and features can then be discussed on a rigorous, formal ground. This issue is also the main purpose of the paper, namely, to provide a basis for discussing metamodeling topics.
(14 pages, gzipped PostScript: 206kb via HTTP, FTP, uncompressed PostScript: 4894kb via HTTP, FTP)


[Sohr et al., 2005]
Karsten Sohr, Gail-Joon Ahn, Martin Gogolla, and Lars Migge. Specification and Validation of Authorization Constraints using UML and OCL. In Sabrina DeCapitani, Paul F. Syverson, and Dieter Gollmann, editors, Proc. 10th European Symp. Research in Computer Security (ESORICS'2005), pages 64-79. LNCS 3679, Springer, Berlin, 2005.
Authorisation constraints can help the policy architect design and express higher-level security policies for organisations such as financial institutes or governmental agencies. Although the importance of constraints has been addressed in the literature, there does not exist a systematic way to validate and test authorisation constraints. In this paper, we attempt to specify non-temporal constraints and historybased constraints in Object Constraint Language (OCL) which is a constraint specification language of Unified Modeling Language (UML) and describe how we can facilitate the USE tool to validate and test such policies. We also discuss the issues of identification of conflicting constraints and missing constraints.
(16 pages, gzipped PostScript: 791kb via HTTP, FTP, uncompressed PostScript: 6131kb via HTTP, FTP)


[Bauerdick et al., 2004]
Hanna Bauerdick, Martin Gogolla, and Fabian Gutsche. Detecting OCL Traps in the UML 2.0 Superstructure: An Experience Report. In Thomas Baar, Alfred Strohmeier, Ana Moreira, and Stephen J. Mellor, editors, Proc. 7th Int. Conf. Unified Modeling Language (UML'2004), pages 188-197. Springer, Berlin, LNCS 3273, 2004.
Currently, the OMG is developing a new version of the Unified Modeling Language (UML), UML 2.0, which involves major innovations in its metamodel. As for previous versions of the UML, the Object Constraint Language (OCL) is employed to give restrictions on the use of UML and for the formulation of additional operations. It seems that the OCL expressions in the current version of the UML 2.0 Superstructure have not been checked with a tool. In this paper we report on an experiment in checking and validating the well-formedness rules and operation definitions of the UML 2.0 Superstructure w.r.t. syntax and type checking by using our tool USE (UML-based Specification Environment). For this purpose we classify the errors detected by USE in appropriate error categories. We develop statistical information on error frequencies w.r.t. package location and error category. All errors detected by USE and their detailed description are made available in a separate EXCEL file.
(10 pages, gzipped PostScript: 52kb via HTTP, FTP, uncompressed PostScript: 131kb via HTTP, FTP)


[Bezivin et al., 2004]
Jean Bezivin, Thomas Baar, Tracy Gardner, Martin Gogolla, Reiner Hähnle, Heinrich Hußmann, Octavian Patrascoiu, Peter H. Schmitt, and Jos Warmer. OCL and Model Driven Engineering Workshop Report. In Nuno Jardim Nunes, Bran Selic, Alberto Rodrigues da Silva, and Ambrosio Toval Alvarez, editors, UML'2004 Modeling Languages and Applications. UML'2004 Satellite Activities. Revised Selected Papers, pages 67-75. Springer, Berlin, LNCS 3297, 2004.
This paper reports on a workshop held at the 7th UML conference. It describes motivation, objectives, abstracts of the presented papers, questions raised during discussion, and a workshop conclusion.
(9 pages, gzipped PostScript: 31kb via HTTP, FTP, uncompressed PostScript: 158kb via HTTP, FTP)


[Bisanz et al., 2004]
Stefan Bisanz, Paul Ziemann, and Arne Lindow. Integrated Specification, Validation and Verification with HybridUML and OCL Applied to the BART Case Study. In E. Schnieder and G. Tarnai, editors, Proc. Conf. Formal Methods for Automation and Safety in Railway and Automotive Systems (FORMS/FORMAT'2004), 2004.
This article proposes the integration of the HybridUML specification formalism and the USE approach for validation of invariant constraints and verification of system states. The benefit is an executable real-time simulation with an integrated verification/validation component, which combines the advantages of the previously separate approaches by providing an accurate, (partially) time-continuous model that can be checked for consistency between static invariants and dynamical behavior in terms of a complete UML model. The integration is illustrated by means of a train system specification -- the BART case study.
(13 pages, gzipped PostScript: 2325kb via HTTP, FTP, uncompressed PostScript: 5587kb via HTTP, FTP)


[Büttner and Gogolla, 2004a]
Fabian Büttner and Martin Gogolla. On Generalization and Overriding in UML 2.0. In Jean Bezivin, Thomas Baar, Tracy Gardner, Martin Gogolla, Reiner Hähnle, Heinrich Hußmann, Octavian Patrascoiu, Peter H. Schmitt, and Jos Warmer, editors, Proc. UML'2004 Workshop OCL and Model Driven Engineering, pages 69-69. In: UML - Modeling Languages and Applications. Nuno Jardim Nunes, Bran Selic, Alberto Rodrigues da Silva, Ambrosio Toval Alvarez (Eds). LNCS 3297, Springer Verlag. Long version: University of Kent, http://www.cs.kent.ac.uk/projects/ocl/oclmdewsuml04/, 2004.
In the upcoming Unified Modeling Language specification (UML 2.0), subclassing (i.e., generalization between classes) has a much more precise meaning with respect to overriding than it had in earlier UML versions. Although it is not expressed explicitly, UML 2.0 has a covariant overriding rule for methods, attributes, and associations. In this paper, we first precisely explain how overriding is defined in UML 2.0. We relate the UML approach to the way types are formalized in programming languages and we discuss which consequences arise when implementing UML models in programming languages. Second, weaknesses of the UML 2.0 metamodel and the textual explanations are addressed and solutions, which could be incorporated with minor efforts are proposed. Despite of these weaknesses we generally agree with the UML 2.0 way of overriding and provide supporting arguments for it.
(15 pages, gzipped PostScript: 155kb via HTTP, FTP, uncompressed PostScript: 362kb via HTTP, FTP)


[Büttner and Gogolla, 2004b]
Fabian Büttner and Martin Gogolla. Realizing UML Metamodel Transformations with AGG. In Reiko Heckel, editor, Proc. ETAPS Workshop Graph Transformation and Visual Modeling Techniques (GT-VMT'2004). Electronic Notes in Theoretical Computer Science (ENTCS), Elsevier, 2004.
In this paper, we work out equivalence transformations on the UML metamodel as concrete graph transformations implemented in the AGG tool. We consider two examples for manipulating the static structure of a UML model, namely the transformation of an association class into a ternary association and the transformation of a ternary association into three binary associations. We discuss technical details and pros and cons of the presented approach and shortly put out work into the context of the MDA.
(12 pages, gzipped PostScript: 560kb via HTTP, FTP, uncompressed PostScript: 8829kb via HTTP, FTP)


[Büttner et al., 2004]
Fabian Büttner, Oliver Radfelder, Arne Lindow, and Martin Gogolla. Digging into the Visitor Pattern. In Frank Maurer and Günther Ruhe, editors, Proc. IEEE 16th Int. Conf. Software Engineering and Knowlege Engineering (SEKE'2004). IEEE, Los Alamitos, 2004.
In this paper we present an alternative to the visitor pattern, dynamic dispatcher, that can be applied to extend existing software in a nonintrusive way, and which simulates covariant overriding of visit methods. It allows to express polymorphic operations through visitor classes in a more natural way than the original visitor pattern. Our solution dynamic dispatcher can be applied without touching existing domain classes. Therefore, it is especially useful to extend frameworks and libraries. We have implemented dynamic dispatcher as a small framework in Java and conducted performance measurements which show that the overhead should be acceptable in many real world scenarios.
(7 pages, gzipped PostScript: 48kb via HTTP, FTP, uncompressed PostScript: 168kb via HTTP, FTP)


[Gogolla, 2004a]
Martin Gogolla. (An Example for) Metamodeling Syntax and Semantics of Two Languages, their Transformation, and a Correctness Criterion. In Jean Bezivin and Reiko Heckel, editors, Proc. Dagstuhl Seminar on Language Engineering for Model-Driven Software Development. Schloss Dagstuhl Int. Conf. and Research Center for Computer Science, http://www.dagstuhl.de/04101/, 2004.
We study a metamodel for the Entity Relationship (ER) and the Relational data model. We do this by describing the syntax of the ER data model by introducing classes for ER schemata, entities, and relationships. We also describe the semantics of the ER data model by introducing classes for ER states, instances, and links. The connection between syntax and semantics is established by associations explaining that syntactical objects are interpreted by corresponding semantical objects. Analogously we do this for the Relational data model. Finally, we give a metamodel for the transformation of ER schemata into Relational database schemata. By characterizing the syntax and semantics of the languages to be transformed and also the transformation itself within the same (meta-)modeling language we are able to include equivalence criteria on the syntactical and on the semantical level for the transformation. In particular, we show that the semantical equivalence criterion requires that the ER states and the corresponding Relational states bear the same information.
(10 pages, gzipped PostScript: 134kb via HTTP, FTP, uncompressed PostScript: 877kb via HTTP, FTP)


[Gogolla, 2004b]
Martin Gogolla. Benefits and Problems of Formal Methods. In Albert Llamosi and Alfred Strohmeier, editors, Proc. 9th Int. Conf. Reliable Software Technologies Ada-Europe (RST'2004), pages 1-15. Springer, Berlin, LNCS 3063, 2004.
Formal methods for software development have been discussed for decades. This paper will try to explain when and under what circumstances formal methods and languages in general and the Object Constraint Language (OCL) in particular can be employed in a beneficial way. The success of using a formal approach is highly influenced by the expectations and pre-requisite knowledge of the developers, the role the formal support in the development process is given, and of course by the used tools.
(15 pages, gzipped PostScript: 83kb via HTTP, FTP, uncompressed PostScript: 288kb via HTTP, FTP)


[Gogolla and Ziemann, 2004]
Martin Gogolla and Paul Ziemann. Checking BART Test Scenarios with UML's Object Constraint Language. Formal Methods for Embedded Distributed Systems - How to master the complexity. Fabrice Kordon, Michel Lemoine (Eds.), Kluwer, Boston. pages 133-170, 2004.
The Object Constraint Language (OCL) is part of the Unified Modelling Language (UML). Within software engineering, UML is regarded today as an important step towards development of high-quality object-oriented systems. OCL allows to sharpen UML diagrams through invariants and pre- and postconditions. This chapter explains the functionality of the UML Specification Environment USE, which allows to validate and verify UML and OCL descriptions. The paper shows that central safety properties of the BART system can be expressed with OCL. Test cases embodying central aspects of the BART system can be formulated within the USE system. It can be shown that the safety properties are satisfied by the test cases examined.
(38 pages, gzipped PostScript: 193kb via HTTP, FTP, uncompressed PostScript: 1089kb via HTTP, FTP)


[Gogolla et al., 2004a]
Martin Gogolla, Mark Richters, Jörn Bohling, Arne Lindow, Fabian Büttner, and Paul Ziemann. Werkzeugunterstützung für die Validierung von UML- und OCL-Modellen durch automatische Snapshot-Generierung. In Bernhard Rumpe and Wolfgang Hesse, editors, Proc. Modellierung'2004, pages 281-282. Gesellschaft für Informatik, Lecture Notes in Informatics 45, 2004.
Diese Arbeit gibt einen kurzen, aktuellen Überblick zu Bremischen Aktivitäten im Bereich Werkzeugunterstützung für UML und OCL.
(2 pages, gzipped PostScript: 11kb via HTTP, FTP, uncompressed PostScript: 25kb via HTTP, FTP)


[Gogolla et al., 2004b]
Martin Gogolla, Paul Sammut, and Jon Whittle. Essentials of the 3rd UML Workshop in Software Model Engineering (WiSME'2004). In Nuno Jardim Nunes, Bran Selic, Alberto Rodrigues da Silva, and Ambrosio Toval Alvarez, editors, UML'2004 Modeling Languages and Applications. UML'2004 Satellite Activities. Revised Selected Papers, pages 43-51. Springer, Berlin, LNCS 3297, 2004.
This paper reports on a workshop held at the 7th UML conference. It describes motivation and aims, organisational issues, abstracts of the accepted papers, and questions raised during discussion.
(10 pages, gzipped PostScript: 42kb via HTTP, FTP, uncompressed PostScript: 102kb via HTTP, FTP)


[Krieg-Brückner et al., 2004]
Bernd Krieg-Brückner, Arne Lindow, Christoph Lüth, Achim Mahnke, and George Russell. Semantic Interrelation of Documents via an Ontology. In Gregor Engels and Silke Seehusen, editors, Proc. 2. Deutsche e-Learning Fachtagung Informatik (DeLFI'2004), pages 271-282. Gesellschaft für Informatik, Lecture Notes in Informatics 52, 2004.
This paper describes how to use an ontology for extensive semantic interrelation of documents in order to achieve sustainable development, i.e. continuous long-term usability of the contents. The ontology is structured via packages (corresponding to whole documents). Packages are related by import such that semantic interrelation becomes possible not only within a document but also between different documents. Coherence and consistency are enhanced by change management in a repository, including version control and configuration management. Semantic interrelation is realized by particular LaTeX commands for the declaration and definition of classes, objects and relations, and references to them, such that they can be used in standard LaTeX documents, in particular, with a new LaTeX style for educational material (slides, handouts, annotated courses, assignments, and so on).

[Lindow and Gogolla, 2004]
Arne Lindow and Martin Gogolla. Eine multimediale Erweiterung eines UML-Tools für Lehrzwecke. In Gregor Engels and Silke Seehusen, editors, Proc. 2. Deutsche e-Learning Fachtagung Informatik (DeLFI'2004), pages 393-394. Gesellschaft für Informatik, Lecture Notes in Informatics 52, 2004.
In this paper we discuss possible extensions for an UML/OCL tool so far used in the area of formal methods to expand it to an educational teaching and learning system. So we will show a way to develop USE from a well known tool for practical work in the area of formal methods into an educational multimedia teaching and learning environment, which can be used in lectures and for the creation of lecture material. We clarify, how authors could benefit of a new import-function for the standard interchange format of UML-models. We show how we think, authors of multimedia material for lectures can benefit of easy to create graphical or animated presentations of UML models or new diagram combinations. We suggest an extension for a learner model, which can help the students easily access examples of concepts of UML, which they want to learn. A new annotation mechanism for presentation is suggested and an easy to understand, very detailed visualization of the evaluation of OCL-expressions is explained.
(2 pages, gzipped PostScript: 10kb via HTTP, FTP, uncompressed PostScript: 24kb via HTTP, FTP)


[Ziemann et al., 2004a]
Paul Ziemann, Karsten Hölscher, and Martin Gogolla. Coherently Explaining UML Statechart and Collaboration Diagrams by Graph Transformations. In Arnaldo Moura and Alexandre Mota, editors, Proc. Brazilian Symposium on Formal Methods (SBMF'2004). Electronic Notes in Theoretical Computer Science (ENTCS), Elsevier, 2004.
In this paper we continue our work on the formalization and validation of UML models by means of graph transformation systems. We here concentrate on statechart and collaboration diagrams albeit our approach covers use case, class, object, and sequence diagrams as well. The statechart and collaboration diagrams describe the operations of the underlying class diagram and include OCL expressions as guards and parts of message expressions. We illustrate in detail the generation of graph transformation rules for the statechart and collaboration diagrams.
(15 pages, gzipped PostScript: 178kb via HTTP, FTP, uncompressed PostScript: 549kb via HTTP, FTP)


[Ziemann et al., 2004b]
Paul Ziemann, Karsten Hölscher, and Martin Gogolla. From UML Models to Graph Transformation Systems. In Mark Minas, editor, Proc. Workshop Visual Languages and Formal Methods (VLFM'2004). Electronic Notes in Theoretical Computer Science (ENTCS), Elsevier, 2004.
In this paper we present an approach that allows to validate properties of UML models. The approach is based on an integrated semantics for central parts of the UML. We formally cover UML use case, class, object, statechart, collaboration, and sequence diagrams. Additionally full OCL is supported in the common UML fashion. Our semantics is based on the translation of a UML model into a graph transformation system consisting of graph transformation rules and a working graph that represents the system state. By applying the rules on the working graph, the evolution of the modeled system is simulated.
(16 pages, gzipped PostScript: 267kb via HTTP, FTP, uncompressed PostScript: 808kb via HTTP, FTP)


[Bezivin and Gogolla, 2003]
Jean Bezivin and Martin Gogolla, editors. Proc. 2nd UML Workshop in Software Model Engineering (WiSME'2003). www.metamodel.com, 2003. http://www.metamodel.com/wisme-2003/.
Model Driven Architecture (MDA) is an OMG initiative that attempts to separate business functionality specification from the implementation of that functionality on specific middleware technological platforms (CORBA, C#/DotNet, Java/EJB, XML/SOAP, etc.). This new approach is intended to play a key role in the fields of information system and software engineering. The stage is thus set but the efforts to move from the present situation to the idyllic automatic generation of executable models for various platforms remains huge. We need to mobilize the creative energies of a very broad category of contributors, from tool builders to theoretical specialists in the fields of language compilers, graph rewriting, model checking, ontology engineering, etc. The workshop brings together young researchers planning to invest in this emerging new area as well as more experienced professional having previous experience in areas related to automatic code generation, transformational and generative approaches, model checking, etc.

[Gogolla and Lindow, 2003]
Martin Gogolla and Arne Lindow. Transforming Data Models with UML. In Borys Omelayenko and Michel Klein, editors, Knowledge Transformation for the Semantic Web, pages 18-33. IOS Press, Amsterdam, 2003.
This chapter studies an approach to establish a formal connection between data models, in particular between conceptual data models and implementation data models. We use metamodeling techniques based on the Meta Object Facility MOF. MOF may be regarded as a subset of the Unified Modeling Language UML. As prominent example data models, we formally describe and thereby analyze the Entity-Relationship and the Relational data model. In addition, we represent the transformation between these data models by MOF language features. Thus we describe the data models and their transformation within a single framework. All results are formally represented and validated by a MOF compliant tool. The approach presented is general enough so that it can used for other data models being important for the Semantic Web, e.g., the object-oriented data model or semi-structured data models like XML-based models.
(15 pages, gzipped PostScript: 124kb via HTTP, FTP, uncompressed PostScript: 1519kb via HTTP, FTP)


[Gogolla et al., 2003a]
Martin Gogolla, Jörn Bohling, and Mark Richters. Validation of UML and OCL Models by Automatic Snapshot Generation. In Grady Booch, Perdita Stevens, and Jonathan Whittle, editors, Proc. 6th Int. Conf. Unified Modeling Language (UML'2003), pages 265-279. Springer, Berlin, LNCS 2863, 2003.
We study the testing and certification of UML and OCL models as supported by the validation tool USE. We extend the available USE features by introducing a language for defining properties of desired snapshots and by showing how such snapshots are generated. Within the approach, it is possible to treat test cases and validation cases. Test cases show that snapshots having desired properties can be constructed. Validation cases show that given properties are consequences of the original UML and OCL model.
(15 pages, gzipped PostScript: 113kb via HTTP, FTP, uncompressed PostScript: 462kb via HTTP, FTP)


[Gogolla et al., 2003b]
Martin Gogolla, Mark Richters, and Jörn Bohling. Tool Support for Validating UML and OCL Models through Automatic Snapshot Generation. In Jarr Eloff, Andries Engelbrecht, Paula Kotze, and Mariki Eloff, editors, Proc. Annual Research Conf. South African Institute of Computer Scientists and Information Technologists on Enablement through Technology (SAICSIT'2003), pages 248-257. ACM International Conference Proceedings Series, 2003.
This paper studies tool support for the testing and certification of UML and OCL models as supported by the validation tool USE. We describe the features available in the UML/OCL tool USE and extend its features by introducing a language for defining properties of desired snapshots and by showing how such snapshots are generated. We explain the functionality offered by the USE tool. In particular, we demonstrate how the diverse windows, e.g., object diagram, class invariant, class extent, or OCL expression evaluation window, support the development process in early phases of software development.
(10 pages, gzipped PostScript: 202kb via HTTP, FTP, uncompressed PostScript: 2858kb via HTTP, FTP)


[Kollmann, 2003]
Ralf Kollmann. Design Recovery Techniques for Object-Oriented Software Systems. PhD thesis, Universität Bremen, Fachbereich Mathematik und Informatik, 2003.
Reverse engineering techniques have been applied successfully in software maintenance, reengineering, as well as traditional software engineering processes for many years. With the establishment of the UML as a standard for modeling of object-oriented software systems, many new opportunities but also challenges have opened up in the new field of UML-based reverse engineering. In this dissertation thesis, techniques for application of the UML in static design recovery as well as metric-based static software analysis are presented, with a focus on programs written in Java. To address the problem of uniquely representing aspects of existing programs in UML diagrams, a metamodel for the Java language has been developed. It serves as a foundation for a standardized metamodel-level translation scheme between Java and the UML. Based on this scheme, techniques for recovering the abstract design of a software system from the implementation model are introduced. The focus of these is on design recovery strategies for recognition of advanced UML class diagram features. When reverse engineering non-trivial software systems, the resulting amount of information is often huge. One of the central problems of UML diagrams is the tradeoff between detailed rendering and lack of space and readability: Even for programs of average size, the resulting diagrams tend to become quickly too large for comfortable viewing. In addition to metricbased analysis techniques, which help to understand the software by integrating metrics and UML diagrams, we present a metric-based approach for identification of logical substructures in a software architecture, which helps to partition the system and thus make it easier comprehensible. The techniques presented in this dissertation have been implemented in the reverse engineering tool IDEA, a system for static analysis of Java programs. IDEA supports generation of both UML class as well as activity diagrams from source code. Concerning its primary functionality, static design recovery, it is possible to recognize many of UML s advanced notational features in an interactive process. Furthermore, the calculation of metrics is supported and used both for integration in extended UML class diagrams, as well as for metric-based analyses. The approaches presented in this dissertation thesis contribute to the research field of reverse engineering, by showing novel ways to redocument and analyse object-oriented software systems using the graphical UML notation. Thereby, they help to improve a general understanding of how to apply the UML in reverse engineering and static program analysis.

[Krieg-Brückner et al., 2003]
Bernd Krieg-Brückner, Dieter Hutter, Arne Lindow, Christoph Lüth, Achim Mahnke, Erica Melis, Philipp Meier, Arnd Poetzsch-Heffter, Markus Roggenbach, George Russell, Jan-Georg Smaus, and Martin Wirsing. MultiMedia Instruction in Safe and Secure Systems. In Martin Wirsing, Dirk Pattinson, and Rolf Hennicker, editors, Proc. 16th Int. Workshop Abstract Data Types (WADT'02), pages 82-117. Springer, LNCS 2755, 2003.
The aim of the MMiSS project is the construction of a multimedia Internet-based adaptive educational system. Its content will initially cover a curriculum in the area of Safe and Secure Systems. Traditional teaching materials (slides, handouts, annotated course material, assignments, and so on) are to be converted into a new hypermedia format, integrated with tool interactions for formally developing correct software; they will be suitable for learning on campus and distance learning, as well as interactive, supervised, or cooperative self-study. To ensure sustainable development, i.e. continuous long-term usability of the contents, coherence and consistency are especially emphasised, through extensive semantic linking of teaching elements and a particular version and configuration management, based on experience in formal software development and associated support tools.
(38 pages, gzipped PostScript: 1452kb via HTTP, FTP, uncompressed PostScript: 8909kb via HTTP, FTP)


[Radfelder, 2003]
Oliver Radfelder. Dreidimensionale, interaktive und animierte Softwarevisualisierung zur Unterstützung im Softwareentwicklungsprozess. PhD thesis, Universität Bremen, Fachbereich Mathematik und Informatik, 2003.
In Kapitel 1 werden bestehende Ansätze zur Visualisierung untersucht. Dabei werden speziell dreidimensionale und animierte Techniken und Systeme beleuchtet. Weiterhin werden Taxonimien und Evaluierungen der Softwarevisualisierung untersucht, um am Ende einen Kriterienkatalog für effektive Softwarevisualisierung zu entwickeln. In Kapitel 2 wird die UML am exemplarisch im Einsatz eines Softwareentwurfs gezeigt und Kritikpunkte gesammelt und am Ende diskutiert. In Kapitel 3 wird zunächst der Einsatz dreidimensionaler und animierter Softwarevisualisierung statischer Strukturen diskutiert. Während dessen stelle ich die relevanten Teile der zu diesem Zweck entwickelte Software Uvis vor. Kapitel 4 behandelt die Visualisierung dynamischer Vorgänge ebenfalls im Kontext von Uvis. In Kapitel 5 werden die dynamische und die statische Sicht zusammengeführt, wodurch es möglich wird, eine konzeptionelle Gesamtsicht auf ein Modell zu erhalten. Zusätzlich wird in dem Kapitel diskutiert, wie die Integration zweier ansonsten getrennter Sichtweisen durch die dreidimensionale, interaktive und animierte Visualisierung möglich wird: Die Einbettung der Oberflächen-orientierten Sichtweise des zukünftigen Benutzers in die Spezifikations-orientierte Sicht des Modellierers. In Kapitel 6 wird noch einmal die Arbeit zusammengefasst und diskutiert, sowie ein Ausblick auf mögliche weitere Arbeit zu diesem Thema gegeben.

[Richters and Gogolla, 2003]
Mark Richters and Martin Gogolla. Aspect-Oriented Monitoring of UML and OCL Constraints. In Omar Aldawud, Mohamed Kande, Grady Booch, Bill Harrison, Dominik Stein, Jeff Gray, Siobhan Clarke, Aida Zakaria, Peri Tarr, and Faisal Akkawi, editors, Proc. UML'2003 Workshop Aspect-Oriented Software Development with UML. Illinois Institute of Technology, Department of Computer Science, http://www.cs.iit.edu/ oaldawud/AOM/index.htm, 2003.
We present an approach utilizing aspect-oriented programming (AOP) techniques for mapping between di erent abstraction levels of software. The goal is to facilitate validation and testing of a software implementation against constraints specified on an associated UML model. We use AOP techniques for defining a monitor that observes the behavior of an implementation and maps it to model behavior. The model behavior is then validated against constraints with an existing tool. Constraint violations can thus be identified and traced to a specification of the model.
(7 pages, gzipped PostScript: 191kb via HTTP, FTP, uncompressed PostScript: 884kb via HTTP, FTP)


[Ziemann and Gogolla, 2003a]
Paul Ziemann and Martin Gogolla. An OCL Extension for Formulating Temporal Constraints. Research Report 1/03, Universität Bremen, 2003.
UML class diagrams are widely used to model the static structure of object-oriented software systems. The textual language OCL, which is part of the UML, is used for formulating constraints that can not be modeled by the diagrams. In this paper, we extend OCL with elements of linear temporal logic. With this extended OCL, which we call TOCL, we want to give software engineers a user-friendly means to specify constraints on the temporal evolution of the system structure as well as on the system behavior by stating temporal invariants and pre- and postconditions. We formally define syntax and semantics of the extended OCL.
(20 pages, gzipped PostScript: 179kb via HTTP, FTP, uncompressed PostScript: 444kb via HTTP, FTP)


[Ziemann and Gogolla, 2003b]
Paul Ziemann and Martin Gogolla. OCL Extended with Temporal Logic. In Manfred Broy and Alexandre Zamulin, editors, 5th Int. Conf. Perspectives of System Informatics (PSI'2003), pages 351-357. Springer, Berlin, LNCS 2890, 2003.
UML class diagrams have become a standard for modeling the static structure of object-oriented software systems. OCL can be used for formulating additional constraints that can not be expressed with the diagrams. In this paper, we extend OCL with temporal operators to formulate temporal constraints.
(7 pages, gzipped PostScript: 110kb via HTTP, FTP, uncompressed PostScript: 231kb via HTTP, FTP)


[Ziemann and Gogolla, 2003c]
Paul Ziemann and Martin Gogolla. Validating OCL Specifications with the USE Tool - An Example Based on the BART Case Study. In Thomas Arts and Wan Fokkink, editors, Proc. 8th Int. Workshop Formal Methods for Industrial Critical Systems (FMICS'2003). Electronic Notes in Theoretical Computer Science (ENTCS), Vol. 80, Elsevier, 2003.
The Object Constraint Language (OCL) is part of the Unified Modeling Language (UML). Within software engineering, UML is regarded today as an important step towards development of high-quality object-oriented systems. OCL allows to sharpen UML diagrams through invariants as well as pre- and postconditions. This paper explains the functionality of the UML Specification Environment USE which allows to validate UML and OCL descriptions. The paper shows that central safety properties of the train system described in the well-known BART case study can be expressed with OCL. Test cases embodying central aspects of this train system can be formulated within the USE system. It can be shown that the safety properties are satisfied by the test cases examined.
(13 pages, gzipped PostScript: 188kb via HTTP, FTP, uncompressed PostScript: 695kb via HTTP, FTP)


[Gogolla, 2002]
Martin Gogolla. Editorial for the Special Issue on the UML 2001 Conference. Software and System Modeling (SoSyM), 1(2):83-85, 2002.
This paper is the editorial for the special issue of the journal on Software and Systems Modeling dedicated to the UML 2001 Conference (UML'2001)

[Gogolla and Henderson-Sellers, 2002]
Martin Gogolla and Brian Henderson-Sellers. Formal Analysis of UML Stereotypes within the UML Metamodel. In Steve Cook, Heinrich Hussmann, and Jean-Marc Jezequel, editors, Proc. 5th Int. Conf. Unified Modeling Language (UML'2002). Springer, Berlin, LNCS, 2002.
Stereotypes are a powerful and potentially expressive extension mechanism in the Unified Modeling Language UML. However, it seems that stereotypes are difficult to handle because using stereotypes needs an understanding of the UML metamodel and in particular an understanding of OCL constraints. Stereotypes are often applied in a wrong or at least sloppy way without proper declaration. There are also differences between the various versions of UML with respect to subtle details in the stereotype part. A graphical syntax for stereotypes including examples has been introduced only late in UML 1.4. Other difficulties are that constraints are used in the stereotype context in two completely different ways and that no full support of stereotypes is offered by tools yet. The paper points out these difficulties in detail, analyses the UML metamodel part dealing with stereotypes, and makes various suggestions to improve the definition and use of stereotypes.
(15 pages, gzipped PostScript: 235kb via HTTP, FTP, uncompressed PostScript: 3535kb via HTTP, FTP)


[Gogolla and Richters, 2002]
Martin Gogolla and Mark Richters. Development of UML Descriptions with USE. In Hassan Shafazand and A Min Tjoa, editors, Proc. 1st Eurasian Conf. Information and Communication Technology (EURASIA'2002), pages 228-238. Springer, Berlin, LNCS 2510, 2002.
The Object Constraint Language OCL is part of the Unified Modeling Language UML. Within software engineering, UML is regarded today as an important step towards development of high-quality object-oriented systems. OCL allows to describe system structure by invariants and system behavior by pre- and postconditions. This paper explains the functionality of the UML Specification Environment USE which allows to validate and verify UML and OCL descriptions. The paper also uses a new approach to handle UML statecharts by OCL pre- and postconditions.
(12 pages, gzipped PostScript: 196kb via HTTP, FTP, uncompressed PostScript: 5467kb via HTTP, FTP)


[Gogolla et al., 2002a]
Martin Gogolla, Arne Lindow, Mark Richters, and Paul Ziemann. Metamodel Transformation of Data Models. In Jean Bezivin and Robert France, editors, Proc. UML'2002 Workshop in Software Model Engineering (WiSME 2002). http://www.metamodel.com/wisme-2002, 2002.
This paper studies syntax and semantics of the Entity-Relationship (ER) and Relational data model and their transformation. The ER model may be regarded as a platform independent model and the Relational model as a prototypical platform specific model. The paper studies the transformation between these models and proposes to express that transformation again as a model.
(8 pages, gzipped PostScript: 124kb via HTTP, FTP, uncompressed PostScript: 947kb via HTTP, FTP)


[Gogolla et al., 2002b]
Martin Gogolla, Paul Ziemann, and Sabine Kuske. Towards an Integrated Graph Based Semantics for UML. In Paolo Bottoni and Mark Minas, editors, Proc. ICGT Workshop Graph Transformation and Visual Modeling Techniques (GT-VMT'2002). Electronic Notes in Theoretical Computer Science (ENTCS), Vol. 72, No. 3, Elsevier, 2002.
Recently, we proposed an integrated formal semantics based on graph transformation for central aspects of UML class, object and state diagrams. In this paper, we explain the basic ideas of that approach and show how two more UML diagram types, sequence and collaboration diagrams, can be captured. For UML models consisting of a class diagram and particular state diagrams, a graph transformation system can be defined. Its graphs are associated with system states and its rules with operations in the class diagram and transitions in the state diagrams. Sequence and collaboration diagrams then characterize sequences of operation applications and therefore sequences of transformation rule applications. Thus valid sequence and collaboration diagrams correspond to derivations induced by the graph transformation system. Proceeding this way, it can be checked for example whether such an operation application sequence may be applied in a specific system state.
(16 pages, gzipped PostScript: 95kb via HTTP, FTP, uncompressed PostScript: 328kb via HTTP, FTP)


[Kollmann and Gogolla, 2002]
Ralf Kollmann and Martin Gogolla. Metric-Based Selective Representation of UML Diagrams. In Tibor Gyimóthy and Fernando Brito e Abreu, editors, Proc. 6th European Conf. Software Maintenance and Reengineering (CSMR'02). IEEE, Los Alamitos, 2002.
UML diagrams are widely employed for modeling of object-oriented software systems. In addition to their application in forward engineering, it is also possible to use them for the redocumentation of existing programs. However, the inherent structure of UML diagrams, which consists of graphical as well as textual information, makes it difficult to read and oversee large diagrams generated from complex systems. The view on such diagrams can be compared with taking a look at a detailed map: the reader has to decide whether to read the fine details or to view the whole structure. We present approaches to overcome this problem by using object-oriented metrics for program analysis and location of submodules in diagrams that belong together in terms of coupling. The shown techniques have been implemented into our reverse engineering tool Idea, which allows interactive selection and isolation of coherent regions of class diagrams.
(10 pages, gzipped PostScript: 295kb via HTTP, FTP, uncompressed PostScript: 1929kb via HTTP, FTP)


[Kollmann et al., 2002]
Ralf Kollmann, Petri Selonen, Eleni Stroulia, Tarja Systä, and Albert Zündorf. A Study on the Current State of the Art in Tool-Supported UML-Based Static Reverse Engineering. In Elizabeth Burd and Arie van Deursen, editors, Proc. 9th Working Conf. Reverse Engineering (WCRE'02). IEEE, Los Alamitos, 2002.
Today, software-engineering research and industry alike recognize the need for practical tools to support reverse-engineering activities. Most of the well-known CASE-tools nowadays support reverse engineering in some way. But although the Unified Modeling Language (UML) has emerged as the de facto standard for the abstract graphical representation of object-oriented software systems, there does not yet exist a standard scheme for representing the reverse engineered models of software systems. Due to the differences in understanding and application of the UML notation and the proprietary extensions that different tools adopt, it is often difficult to ensure that model semantics remains unambiguous when working with different tools at the same time. In this paper, we examine the capabilities of the two most successful industrial-strength CASE-tools in reverse engineering the static structure of software systems and compare them to the results produced by two academic prototypes. The comparisons are carried out both manually and automatically using a research prototype for manipulating and comparing UML models.
(11 pages, gzipped PostScript: 48kb via HTTP, FTP, uncompressed PostScript: 391kb via HTTP, FTP)


[Kuske et al., 2002]
Sabine Kuske, Martin Gogolla, Ralf Kollmann, and Hans-Jörg Kreowski. An Integrated Semantics for UML Class, Object, and State Diagrams based on Graph Transformation. In Michael Butler and Kaisa Sere, editors, 3rd Int. Conf. Integrated Formal Methods (IFM'02). Springer, Berlin, LNCS, 2002.
This paper studies the semantics of a central part of the Unified Modeling Language UML. It discusses UML class, object and state diagrams and presents a new integrated semantics for both on the basis of graph transformation. Graph transformation is a formal technique having some common ideas with the UML. Graph transformation rules are associated with the operations in class diagrams and with the transitions in state diagrams. The resulting graph transformations are combined into one system in order to obtain a single coherent semantic description.
(19 pages, gzipped PostScript: 109kb via HTTP, FTP, uncompressed PostScript: 494kb via HTTP, FTP)


[Richters, 2002]
Mark Richters. A Precise Approach to Validating UML Models and OCL Constraints. PhD thesis, Universität Bremen, Fachbereich Mathematik und Informatik, Logos Verlag, Berlin, BISS Monographs, No. 14, 2002.
We present a precise approach that allows an analysis and validation of UML models and OCL constraints. We focus on models and constraints specified in the analysis and early design stage of a software development process. For this purpose, a suitable subset of UML corresponding to information that is usually represented in class diagrams is identified and formally defined. This basic modeling language provides a context for all OCL constraints. We define a formal syntax and semantics of OCL types, operations, expressions, invariants, and pre-/postconditions. We also give solutions for problems with the current OCL definition and discuss possible extensions. A metamodel for OCL is introduced that defines the abstract syntax of OCL expressions and the structure of types and values. The metamodel approach allows a seamless integration with the UML metamodeling architecture and makes the benefits of a precise OCL definition easier accessible. The OCL metamodel also allows to define context-sensitive conditions for well-formed OCL expressions more precisely. These conditions can now be specified with OCL whereas they previously were specified only informally. % In order to demonstrate the practical applicability of our work, we have realized substantial parts of it in a tool supporting the validation of models and constraints. Design specifications can be ``executed'' and animated thus providing early feedback in an iterative development process. Our approach offers novel ways for checking user data against specifications, for automating test procedures, and for checking CASE tools for standards conformance. Therefore, this work contributes to the goal of improving the overall quality of software systems by combining theoretical and practical techniques.

[Wang et al., 2002]
Rui-Jin Wang, Hui-Chuan Duan, and Martin Gogolla. Unified Modeling Language and Its Application to Modeling. Application Research of Computers, 19(8):80-84, 2002. ISSN 1001-3695.
In the present paper we introduced briefly the main concepts of the Unified Modeling Language (UML), concentrating on the nine kinds of diagrams. In order to show a clue to the application of the UML, we built a simple model for the sales management system in a supermarket using the UML.
( pages, gzipped PostScript: 1269kb via HTTP, FTP, uncompressed PostScript: 3558kb via HTTP, FTP)


[Ziemann and Gogolla, 2002]
Paul Ziemann and Martin Gogolla. An Extension of OCL with Temporal Logic. In Jan Jürjens, editor, Proc. UML'2002 Workshop Critical System Development (CSD 2002). Technical Report, Technical University of Munich, 2002.
UML class diagrams are widely used to model the static structure of object-oriented software systems. As a supplement, OCL becomes more and more popular for formulating constraints that can not be modeled by the diagrams. In this paper, we extend OCL with elements of temporal logic. With this extension, constraints on the temporal development of the system structure as well as on the system behavior can be stated in terms of temporal invariants and pre- and postconditions.
(10 pages, gzipped PostScript: 139kb via HTTP, FTP, uncompressed PostScript: 295kb via HTTP, FTP)


[Barbier et al., 2001]
Franck Barbier, Brian Henderson-Sellers, Andreas Opdahl, and Martin Gogolla. The Whole-Part Relationship in Object-Oriented Modeling. In Keng Siau and Terry Halpin, editors, Unified Modeling Language: Systems Analysis, Design, and Development Issues, pages 186-209. Idea Group Publishing, Hershey (PA), USA, 2001.
This study of the semantics of the Whole-Part relationship in OO modelling is based on previous detailed analysis of the semantics of UML's Aggregation and Composition (white and black diamonds). Although UML is nowadays a standard and an intensively used OO modelling language, the way the Whole-Part is formalised is unsatisfactory. In this respect, we provide a complete specification by using OCL (Object Constraint Language). This is based on a separation between primary characteristics assigned to the "Whole-Part" metatype, considered as necessary in the metamodel of UML, and secondary features possessed by subtypes of this metatype. This UML-compliant style of specification, based on the use of OCL as well as metamodelling, allows us to directly incorporate our results into the metamodel, in particular to revise UML's definition of Composition.
(20 pages, gzipped PostScript: 414kb via HTTP, FTP, uncompressed PostScript: 1058kb via HTTP, FTP)


[Gogolla, 2001a]
Martin Gogolla. Formal Methods versus UML's OCL. In Stefan Jähnichen, Jeff Kramer, Michel Lemoine, and Martin Wirsing, editors, Can Formal Methods Cope with Software-Intensive Systems, pages 19-20. Dagstuhl-Seminar-Report 308, 2001.
The talk explains the connection between the Unified Modeling Language UML and its Object Constraint Language OCL. It shows OCL features by considering the BART case study and giving a small abstract specification for it. This specification is animated by means of the UML Specification Environment USE developed at University of Bremen. Finally the talk discusses to what extent OCL is different from existing formal specification languages.
(2 pages, gzipped PostScript: 60kb via HTTP, FTP, uncompressed PostScript: 1314kb via HTTP, FTP)


[Gogolla, 2001b]
Martin Gogolla. Using OCL for Defining Precise, Domain-Specific UML Stereotypes. In Aybuke Aurum and Ross Jeffery, editors, Proc. 6th Australian Workshop on Requirements Engineering (AWRE'2001), pages 51-60. Centre for Advanced Software Engineering Research (CAESER), University of New South Wales, Sydney, 2001.
This paper studies the extension mechanisms of the Unified Modeling Language UML. It introduces a new appproach for defining UML stereotypes and shows its usefulness by considering domain-specific requirements for databases. The stereotypes introduced possess a precise meaning by translating them into expressions formulated in the Object Constraint Language OCL. Apart from proposing a general framework for stereotype definition, this work is also one step in the development of a domain-specific requirements language for information systems.
(10 pages, gzipped PostScript: 98kb via HTTP, FTP, uncompressed PostScript: 349kb via HTTP, FTP)


[Gogolla and Kobryn, 2001]
Martin Gogolla and Cris Kobryn, editors. Proc. 4th Int. Conf. Unified Modeling Language (UML'2001). Springer, LNCS 2185, 2001.
This book contains the papers accepted for the 4th International Conference on the Unified Modeling Language (UML'2001).

[Gogolla and Richters, 2001]
Martin Gogolla and Mark Richters. Expressing UML Class Diagrams Properties with OCL. In Tony Clark and Jos Warmer, editors, Advances in Object Modelling with the OCL, pages 86-115. Springer, Berlin, LNCS 2263, 2001.
The Unified Modeling Language UML is a complex language offering many modeling features. Especially the description of static structures with class diagrams is supported by a rich set of primitives. This paper shows how to transfrom UML class diagrams involving cardinality constraints, qualifiers, association classes, aggregations, compositions, and generalizations into equivalent UML class diagrams employing only binary associations and OCL constraints. Thus we provide a better understanding of UML features. By reducing more complex features in terms of basic ones, we suggest an easy way users can gradually extend the set of UML elements they commonly apply in the modeling process.
(29 pages, gzipped PostScript: 96kb via HTTP, FTP, uncompressed PostScript: 747kb via HTTP, FTP)


[Kollmann and Gogolla, 2001a]
Ralf Kollmann and Martin Gogolla. Application of the UML Associations and Their Adornments in Design Recovery. In Peter Aiken and Elizabeth Burd, editors, Proc. 8th Working Conference on Reverse Engineering (WCRE'2001). IEEE, Los Alamitos, 2001.
Many CASE tools support reverse engineering and UML. However, it can be observed that usually, only a subset of the UML notation is supported, namely those parts with a more or less direct code representation. Although a lot of research is done in this field, the more advanced features of UML notations are not commonly supported in reverse engineering. In this paper, we show approaches to discover patterns in program code that can be represented by means of advanced notational features of UML class diagrams. We obtain the necessary information by reverse engineering Java programs with different methods. These have been implemented in a prototypical implementation.
(10 pages, gzipped PostScript: 53kb via HTTP, FTP, uncompressed PostScript: 163kb via HTTP, FTP)


[Kollmann and Gogolla, 2001b]
Ralf Kollmann and Martin Gogolla. Capturing Dynamic Program Behaviour with UML Collaboration Diagrams. In Pedro Sousa and Jürgen Ebert, editors, Proc. 5th European Conf. Software Maintenance and Reengineering (CSMR'01), pages 58-67. IEEE, Los Alamitos, 2001.
The UML provides means to specify both static and dynamic aspects of object-oriented software systems and can be used to assist in all phases of a software development process. With growing support by CASE tools, its applications become more and more widespread. In addition to the automatic generation of class code from diagrams, the recovery of static structure from source code has become common, too. In this paper however, we focus on the extraction of behavioural information from program code. We introduce a restricted meta model for Java code and present a new approach to extract the required data, which will then be rendered as UML collaboration diagrams.
(10 pages, gzipped PostScript: 37kb via HTTP, FTP, uncompressed PostScript: 137kb via HTTP, FTP)


[Kollmann and Gogolla, 2001c]
Ralf Kollmann and Martin Gogolla. Selektive Darstellung von Programmstrukturen mit UML. In Jürgen Ebert and Franz Lehner, editors, Proc. 3. Workshop Software-Reengineering. Universität Koblenz, Technischer Bericht, http://www.uni-koblenz.de/ ist/WSR2001, 2001.
Das Papier beschreibt, wie verschiedene Ansätze zur Selektion und Transformation von durch Reverse Engineering gesammelten Informationen dazu beitragen können, die Menge der durch Programmcode gegebenen Informationen in komprimierter Weise darzustellen, um Lesbarkeit und Verständnis zu erleichtern. Wir unterscheiden zwischen Abstraktion, wobei komplexere Elemente der UML Notation von Klassendiagrammen zum Einsatz kommen, und selektiver Darstellung, wobei die Transformation der Daten mit einer manuellen Selektion kombiniert wird. Beim Einsatz dieser Techniken hat sich gezeigt, daß durch die kombinierte Herangehensweise bessere Ergebnisse erreicht werden können.
(6 pages, gzipped PostScript: 54kb via HTTP, FTP, uncompressed PostScript: 133kb via HTTP, FTP)


[Lindow et al., 2001]
Arne Lindow, Martin Gogolla, and Mark Richters. Ein formal validiertes Metamodell für die Transformation von Schemata in Informationssystemen. In K. Bauknecht, W. Brauer, and T. Mück, editors, Proc. GI Jahrestagung (GI'2001), Band 1, Workshop Integrating Diagrammatic and Formal Specification Techniques, pages 662-669. Austrian Computer Society, Wien, 2001.
Dieses Papier stellt eine Verbindung von klassischen Datenmodellen wie dem Entity-Relationship-Modell und dem relationalen Modell mit dem Metamodellierungsansatz der Meta-Object-Facility her. Es wird eine Modellierung sowohl für das ER-Modell als auch für das relationale Modell vorgestellt. Ergänzend wird die Transformation von Entity-Relationship-Schemata in relationale Schemata diskutiert. Alle drei Ebenen werden formal spezifiziert und mit einem Werkzeug validiert.
(8 pages, gzipped PostScript: 111kb via HTTP, FTP, uncompressed PostScript: 3854kb via HTTP, FTP)


[Richters and Gogolla, 2001]
Mark Richters and Martin Gogolla. OCL - Syntax, Semantics and Tools. In Tony Clark and Jos Warmer, editors, Advances in Object Modelling with the OCL, pages 43-69. Springer, Berlin, LNCS 2263, 2001.
The Object Constraint Language OCL allows to formally specify constraints on a UML model. We present a formal syntax and semantics for OCL based on set theory including expressions, invariants and pre- and postconditions. A formal foundation for OCL makes the meaning of constraints precise and helps to eliminate ambiguities and inconsistencies. A precise language de nition is also a prerequisite for implementing CASE tools providing enhanced support for UML models and OCL constraints. We give a survey of some OCL tools and discuss one of the tools in some more detail. The design and implementation of the USE tool supporting the validation of UML models and OCL constraints is based on the formal approach presented in this paper.
(27 pages, gzipped PostScript: 135kb via HTTP, FTP, uncompressed PostScript: 524kb via HTTP, FTP)


[Warmer et al., 2001]
Jos Warmer, Anneke Kleppe, Tony Clark, Anders Ivner, Jonas Högström, Martin Gogolla, Mark Richters, Heinrich Hussmann, Steffen Zschaler, Simon Johnston, David S. Frankel, and Conrad Bock. Object Constraint Language 2.0. Technical report, Submission to the OMG, 2001.
This paper is a submission in response to the UML 2.0 OCL request for proposals. It proposes syntax and semantics of a new version of the Object Constraint Language OCL.
(155 pages, gzipped PostScript: 889kb via HTTP, FTP, uncompressed PostScript: 4317kb via HTTP, FTP)


[Gärtner, 2000]
Heino Gärtner. Schematransformationen in objektorientierten Informationssystemen. PhD thesis, Universität Bremen, Fachbereich Mathematik und Informatik, Shaker Verlag, Aachen, 2000.
Die vorliegende Arbeit konzentriert sich auf die Untersuchung der vertikalen Schemaevolution und geht dabei wie folgt vor: Nachdem im folgenden Abschnitt die benötigten Grundbegriffe aus dem Bereich der konzeptionellen Modellierung und der Schemaevolution geklärt worden sind, folgt zunächst die Präsentation eines einfachen Objektmodells, das im wesentlichen die Konzepte des ER-Modells umfaßt. Danach werden die Grundlagen von Schematransformation diskutiert und eine formal begründete Notation zur Beschreibung von atomaren Schemaänderungsoperationen, Schematransformationsprimitiven, vorgestellt. Mit Hilfe dieser Notation werden zunächst Transformationen auf den Konstrukten des einfachen Objektmodells beschrieben. Danach wird das einfache Objektmodell schrittweise um weitergehende Konzepte erweitert und deren Transformationsmöglichkeiten in dem präsentierten Rahmen diskutiert. Im darauf folgenden Abschnitt werden schließlich Transformationen von Spezifikationsanteilen, die über die Modellierung struktureller Information hinausgehen, am Beispiel von Objektlebensläufen erläutert. Im vorletzten Abschnitt wird die Perspektive der Spezifikation verlassen und erörtert, wie sich der vorgestellte Ansatz in den Softwareentwicklungsprozeß integrieren läßt. Eine Einordnung in die bisherige Forschung und ein Ausblick auf künftige Entwicklungsmöglichkeiten beschließt die Arbeit.

[Gogolla, 2000]
Martin Gogolla. Graph Transformations on the UML Metamodel. In Jose D.P. Rolim, Andrei Z. Broder, Andrea Corradini, Roberto Gorrieri, Reiko Heckel, Juraj Hromkovic, Ugo Vaccaro, and Joe B. Wells, editors, Proc. ICALP Workshop Graph Transformations and Visual Modeling Techniques (GTVMT'2000), pages 359-371. Carleton Scientific, Waterloo, Ontario, Canada, 2000.
The Unified Modeling Language UML is a rich language so that it seems not feasible to give a single semantics for the complete language in one step. In order to define the semantics, we propose to translate as many UML language features as possible into UML itself. The part of UML which cannot be treated in this way is called the UML core. The semantics of the non-core language features is given by a translation into the core, whereas a different semantics (for example a set-theoretic one or a semantics on the basis of graphs) must be given to the UML core. It turns out that for the first step, namely the translation of UML language features into the UML core, graph transformations are an ideal language for expressing the required manipulations and the UML metamodel gives the necessary fundamental vocabulary and notions.
(13 pages, gzipped PostScript: 91kb via HTTP, FTP, uncompressed PostScript: 371kb via HTTP, FTP)


[Gogolla and Kollmann, 2000]
Martin Gogolla and Ralf Kollmann. Re-Documentation of Java with UML Class Diagrams. In Eliot Chikofsky, editor, Proc. 7th Reengineering Forum, Reengineering Week 2000 Zürich, pages REF 41-REF 48. Reengineering Forum, Burlington, Massachusetts, 2000.
This paper describes the generation of class diagrams characterizing the static data and class structure of Java source code. To achieve such a diagrammatic representation, translation rules are defined that transform Java syntax into UML notation. Attention is paid especially to implicit and advanced properties of associations. First, an implementation view class diagram of the Java source code is generated that reflects program-specific details of the source code. In a second, more involved step, we try to create a design view from the source code and also represent certain patterns as ODMG language features. The focus of our approach is on minimizing the resulting UML diagrams (minimal with respect to the number of elements in the diagrams) by recognizing certain patterns in the source code and transforming certain low-level syntactic constructs into high-level semantic UML features.
(9 pages, gzipped PostScript: 67kb via HTTP, FTP, uncompressed PostScript: 199kb via HTTP, FTP)


[Gogolla and Richters, 2000]
Martin Gogolla and Mark Richters. Definition von UML mit UML und OCL: Ein Überblick zum Stand der Technik. In Mario Jeckle, Bernhard Rumpe, Andy Schürr, and Andreas Winter, editors, Proc. 7. GROOM-Workshop ``UML - Erweiterungen (Profile) und Konzepte der Metamodellierung''. Universität Koblenz-Landau, Fachbereich Informatik, 2000. Auch: Softwaretechnik-Trends, 20:2, 2000, ISSN 0720-8928.
Das Ziel dieser Arbeit ist es, einen Überblick zum Einsatz der Object Constraint Language OCL zum einen bei der Beschreibung von Modellen mit der Unified Modeling Language UML und zum anderen bei der Beschreibung des UML-Metamodells zu vermitteln. Eingang in die Überlegungen finden die Dokumente des UML-Standards, eigene Arbeiten und weitere Papiere anderer Arbeitsgruppen.
(2 pages, gzipped PostScript: 17kb via HTTP, FTP, uncompressed PostScript: 38kb via HTTP, FTP)


[Gogolla et al., 2000]
Martin Gogolla, Oliver Radfelder, Ralf Kollmann, and Mark Richters. Analysing Atomic Dynamic UML Notions by Surfing through the UML Metamodel. In Gianna Reggio, Alexander Knapp, Bernhard Rumpe, Bran Selic, and Roel Wieringa, editors, Proc. UML'00 Workshop Dynamic Behaviour in UML Models, pages 57-62. LMU München, Informatik-Bericht Nr. 0006, 2000.
This paper analyses atomic notions in UML which are fundamental for the understanding of dynamic aspects. The notions considered are: Action, Event, Exception, Message, Method, Signal, Stimulus, Operation, and Reception. We surf through the UML metamodel by combining the different metamodel class diagrams, where these notions are defined, into a single class diagram. Thereby we point out the intent, similarities and differences between these notions. Thus before doing a formalization, we try to make the concepts a bit clearer than they appear in the UML Semantics document.
(6 pages, gzipped PostScript: 44kb via HTTP, FTP, uncompressed PostScript: 153kb via HTTP, FTP)


[Huge, 2000]
Anne Kathrin Huge. Formalisierung objektorientierter Datenbanken auf der Grundlage von ODMG. PhD thesis, Universität Bremen, Fachbereich Mathematik und Informatik, Shaker Verlag, Aachen, 2000.
Die Untersuchung objektorientierter Methoden zeigt, daß die Bereitstellung einer formalen Grundlage ein häufiges Problem ist. Dabei stellt gerade eine formale Grundlage die Basis für ein eingehendes Verständnis der Semantik von Modellierungs- und Spracheigenschaften dar. Ein vergleichender Rückblick auf die generelle Entwicklung von Datenbanken ergibt, daß sich insbesondere das relationale Datenbankmodell auf eine wohldefinierte formale Grundlage stützt und somit den weitreichenden Erfolg relationaler Datenbanksysteme (inklusive SQL) begründet. Ausgehend von diesen Beobachtungen wird in dieser Arbeit eine formale Grundlage für objektorientierte Datenbanken auf der Grundlage des ODMG-Standards vorgestellt. Der ODMG-Standard vereinheitlicht die Konzepte objektorientierter Datenbanken und ermöglicht Portabilität. Um die Lücke zwischen der informellen Beschreibung von ODMG-Sprachkonstrukten und den theoretischen Grundlagen zu schließen, wird in dieser Arbeit ein mengentheoretischer Ansatz zur Beschreibung des ODMG-Objektmodells und der Anfragesprache OQL vorgestellt. Nach einer eher informellen Vorstellung der Konzepte des ODMG-Modells und deren Einbettung in die allgmeinen Konzepte objektorientierter Datenbanken und anschließender vergleichenden Darstellung mit anderen objektorientierten Datenmodellen und Modellierungssprachen wird eine formale Beschreibung des ODMG-Modells und der OQL vorgenommen. Die Formalisierung beruht auf einem Zwei-Schichten-Ansatz, wonach zwischen einer Datenschicht und einer Objektebene differenziert wird. Auf dies Weise erfolgt eine strikte Trennung zwischen unveränderlichen Datentypen und veränderlichen Objekttypen. Um eine konsistente Implementierung einer ODMG-Objektmodell-Spezifikation in einer der Sprachanbindungen (C++, Smalltalk, Java) zu gewährleisten, wird eine Transformation der Konstrukte des ODMG-Modells auf die entsprechenden Konstrukte der Sprachanbindungen vorgestellt.

[Radfelder and Gogolla, 2000]
Oliver Radfelder and Martin Gogolla. On Better Understanding UML Diagrams through Interactive Three-Dimensional Visualization and Animation. In Vito Di Gesu, Stefano Levialdi, and Laura Tarantino, editors, Proc. Advanced Visual Interfaces (AVI'2000), pages 292-295. ACM Press, New York, 2000.
Different approaches support the construction of software by representing certain aspects of a system graphically. Recently, the UML has become common to provide software designers with tools, in which they can create visual representations of software interactively. But the UML is intended to be drawn on two-dimensional surfaces. Our approach extends UML into a third and fourth dimension in a way that we can place both static and dynamic aspects in one single view. By this, we can show behavior in the context of structural aspects, instead of drawing different diagrams for each aspect with only loose relation to each other. We also use the third dimension to emphasize important things and to place less interesting things in the background. Thereby, we direct the viewer's attention to the important things in the foreground. Currently, UML shows dynamic behavior by diagrams which do not change and are therefore static in nature. In sequence diagrams, for example, time elapses from the top of the diagram to the bottom. We point out that behavior is better visualized by animated diagrams where message symbols move from the sender object to the receiver object. Our approach supports the creation of a system as well as the communication of its dynamic processes especially to customers.
(4 pages, gzipped PostScript: 526kb via HTTP, FTP, uncompressed PostScript: 851kb via HTTP, FTP)


[Radfelder et al., 2000]
Oliver Radfelder, Martin Gogolla, and Volker Behr. Entwurf und Implementierung eines Internet-basierten Material-Informationssystems. Interner Bericht, Universität Bremen, Fachbereich 3, 2000.
Das Projekt Material-Informationssystem hatte das Ziel, ein System zu entwickeln, mit dem Personen und Institutionen aus dem Bereich Verbundwerkstoffe auf einen gemeinsamen Produktdatenbestand zugreifen können. Wir haben ein System entwickelt, das den Zugriff über das Internet ermöglicht. Als Benutzungsschnittstelle wird lediglich ein Webbrowser vorausgesetzt anstatt eine vollständige Applikation auf den Rechnern der Teilnehmer zu installieren. Während der ersten Projektphase wurden die Anforderungen an ein solches neues System analysiert und ein Prototyp entworfen und implementiert. In der zweiten Projektphase wurde das System als Server mit Hilfe von SQL und Java implementiert.
(28 pages, gzipped PostScript: 319kb via HTTP, FTP, uncompressed PostScript: 969kb via HTTP, FTP)


[Richters and Gogolla, 2000a]
Mark Richters and Martin Gogolla. Validating UML Models and OCL Constraints. In Andy Evans and Stuart Kent, editors, Proc. 3rd Int. Conf. Unified Modeling Language (UML'2000), pages 265-277. Springer, Berlin, LNCS 1939, 2000.
The UML has been widely accepted as a standard for modeling software systems and is supported by a great number of CASE tools. However, UML tools often provide only little support for validating models early during the design stage. Also, there is generally no substantial support for constraints written in the Object Constraint Language (OCL). We present an approach for the validation of UML models and OCL constraints that is based on animation. The USE tool (UML-based Specification Environment) supports developers in this process. It has an animator for simulating UML models and an OCL interpreter for constraint checking. Snapshots of a running system can be created, inspected, and checked for conformance with the model. As a special case study, we have applied the tool to parts of the UML 1.3 metamodel and its well-formedness rules. The tool enabled a thorough and systematic check of the OCL well-formedness rules in the UML standard.
(13 pages, gzipped PostScript: 90kb via HTTP, FTP, uncompressed PostScript: 377kb via HTTP, FTP)


[Richters and Gogolla, 2000b]
Mark Richters and Martin Gogolla. Validierung von UML-Modellen und OCL-Bedingungen. In Martin Wirsing, Martin Gogolla, Hans-Jörg Kreowski, Tobias Nipkow, and Wolfgang Reif, editors, Proc. GI'2000 Workshop Rigorose Entwicklung software-intensiver Systeme, pages 21-32. LMU München, Informatik-Bericht Nr. 0005, 2000.
Die Unified Modeling Language (UML) ist ein allgemein akzeptierter Standard für die Modellierung von Software-Systemen und wird als solcher von einer großen Anzahl von CASE-Tools unterstützt. Oft weisen UML-Werkzeuge nur wenig Unterstützung für die Validierung von Modellen in frühen Entwurfsphasen auf. Es gibt im allgemeinen auch keine nennenswerte Unterstützung für Integritätsbedingungen, die in der Object Constraint Language (OCL) geschrieben sind. Wir stellen daher einen Ansatz für die Validierung von UML-Modellen und OCL-Bedingungen vor, der diese Unterstützung bereitstellt. Das USE-Werkzeug (UML-based Specification Environment) bietet einen Animator zum Simulieren von UML-Modellen und einen OCL-Interpreter für die überprüfung von Bedingungen. Einzelne Zustände eines laufenden Systems können untersucht und auf übereinstimmung mit dem Modell überprüft werden.
(12 pages, gzipped PostScript: 83kb via HTTP, FTP, uncompressed PostScript: 328kb via HTTP, FTP)


[Astesiano et al., 1999]
Egidio Astesiano, Andy Evans, Robert France, Guy Geniloud, Martin Gogolla, Brian Henderson-Sellers, John Howse, Heinrich Hussmann, Shusaku Iida, Stuart Kent, Alain Le Guennec, Tom Mens, Richard Mitchell, Oliver Radfelder, Gianna Reggio, Mark Richters, Bernhard Rumpe, Perdita Stevens, Klaas van den Berg, Pim van den Broek, and Roel Wieringa. UML Semantics FAQ. In Ana Moreira and Serge Demeyer, editors, ECOOP'99 Workshop Reader, pages 33-56. Springer, Berlin, LNCS 1743, 1999.
This paper reports the results of a workshop held at ECOOP'99. The workshop was set up to find answers to questions fundamental to the definition of a semantics for the Unified Modelling Language. Questions examined the meaning of the term semantics in the context of UML; approaches to defining the semantics, including the feasibility of the meta-modelling approach; whether a single semantics is desirable and, if not, how to set up a framework for defining multiple, interlinked semantics; and some of the outstanding problems for defining a semantics for all of UML.
(25 pages, gzipped PostScript: 952kb via HTTP, FTP, uncompressed PostScript: 5795kb via HTTP, FTP)


[Gogolla, 1999]
Martin Gogolla. Identifying Objects by Declarative Queries. Advances in Object-Oriented Data Modeling. M.P. Papazoglou, S. Spaccapietra, Z. Tari (Eds.), MIT Press. pages 255-277, 1999.
Object identification in data models, especially in semantic, Entity-Relationship, and Object-Oriented data models is studied. Various known approaches to object identification are shown, and an alternative proposal to the topic is put forward. The main new idea is to attach to each object type an arbitrary query, a so-called observation term, in order to observe a unique, identifying property of objects of the corresponding type.
(25 pages, gzipped PostScript: 138kb via HTTP, FTP, uncompressed PostScript: 682kb via HTTP, FTP)


[Gogolla and Richters, 1999]
Martin Gogolla and Mark Richters. Transformation Rules for UML Class Diagrams. In Jean Bezivin and Pierre-Alain Muller, editors, Proc. 1st Int. Workshop Unified Modeling Language (UML'98), pages 92-106. Springer, Berlin, LNCS 1618, 1999.
UML is a complex language with many modeling features. Especially the modeling of static structures with class diagrams is supported by a rich set of description primitives. We show how to transfrom UML class diagrams involving cardinality constraints, qualifiers, association classes, aggregations, compositions, and generalizations into equivalent UML class diagrams employing only n-ary associations and OCL constraints. This provides a better understanding of UML features. By explaining more complex features in terms of basic ones, we suggest an easy way users can gradually extend the set of UML elements they commonly apply in the modeling process.
(15 pages, gzipped PostScript: 87kb via HTTP, FTP, uncompressed PostScript: 431kb via HTTP, FTP)


[Gogolla et al., 1999a]
Martin Gogolla, Oliver Radfelder, and Mark Richters. A UML Semantics FAQ - The View from Bremen. In S.J.H. Kent, A. Evans, and B. Rumpe, editors, Proc. ECOOP'99 Workshop UML Semantics FAQ. University of Brighton, 1999.
This note spells out questions the authors found while studying the material defining the Unified Modeling Language UML. After formulating a preliminary question in Sec. 1, some detailed questions with answers and some detailed questions without answers are given in Sec. 2 and 3, respectively. Sections 4 and 5 just state questions with and without answers but we do not go into details explaining the importance of the questions. Our answers to the `questions with answers' can be found in our recent. In Sec. 6, a short hint to relevant literature ends this note.
(10 pages, gzipped PostScript: 87kb via HTTP, FTP, uncompressed PostScript: 523kb via HTTP, FTP)


[Gogolla et al., 1999b]
Martin Gogolla, Oliver Radfelder, and Mark Richters. Towards Three-Dimensional Representation and Animation of UML Diagrams. In Robert France and Bernhard Rumpe, editors, Proc. 2nd Int. Conf. Unified Modeling Language (UML'99), pages 489-502. Springer, Berlin, LNCS 1723, 1999.
The UML notation is intended to be drawn on two-dimensional surfaces. However, three-dimensional diagram layout and animation may improve comprehension of complex diagrams significantly. The paper concentrates on special UML diagram forms well-suited for advanced visualization. It makes a proposal for representing and animating such UML diagrams in a three-dimensional style.
(14 pages, gzipped PostScript: 558kb via HTTP, FTP, uncompressed PostScript: 1845kb via HTTP, FTP)


[Radfelder et al., 1999]
Oliver Radfelder, Martin Gogolla, and Volker Behr. On Designing and Querying a Material Information System. In M. Türksever, N.Y. Topaloglu, N. Zincir-Heywood, A. Kantarci, C.A. Sürgevil, and Ö. Özmen, editors, Proc. 14th Int. Symposium Computer and Information Science (ISCIS'99), pages 132-142. Ege University, Izmir, 1999.
We present an information system which has been developed in cooperation with a composite material development laboratorium and other industrial partners. The system enables people interested in this field to get knowledge about project participants and their offers. The main purpose of the development was to let all the involved people participate regardless of their technical skills. One precondition to achieve this goal was the development of an easy-to-learn graphical query language. The implementation has been led by the demand for platform independence and the necessity to involve the project participants in the maintenance of the data.
(11 pages, gzipped PostScript: 33kb via HTTP, FTP, uncompressed PostScript: 123kb via HTTP, FTP)


[Richters and Gogolla, 1999a]
Mark Richters and Martin Gogolla. A Metamodel for OCL. In Robert France and Bernhard Rumpe, editors, Proc. 2nd Int. Conf. Unified Modeling Language (UML'99), pages 156-171. Springer, Berlin, LNCS 1723, 1999.
The Object Constraint Language (OCL) allows the extension of UML models with constraints in a formal way. While the UML itself is defined by following a metamodeling approach, there is currently no equivalent definition for the OCL. We propose a metamodel for OCL that fills this gap. The benefit of a metamodel for OCL is that it precisely defines the syntax of all OCL concepts like types, expressions, and values in an abstract way and by means of UML features. Thus, all legal OCL expressions can be systematically derived and instantiated from the metamodel. We also show that our metamodel smoothly integrates with the UML metamodel. The focus of this work lies on the syntax of OCL; the metamodel does not include a definition of the semantics of constraints.
(16 pages, gzipped PostScript: 82kb via HTTP, FTP, uncompressed PostScript: 265kb via HTTP, FTP)


[Richters and Gogolla, 1999b]
Mark Richters and Martin Gogolla. On the Need for a Precise OCL Semantics. In Robert France, Bernhard Rumpe, Brian Henderson-Sellers, Jean-Michel Bruel, and Ana Moreira, editors, Proc. OOPSLA Workshop ``Rigorous Modeling and Analysis with the UML: Challenges and Limitations''. Colorado State University, Fort Collins, Colorado, 1999.
In our view a formalization of the OCL is beneficial for achieving the following goals: (1) Improvement of the OCL itself by pointing out some potential problems with its current definition, (2) a more precise understanding of UML class models and their interpretation, (3) a solid foundation for implementing CASE tools supporting analysis, simulation and validation of UML models. We also feel that there is one aspect of OCL which often gets underrated. OCL expressions cannot only be used to specify constraints, but more generally, one can utilize them to specify queries retrieving non-trivial information about certain objects in a given system state. These queries can then be translated into statements of a query language of the chosen implementation environment. A precise OCL semantics would obviously facilitate a more systematic description of a translation scheme from OCL to e.g. SQL or the ODMG's Object Query Language (OQL).
(3 pages, gzipped PostScript: 36kb via HTTP, FTP, uncompressed PostScript: 84kb via HTTP, FTP)


[Wagner and Gogolla, 1999]
Annika Wagner and Martin Gogolla. Semantics of Object-Oriented Languages. In Hartmut Ehrig, Gregor Engels, Hans-Jörg Kreowski, and Gregorz Rozenberg, editors, Handbook of Graph Grammars and Computing by Graph Transformation, Volume II, Applications, Languages, and Tools, pages 181-211. World Scientific, Singapore, 1999.
Graph transformations can be applied everywhere, where graphs are used as a natural and intuitive description of complex phenomena. One field where this is the case is object modeling. The important role graphs play during object-oriented analysis and design shows their usefulness in the context of object orientation. A main characteristic of graph transformations is its direct operational executability. Combining both observations, it seems to be natural to use graph transformations to specify the operational behavior of objects. In this contribution we follow this idea by providing an operational semantics for the textual object description language TROLL light by means of graph transformations. But this is not the only possible application of graph transformations in the object-oriented field because what we are doing can be used also in combination with the graphical object modeling language UML.
(16 pages, gzipped PostScript: 312kb via HTTP, FTP, uncompressed PostScript: 714kb via HTTP, FTP)


[Cerioli et al., 1998]
Maura Cerioli, Martin Gogolla, Helene Kirchner, Bernd Krieg-Brückner, Zhenyu Qian, and Markus Wolf, editors. Algebraic System Specification and Development - Survey and Annotated Bibliography. Monographs of the Bremen Institute of Safe Systems (BISS). Shaker, Aachen, 1998.
This book is an annotated bibliography that attempts to provide an up-to-date overview of most past and present work on algebraic specification for researchers in algebraic specification and neighbouring fields. It extends the previous annotated bibliography by Bidoit, Kreowski, Lescanne, Orejas and Sannella. A review of the main topics of current and past research is given, with some indication of how the different approaches are related and pointers to relevant papers.
(142 pages, gzipped PostScript: 383kb via HTTP, FTP, uncompressed PostScript: 1535kb via HTTP, FTP)


[Gogolla, 1998]
Martin Gogolla. UML for the Impatient. Research Report 3/98, Universität Bremen, 1998.
By examples we give a short introduction into the nine diagram forms provided by the Unified Modeling Language (UML). The running example we use is a small traffic light system which we first formally describe in an object specification language. Afterwards, central aspects of the specification and the specified system are visualized with UML constructs. As a conclusion, we discuss a classification of the various UML diagram forms.
(23 pages, gzipped PostScript: 140kb via HTTP, FTP, uncompressed PostScript: 886kb via HTTP, FTP)


[Gogolla and Parisi-Presicce, 1998]
Martin Gogolla and Francesco Parisi-Presicce. State Diagrams in UML - A Formal Semantics using Graph Transformation. In Manfred Broy, Derek Coleman, Tom Maibaum, and Bernhard Rumpe, editors, Proc. ICSE'98 Workshop on Precise Semantics of Modeling Techniques (PSMT'98), pages 55-72. Technical University of Munich, Technical Report TUM-I9803, 1998.
We show how to transform UML (Unified Modeling Language) state diagrams into graphs by making explicit the intended semantics of the diagram. The process of state expansion in nested state diagrams is explained by graph transformations in three steps: (1) adding boundary nodes introducing a precise interface for the state to be expanded, (2) expanding the state, and (3)  removing the boundary nodes. The general idea of approaching the semantics of UML diagrams by graph transformations is applicable to other forms of UML diagrams as well. The main advantage of the graph transformation approach is the closeness between the (mathematical) graph representation and the (UML) diagram representation.
(18 pages, gzipped PostScript: 111kb via HTTP, FTP, uncompressed PostScript: 649kb via HTTP, FTP)


[Gogolla and Richters, 1998]
Martin Gogolla and Mark Richters. On Combing Semi-Formal and Formal Object Specification Techniques. In Francesco Parisi-Presicce, editor, Proc. 12th Int. Workshop Abstract Data Types (WADT'97), pages 238-252. Springer, LNCS 1376, 1998.
In the early phases of software development it seems profitable to freely mix semi-formal and formal design techniques. Formal techniques have their strength in their ability to rigorously define desired software qualities like functionality, whereas semi-formal methods are usually said to be easier to understand and to be more human-nature oriented. We propose a new approach in order to combine these two areas by exploiting how constructs of the formal specification language TROLL light are related to the graphical elements of the UML approach.
(16 pages, gzipped PostScript: 77kb via HTTP, FTP, uncompressed PostScript: 353kb via HTTP, FTP)


[Gogolla et al., 1998]
Martin Gogolla, Anne Kathrin Huge, and Bodo Randt. Stepwise Re-Engineering and Development of Object-Oriented Database Schemata. In Roland R. Wagner, editor, Proc. 9th Int. Workshop Database and Expert Systems Applications (DEXA'98). IEEE, Los Alamitos, 1998.
We present a general approach for re-engineering of object-oriented database schemata. The approach consists of four dependent steps: (1) description of the data within the underlying basic data format, (2) application of a powerful semantic data model in order to construct a semantic database schema, (3) translation of the achieved schema into a general object model, and (4) implementation of the object schema in a concrete object-oriented database system. As an instantiation of this general procedure we report on a case study carried out in an industrial context where an Extended Entity-Relationship model was used as the semantic data model and ObjectStore as the implementation platform.
(6 pages, gzipped PostScript: 40kb via HTTP, FTP, uncompressed PostScript: 123kb via HTTP, FTP)


[Richters and Gogolla, 1998]
Mark Richters and Martin Gogolla. On Formalizing the UML Object Constraint Language OCL. In Tok-Wang Ling, Sudha Ram, and Mong Li Lee, editors, Proc. 17th Int. Conf. Conceptual Modeling (ER'98), pages 449-464. Springer, Berlin, LNCS 1507, 1998.
We present a formal semantics for the Object Constraint Language (OCL) which is part of the Unified Modeling Language (UML) -- an emerging standard language and notation for object-oriented analysis and design. In context of information systems modeling, UML class diagrams can be utilized for describing the overall structure, whereas additional integrity constraints and queries are specified with OCL expressions. By using OCL, constraints and queries can be specified in a formal yet comprehensible way. However, the OCL itself is currently defined only in an informal way. Thus the semantics of constraints is in general not precisely defined. Our approach gives precise meaning to OCL concepts and to some central aspects of UML class models. In consequence, a formal semantics facilitates verification, validation and simulation of models improving the quality of models and software design.
(16 pages, gzipped PostScript: 103kb via HTTP, FTP, uncompressed PostScript: 472kb via HTTP, FTP)


[Richters et al., 1998]
Mark Richters, Martin Gogolla, and Heino Gärtner. SIGN - Software Implementierung durch Graphische Notation. Interner Bericht, Universität Bremen, Fachbereich 3, 1998.
Das studentische Projekt SIGN (Software Implementierung durch Graphische Notation) wurde an der Universität Bremen von 1996 bis 1998 durchgeführt. Ziel des Projektes war die Entwicklung einer graphischen Modellierungssprache zur Unterstützung des objektorientierten Systementwurfs. Zur praktischen Umsetzung der Modellierungssprache wurde außerdem eine Entwicklungsumgebung entworfen und implementiert. Sowohl Sprache als auch das Entwicklungssystem wurden durchgehend objektorientiert entwickelt. Dabei wurde im Rahmen der Metamodellierung auch die zu entwerfende Sprache selbst eingesetzt. Dieses Papier faßt die Ziele, Methoden und Ergebnisse des Projektes zusammen.
(9 pages, gzipped PostScript: 82kb via HTTP, FTP, uncompressed PostScript: 480kb via HTTP, FTP)


[Buddrus et al., 1997]
Frank Buddrus, Heino Gärtner, and Sven-Eric Lautemann. First Steps to a Formal Framework for Multilevel Database Modifications. In A. Hameurlain and A Min Tjoa, editors, Proc. 8th Int. Conf. Database and Expert Systems Applications (DEXA'97), pages 240-251. Springer, Berlin, LNCS 1308, 1997.
We propose a formal basis for operations which can be understood as implicitly used in many kinds of schema modifications. Approaches for view definition, schema evolution, and schema versioning all rely on operations which work either on instance, on schema, or on both levels. This paper discusses a basic set of these operations called modification primitives and describes their semantics on the basis of the Extended Entity Relationship (EER) Model in a Hoare-style notation. We focus on the structural part of the schema definition and outline our ideas for arbitrary manipulations of instances.
(13 pages, gzipped PostScript: 82kb via HTTP, FTP, uncompressed PostScript: 383kb via HTTP, FTP)


[Gärtner, 1997]
Heino Gärtner. Perspectives for a Formal Framework for Schema Modification in Object Databases. In D.J. Ram, editor, Proc. 8th Int. Conf. Management of Data (COMAD'97), pages 238-249. Narosa, New Delhi, 1997.
This paper proposes a formal basis for the description of schema modification in object databases. We identify three necessary building blocks for the structural aspect of such a description: (i) basic schema and database objects, (ii) properties of (classes of) schema and database objects, and (iii) schema modifications, i.e. transitions between schemata and transitions between database states. The semantics for the basic schema and database objects is given in a denotational style. Properties of schemata can be described as formulas. For schema modification we introduce a set of schema modification primitives and describe their semantics by means of pre- and postcondition in a Hoare-style notation. We focus on the structural aspects of schema modification and describe some simple properties of our framework.
(12 pages, gzipped PostScript: 96kb via HTTP, FTP, uncompressed PostScript: 476kb via HTTP, FTP)


[Gogolla, 1997]
Martin Gogolla. On Behavioral Model Quality and Transformation. In Stephen W. Liddle, Stephen W. Clyde, and Scott N. Woodfield, editors, Proc. 16th Int. Conf. on Conceptual Modeling (ER'97), Workshop on Behavioral Models and Design Transformations. verb !http://osm7.cs.byu.edu/ER97/workshop4!, 1997.
This statement reflects experience of our group in conceptual modelling with Entity-Relationship and object-oriented approaches. It describes a general view on structural and behavioral aspects of conceptual models, their interrelationships, and their transformations, and sketches a proposal to build integrated models of them.
(4 pages, gzipped PostScript: 54kb via HTTP, FTP, uncompressed PostScript: 279kb via HTTP, FTP)


[Gogolla and Parisi-Presicce, 1997]
Martin Gogolla and Francesco Parisi-Presicce. State Diagrams in UML - A Formal Semantics using Graph Transformation. Rapporto di Ricerca 97/15, University of Rome `La Sapienza', Dipartimento di Scienze dell' Informazione, 1997.
We show how to transform UML (Unified Modeling Language) state diagrams into graphs by making explicit the intended semantics of the diagram. The process of state expansion in nested state diagrams is explained by graph transformations in three steps: (1) adding boundary nodes introducing a precise interface for the state to be expanded, (2) expanding the state, and (3)  removing the boundary nodes. The general idea of approaching the semantics of UML diagrams by graph transformations is applicable to other forms of UML diagrams as well. The main advantage of the graph transformation approach is the closeness between the (mathematical) graph representation and the (UML) diagram representation.
(19 pages, gzipped PostScript: 112kb via HTTP, FTP, uncompressed PostScript: 685kb via HTTP, FTP)


[Gogolla and Richters, 1997a]
Martin Gogolla and Mark Richters. On Constraints and Queries in UML. In Martin Schader and Axel Korthaus, editors, Proc. UML'97 Workshop `The Unified Modeling Language - Technical Aspects and Applications', pages 109-121. Physica-Verlag, Heidelberg, 1997.
The UML has recently been extended by an Object Constraint Language (OCL). This formal language can be used for specifying constraints on a model in order to restrict possible system states. We present some examples for illustrating main concepts of OCL. Problems with the current definition of OCL resulting from imprecise or ambiguous definitions are investigated. A comparison of OCL with a language for specification of queries and integrity constraints in an Extended Entity-Relationship model shows similarities between both approaches. This comparison could lead to a better understanding of OCL.
(14 pages, gzipped PostScript: 86kb via HTTP, FTP, uncompressed PostScript: 456kb via HTTP, FTP)


[Gogolla and Richters, 1997b]
Martin Gogolla and Mark Richters. Web-Based Object Animation. In Hans-Dieter Ehrich, Yulin Feng, and David Kung, editors, Object-Oriented Software Development, pages 16-16. Dagstuhl-Seminar-Report Nr. 174, 1997.
The current activities of our group comprises concrete case studies arising from practical projects: (1) Reengineering of a tram simulation system and (2) development of a material information system. Both projects use object-oriented description techniques on a semi-formal (OMT-like) and formal (TROLL-like) level. Semi-formal techniques are also the topic of a student project (18 students, 2 years). The aim of this student project is the development of an OMT design system. The formal basis for the above activities is the object description language TROLL light. Our group already has experience with implementations of this language on different platforms. The current implementation uses Java. The talk explains the user-interface of the current animation system which is based on HTML documents. Thus any Web browser can be employed for the validation of specifications. For demonstration purposes we use a small description of a car rentals case system.
(1 pages, gzipped PostScript: 15kb via HTTP, FTP, uncompressed PostScript: 86kb via HTTP, FTP)


[Richters, 1997]
Mark Richters. jtrl User Manual. Internal Report, Universität Bremen, 1997.
This manual provides information on using the jtrl system for developing and validating specifications written in the TROLL light language. Such specifications are used for modeling information systems as a set of interacting and communicating objects. With jtrl a model can be validated by direct execution (also called animation) of its specification. The manual presents all steps necessary to work with jtrl. These include instructions on system usage via the various user interfaces: command line, Web interface, and the graph visualization tool daVinci. A complete list of builtin operations and a grammar serve as reference for the language supported by jtrl.
(26 pages, gzipped PostScript: 162kb via HTTP, FTP, uncompressed PostScript: 921kb via HTTP, FTP)


[Richters and Gogolla, 1997a]
Mark Richters and Martin Gogolla. A Web-based Animator for Validating Object Specifications. In Bipin C. Desai and Barry Eaglestone, editors, Proc. Int. Database Engineering and Applications Symposium (IDEAS'97), pages 211-219. IEEE, Los Alamitos, 1997.
One of the central tasks in developing information systems is the specification of desired system properties. We use the object specification language TROLL light to formalize the conceptual model of a system. A TROLL light specification describes structural as well as dynamic characteristics of objects representing real-world entities. For validating specifications, we have developed an animation tool allowing us to reflect structural properties and dynamic behavior. The main concepts of the animator are illustrated by a working example. We present a simple specification of a car rental company and describe some of the steps performed during a typical animation session. The animation allows to check whether desired properties are fulfilled by the given object descriptions. Finally, some design and implementation issues regarding the utilized persistent programming environment and the Web-based user interface are discussed.
(9 pages, gzipped PostScript: 106kb via HTTP, FTP, uncompressed PostScript: 701kb via HTTP, FTP)


[Richters and Gogolla, 1997b]
Mark Richters and Martin Gogolla. A Web User Interface for an Object Specification Language. In Michel Bidoit, editor, Proc. 7th Int. Joint Conf. on Theory and Practice of Software Development (TAPSOFT'97), pages 867-870. Springer, Berlin, LNCS 1214, 1997.
We present an animation tool for the formal specification language TROLL light. The system allows the manipulation and querying of objects and navigation through object hierarchies. A Web-based user interface simplifies the usage of the system.
(5 pages, gzipped PostScript: 69kb via HTTP, FTP, uncompressed PostScript: 436kb via HTTP, FTP)


[Claßen et al., 1996]
Ingo Claßen, Martin Gogolla, and Michael Löwe. Dynamics in Information Systems - An Algebraic Approach to Specification, Construction and Correctness. Forschungsbericht 96/01, Technische Universität Berlin, 1996.
A formal framework based on algebraic graph theory is presented that integrates specification and construction of dynamics in information systems. Specifications are based on temporal logic whose semantics is given by algebras and partial homomorphisms. Constructions are given by graph transformation rules whose operational nature provides a first step towards actual implementations. Both are related by a correctness notion. The formal framework is especially suited as a semantical basis for graphical notations as used in conceptual modeling, thus combining intuitiveness of such notations with precision of formal methods.
(21 pages, gzipped PostScript: 80kb via HTTP, FTP, uncompressed PostScript: 225kb via HTTP, FTP)


[Gärtner and Gogolla, 1996]
Heino Gärtner and Martin Gogolla. LASSY - A System for Analysing Grammatical Dependencies in Latin. In Roland R. Wagner and Helmut Thoma, editors, Proc. 7th Int. Workshop Database and Expert Systems Applications (DEXA'96), pages 275-284. IEEE, Los Alamitos, 1996.
We introduce the Latin analysis system Lassy, a slim system for analyzing Latin sentences. Tools for interacting with a database for morphological features are integrated as well as an interface for defining and applying a grammar database. We also give a small outline of the grammar model used in Lassy which is a pragmatic integration of linguistic theories known from both dependency and phrase structure grammar.
(10 pages, gzipped PostScript: 105kb via HTTP, FTP, uncompressed PostScript: 577kb via HTTP, FTP)


[Gogolla, 1996a]
Martin Gogolla. Parameterizing Object Specifications. In Luigia Aiello, editor, Proc. 4th Int. Symposium Design and Implementation of Symbolic Computation Systems (DISCO'96), pages 126-137. Springer, Berlin, LNCS 1128, 1996.
We present a proposal for parameterized object specifications allowing especially objects sorts in the parameter. These object specifications permit to describe the part of the world to be modeled as an object community of concurrently existing and communicating objects. Our proposal for parameter passing works well on the syntactical level by means of a pushout construction. On the semantic level we use free constructions and corresponding forgetful functors.
(12 pages, gzipped PostScript: 47kb via HTTP, FTP, uncompressed PostScript: 152kb via HTTP, FTP)


[Gogolla, 1996b]
Martin Gogolla. Towards Object Visualization by Conceptual Graphs. In Peter W. Eklund, Gerard Ellis, and Graham Mann, editors, Proc. 4th Int. Conf. Conceptual Structures (ICCS'96), Auxiliary Proceedings, pages 175-188. University of New South Wales, Sydney, 1996.
The specification language TROLL light allows to describe the part of the world to be modeled in the information system design process as a community of concurrently existing and communicating objects. It follows the object paradigm by coherently describing structure as well behavior of conceptual objects. A TROLL light specification is divided into a signature part and an axiom part where formulas over the signature characterizing the object are formulated. Conceptual graphs are employed to visualize object schemata as well as object instances. Thereby, we provide a uniform platform for representing static and dynamic properties of objects and reasoning about them. By giving appropriate graph substitution rules, conceptual structures are capable to express system dynamics as well.
(14 pages, gzipped PostScript: 82kb via HTTP, FTP, uncompressed PostScript: 240kb via HTTP, FTP)


[Gogolla and Richters, 1996]
Martin Gogolla and Mark Richters. An Object Specification Language Implementation with Web User Interface based on Tycoon. In Hartmut Ehrig, Friedrich von Henke, Jose Meseguer, and Martin Wirsing, editors, Specification and Semantics, pages 8-11. Dagstuhl-Seminar-Report Nr. 151, 1996.
We concentrate on the user interface of a TROLL light implementation based on Tycoon. The implementation employs a normal Web browser (Netscape, Mosaic, etc.) for both the exploration of template, i.e. object type, descriptions and objects, i.e. instances of these templates. In particular, objects are represented by HTML documents and object references can be followed simply with the Web browser.
(3 pages, gzipped PostScript: 47kb via HTTP, FTP, uncompressed PostScript: 267kb via HTTP, FTP)


[Meyer et al., 1996]
Bernd Meyer, Gerhard D. Westerman, and Martin Gogolla. Drafting ER and OO Schemas in Prototyping Environments. Data and Knowledge Engineering, 19(3):201-240, 1996.
The system QUEER is a prototype of an information system design tool which directly supports an extended Entity-Relationship model on its front-end and uses a semantically well-founded query and manipulation language based on an Entity-Relationship calculus. The system basically consists of a set of compilers written in PROLOG which translate data specifications, schema definitions, queries, integrity constraints, and data-manipulation statements into PROLOG programs. All features mentioned are implemented in form and extent as described here.
(48 pages, gzipped PostScript: 106kb via HTTP, FTP, uncompressed PostScript: 353kb via HTTP, FTP)


[Wagner and Gogolla, 1996]
Annika Wagner and Martin Gogolla. Defining Operational Behavior of Object Specifications by Attributed Graph Transformations. Fundamenta Informaticae, 3,4:407-431, 1996.
A single pushout approach to the transformation of attributed partial graphs based on categories of partial algebras and partial morphisms is introduced. A sufficient condition for pushouts in these categories is presented. As the synchronization mechanism we use amalgamation of rules and show how synchronization can be minimized. We point out how the results obtained can be employed in order to define an operational semantics for object specification languages.
(25 pages, gzipped PostScript: 93kb via HTTP, FTP, uncompressed PostScript: 348kb via HTTP, FTP)


[Conrad et al., 1995]
Stefan Conrad, Grit Denker, Martin Gogolla, Rudolf Herzig, Nikolaos Vlachantonis, and Hans-Dieter Ehrich. Entwicklung zuverlässiger Informationssysteme. GI EMISA-Forum, 2:25-33, 1995.
Ausgehend von einem einfachen objektorientierten Ansatz zur Modellierung von Objektgesellschaften als Informationssysteme wird insbesondere eine geeignete Entwicklungsumgebung konzipiert, der Bereich Validation von Objektspezifikationen mittels Animation untersucht und ein Beweisunterstützungssystem entworfen, das formale Nachweise von Objekteigenschaften ermöglicht. Ziel ist die Entwicklung von Informationssystemen auf der Grundlage von objektorientierten Datenbanksystemen.
(9 pages, gzipped PostScript: 90kb via HTTP, FTP, uncompressed PostScript: 234kb via HTTP, FTP)


[Gogolla, 1995a]
Martin Gogolla. A Declarative Query Approach to Object Identification. In Mike Papazoglou, editor, Proc. 14th Int. Conf. Object-Oriented and Entity-Relationship Modelling (ER'95), pages 65-76. Springer, Berlin, LNCS 1021, 1995.
Object identification in data models, especially in semantic, Entity-Relationship, and object-oriented data models is studied. Various known approaches to object identification are shown, and an alternative proposal to the topic is put forward. The main new idea is to attach to each object type an arbitrary query in order to observe a unique, identifying property of objects of the corresponding type.
(12 pages, gzipped PostScript: 47kb via HTTP, FTP, uncompressed PostScript: 165kb via HTTP, FTP)


[Gogolla, 1995b]
Martin Gogolla. Identifying Objects by Declarative Queries. In Jan Chomicki, Gunter Saake, and Christina Sernadas, editors, The Role of Logics in Information Systems. Dagstuhl-Seminar-Report Nr. 121, 1995.
In this talk we study object identification in data models, especially in semantic, Entity-Relationship, and object-oriented data models. Various known approaches to object identification are shown, and an alternative proposal to the topic is put forward. The main new idea is to attach to each object type an arbitrary query in order to observe a unique, identifying property of objects of the corresponding type. This proposal seems to be more general than the well-known ``deep equality'' approach. The talk is organized as follows. First we introduce an example schema which will be used throughout the paper, and sketch the interpretation of object schemas in an informal way. Several known and our new proposal (the so-called observation term approach) to object identification are studied afterwards. The advantages of our new proposal are discussed, and its formal definition is mentioned. The talk ends with some concluding remarks.
(1 pages, gzipped PostScript: 16kb via HTTP, FTP, uncompressed PostScript: 89kb via HTTP, FTP)


[Gogolla, 1995c]
Martin Gogolla. Towards Schema Queries for Semantic Data Models. In Norman Revell and A Min Tjoa, editors, Proc. 6th Int. Conf. and Workshop on Database and Expert Systems Applications (DEXA'95), pages 274-283. ONMIPRESS, San Mateo, 1995.
We contribute to metadata management by giving a specification of extended Entity-Relationship schemas with the extended Entity-Relationship model itself. We formulate a number of integrity constraints describing the context-sensitive requirements an extended Entity-Relationship schema has to fulfill. By doing this, a certain class of schema queries can be formulated.
(10 pages, gzipped PostScript: 66kb via HTTP, FTP, uncompressed PostScript: 176kb via HTTP, FTP)


[Gogolla and Cerioli, 1995a]
Martin Gogolla and Maura Cerioli. What is an Abstract Data Type, after all? Technical Report PDISI-95-01, Dipartimento di Informatica e Scienze dell'Informazione, Universita di Genova, 1995.
We look back on ten Workshops on Abstract Data Types. A comprehensive KWIC index of titles of talks held at the workshop, a list of authors referencing their talks and publications, and a bibliography are presented.
(76 pages, gzipped PostScript: 169kb via HTTP, FTP, uncompressed PostScript: 784kb via HTTP, FTP)


[Gogolla and Cerioli, 1995b]
Martin Gogolla and Maura Cerioli. What is an Abstract Data Type, after all? In Egidio Astesiano, Gianna Reggio, and Andrzej Tarlecki, editors, Proc. 10th Int. Workshop Abstract Data Types (WADT'94), pages 499-523. Springer, Berlin, LNCS 906, 1995.
We look back on ten Workshops on Abstract Data Types. Organizers and publications, a list of authors referencing their talks and papers on the workshops, and a workshop bibliography are presented.
(26 pages, gzipped PostScript: 72kb via HTTP, FTP, uncompressed PostScript: 198kb via HTTP, FTP)


[Gogolla and Herzig, 1995a]
Martin Gogolla and Rudolf Herzig. An Algebraic Development Technique for Information Systems. In Vangalur S. Alagar and Maurice Nivat, editors, Proc. 4th Int. Conf. Algebraic Methodology and Software Technology (AMAST'95), pages 446-460. Springer, Berlin, LNCS 936, 1995.
This paper reports on successful application of algebraic ideas to the formal development of software systems, in particular information systems. It describes (1) a formalism, i.e., a language, for the specification of information systems, (2) a method for the construction of specifications in this language, and (3) implemented and planned parts of a specification environment covering important phases of the software development process.
(15 pages, gzipped PostScript: 85kb via HTTP, FTP, uncompressed PostScript: 222kb via HTTP, FTP)


[Gogolla and Herzig, 1995b]
Martin Gogolla and Rudolf Herzig. An Algebraic Semantics for the Object Specification Language TROLL light. In Egidio Astesiano, Gianna Reggio, and Andrzej Tarlecki, editors, Proc. 10th Int. Workshop Abstract Data Types (WADT'94), pages 288-304. Springer, Berlin, LNCS 906, 1995.
Within the KORSO project we have developed the object specification language TROLL light which allows to describe the part of the world to be modeled as a community of concurrently existing and communicating objects. Recently, we have worked out the basic notions of a pure algebraic semantics for our language. The main underlying idea is to present a transition system where the states represent the states of the specified information system, and state transitions are caused by the occurrence of finite sets of events. This semantics is formulated by representing states and state transitions as algebras. The various constructs of TROLL light are unified to general axioms restricting the possible interpretations for TROLL light object descriptions.
(17 pages, gzipped PostScript: 97kb via HTTP, FTP, uncompressed PostScript: 256kb via HTTP, FTP)


[Gogolla et al., 1995a]
Martin Gogolla, Stefan Conrad, Grit Denker, Rudolf Herzig, and Nikolaos Vlachantonis. A Development Environment for an Object Specification Language. IEEE Transactions on Knowledge and Data Engineering, 7(3):505-508, 1995.
Techniques for the development of reliable information systems on the basis of their formal specification are the main concern in our project. Our work focuses on the specification language TROLL light which allows to describe the part of the world to be modeled as a community of concurrently existing and communicating objects. Our specification language comes along with an integrated, open development environment. The task of this environment is to give support for the creation of correct information systems. Two important ingredients of the environment to be described here in more detail are the animator and the proof support system.
(6 pages, gzipped PostScript: 64kb via HTTP, FTP, uncompressed PostScript: 300kb via HTTP, FTP)


[Gogolla et al., 1995b]
Martin Gogolla, Stefan Conrad, Grit Denker, Rudolf Herzig, Nikolaos Vlachantonis, and Hans-Dieter Ehrich. TROLL light - The Language and Its Development Environment. In Manfred Broy and Stefan Jähnichen, editors, KORSO - Methods, Languages, and Tools for the Construction of Correct Software (KORSO'95), pages 204-220. Springer, Berlin, LNCS 1009, 1995.
In our sub-project we are concerned with techniques for the development of reliable information systems on the basis of their formal specification. Our work focuses on the specification language TROLL light which allows to describe the part of the world to be modeled as a community of concurrently existing and communicating objects. Our specification language comes along with an integrated, open development environment. The task of this environment is to give support for the creation of correct information systems. Two important ingredients of the environment to be described here in more detail are the animator and the proof support system.
(16 pages, gzipped PostScript: 84kb via HTTP, FTP, uncompressed PostScript: 229kb via HTTP, FTP)


[Herzig and Gogolla, 1995]
Rudolf Herzig and Martin Gogolla. An Animator for the Object Specification Language TROLL light. In Vangalur S. Alagar and Rokia Missaoui, editors, Proc. Int Colloquium Object Orientation in Databases and Software Engineering (COODBSE'94), pages 156-170. World Scientific, River Edge (NJ), 1995.
In our project we are concerned with techniques for the development of reliable information systems on the basis of their formal specification. Our work focuses on the specification language TROLL light which allows to describe the part of the world to be modeled as a community of concurrently existing and communicating objects. Our specification language comes along with an integrated, open development environment. The task of this environment is to give support for the creation of correct information systems. One important ingredient of the environment to be described here in more detail is the TROLL light animator.
(15 pages, gzipped PostScript: 62kb via HTTP, FTP, uncompressed PostScript: 233kb via HTTP, FTP)


[Herzig et al., 1995]
Rudolf Herzig, Martin Gogolla, and Grit Denker. KORSO Reference Languages: Concepts and Application Domains - TROLL light. In Manfred Broy and Stefan Jähnichen, editors, KORSO - Methods, Languages, and Tools for the Construction of Correct Software (KORSO'95), pages 156-162. Springer, Berlin, LNCS 1009, 1995.
This paper gives an overview of the three KORSO reference languages SPECTRUM, TROLL light, and SPECIAL, exposing their motivation and background, language concepts, and typical application domains. The presentation of the different languages is followed by a discussion to what extent these languages may complement each other in the software development process.
(23 pages, gzipped PostScript: 61kb via HTTP, FTP, uncompressed PostScript: 164kb via HTTP, FTP)


[Conrad et al., 1994]
Stefan Conrad, Martin Gogolla, and Rudolf Herzig. Safe Derivations in Object Hierarchies. In D. Patel, Y. Sun, and S. Patel, editors, Proc. Int. Conf. Object-Oriented Information Systems (OOIS'94), pages 306-319. Springer, London, 1994.
We present a language for specifying structure and behavior of objects in information systems. This language is restricted to a set of core concepts for conceptual modeling. But it includes powerful concepts for specifying constraints and derived data. We present an algorithm for deciding on safe computation of derived information and demonstrate how this algorithm works with an example.
(14 pages, gzipped PostScript: 48kb via HTTP, FTP, uncompressed PostScript: 126kb via HTTP, FTP)


[Denker and Gogolla, 1994]
Grit Denker and Martin Gogolla. Translating TROLL light Concepts to Maude. In Hartmut Ehrig and Fernando Orejas, editors, Proc. 9th Int. Workshop Abstract Data Types (WADT'92), pages 173-187. Springer, Berlin, LNCS 785, 1994.
The specification language TROLL light is designed for the conceptual modeling of information systems. Maude is a logic programming language, which unifies the two paradigms of functional and concurrent object-oriented programming. Because of the very similar features offered by both languages, we present a translation from TROLL light concepts into the Maude language in order to compare the languages. Apart from presenting the translation, the languages are briefly described and illustrated by examples.
(16 pages, gzipped PostScript: 66kb via HTTP, FTP, uncompressed PostScript: 166kb via HTTP, FTP)


[Ehrich et al., 1994]
Hans-Dieter Ehrich, Martin Gogolla, Stefan Conrad, Grit Denker, Rudolf Herzig, and Nikolaos Vlachantonis. Entwicklung zuverlässiger Informationssysteme - Stand der Arbeiten im Januar'94. In Manfred Broy and Stefan Jähnichen, editors, Korrekte Software durch formale Methoden - 6. KORSO-Workshop (KORSO'93), pages 82-94, 1994.
Zwei wichtige Komponenten der TROLL light-Entwicklungsumgebung sind der Animator und das Beweisunterstützungssystem. Der Animator dient dem Prototyping einer mit TROLL light spezifizierten Objektgesellschaft und das Beweisunterstützungssystem hilft beim formalen Nachweis bestimmter Eigenschaften der Spezifikation. Eine andere Komponente ist ein Tool, das den Objektansatz von TROLL light mit der etablierten Entity-Relationship-Modellierungstechnik verbindet.

[Gogolla, 1994a]
Martin Gogolla. An Extended Entity-Relationship Model - Fundamentals and Pragmatics. Springer, Berlin, LNCS 767, 1994.
This text presents a comprehensive introduction to an extended Entity-Relationship model both on a conceptual and on a formal, mathematical level. In addition to the primitives given by the data model the text introduces a language for the formulation of constraints in order to restrict database states to consistent ones. The same language can be used to query databases. The text also explains an implementation of the approach chosen in the logic programming language PROLOG and discusses in this context the computational power of the proposed calculus. Finally, the extended Entity-Relationship calculus is applied in order to define the meaning of the relational query language SQL.
(145 pages, gzipped PostScript: 266kb via HTTP, FTP, uncompressed PostScript: 881kb via HTTP, FTP)


[Gogolla, 1994b]
Martin Gogolla. An Extended Entity-Relationship Model - Fundamentals and Pragmatics. GI EMISA-Forum, 1:80-80, 1994.
This text presents a comprehensive introduction to an extended Entity-Relationship model both on a conceptual and on a formal, mathematical level. In addition to the primitives given by the data model the text introduces a language for the formulation of constraints in order to restrict database states to consistent ones. The same language can be used to query databases. The text also explains an implementation of the approach chosen in the logic programming language PROLOG and discusses in this context the computational power of the proposed calculus. Finally, the extended Entity-Relationship calculus is applied in order to define the meaning of the relational query language SQL.
(1 pages, gzipped PostScript: 17kb via HTTP, FTP, uncompressed PostScript: 89kb via HTTP, FTP)


[Gogolla, 1994c]
Martin Gogolla. An Extended Entity-Relationship Model - Fundamentals and Pragmatics. GI Datenbankrundbrief, 13:86-86, 1994.
This text presents a comprehensive introduction to an extended Entity-Relationship model both on a conceptual and on a formal, mathematical level. In addition to the primitives given by the data model the text introduces a language for the formulation of constraints in order to restrict database states to consistent ones. The same language can be used to query databases. The text also explains an implementation of the approach chosen in the logic programming language PROLOG and discusses in this context the computational power of the proposed calculus. Finally, the extended Entity-Relationship calculus is applied in order to define the meaning of the relational query language SQL.
(1 pages, gzipped PostScript: 17kb via HTTP, FTP, uncompressed PostScript: 89kb via HTTP, FTP)


[Gogolla, 1994d]
Martin Gogolla. Grundlagen von Entity-Relationship-Modellen. Informatik-Skript 33, Technische Universität Braunschweig, 1994.
Nach einer kurzen Motivation in der Datenbanksysteme, Datenmodelle und insbesondere semantische Datenmodelle kurz charakterisiert werden wird das Braunschweiger Erweiterte Entity-Relationship-Modell mit einem zugehörigen Entity-Relationship-Kalkül samt Anwendungen des Kalküls vorgestellt. Es werden anschließend weitere semantische Datenmodelle wie IFO, ERC und OMT auf die Konzepte des vorgenannten Entity-Relationship-Modells zurückgeführt.
(62 pages, gzipped PostScript: 173kb via HTTP, FTP, uncompressed PostScript: 500kb via HTTP, FTP)


[Gogolla, 1994e]
Martin Gogolla. On Formal Semantics of Some Semantic Data Models. In Selahattin Kuru, Ufuk Caglayan, Erol Gelenbe, Levent Akin, and Cem Ersoy, editors, Proc. 9th Int. Symposium Computer and Information Science (ISCIS'94), pages 33-40. Bogazici University Printhouse, Istanbul, 1994.
We explain how different semantic data models like the ER model, the ERC approach and the OMT structural modeling method could be transformed into a semantically well-defined extended Entity-Relationship model and calculus.
(8 pages, gzipped PostScript: 68kb via HTTP, FTP, uncompressed PostScript: 165kb via HTTP, FTP)


[Gogolla et al., 1994a]
Martin Gogolla, Sedat Güler, and Rudolf Herzig. From Object Specification to Enhanced Logic Programming. In Selahattin Kuru, Ufuk Caglayan, Erol Gelenbe, Levent Akin, and Cem Ersoy, editors, Proc. 9th Int. Symposium Computer and Information Science (ISCIS'94), pages 423-430. Bogazici University Printhouse, Istanbul, 1994.
We combine the area of object-oriented specification and object-oriented logic programming by indicating the translation of a specification language into an enhanced logic programming language. The translation shows that in comparison to the programming language the specification language offers richer concepts. The background of our work is the development of rapid prototyping systems for object-oriented specification languages.
(8 pages, gzipped PostScript: 68kb via HTTP, FTP, uncompressed PostScript: 165kb via HTTP, FTP)


[Gogolla et al., 1994b]
Martin Gogolla, Nikolaos Vlachantonis, Rudolf Herzig, Grit Denker, Stefan Conrad, and Hans-Dieter Ehrich. The KORSO Approach to the Development of Reliable Information Systems. Informatik-Bericht 94-06, Technische Universität Braunschweig, 1994.
KORSO was a joint project of fourteen university partners and one industrial partner, sponsored by the German Ministry of Research and Technology (BMFT). The project aimed at the consolidation of existing and the investigation of new methods for the development of correct software. Within this framework the focus of the KORSO group at the Technical University of Braunschweig was on the improvement of techniques for the development of reliable information systems. Our work focused on the specification language TROLL light which allows to describe the part of the world to be modeled as a community of concurrently existing and communicating objects. Our specification language comes along with an integrated, open development environment. The task of this environment is to give support for the creation of correct information systems. This report summarizes the results achieved by the Braunschweig KORSO group.
(59 pages, gzipped PostScript: 172kb via HTTP, FTP, uncompressed PostScript: 468kb via HTTP, FTP)


[Herzig and Gogolla, 1994a]
Rudolf Herzig and Martin Gogolla. A SQL-like Query Calculus for Object-Oriented Database Systems. In Elisa Bertino and Susan Urban, editors, Proc. Int. Symposium Object-Oriented Methodologies and Systems (ISOOMS'94), pages 20-39. Springer, Berlin, LNCS 858, 1994.
Currently much effort is being spent on providing object-oriented databases with ad hoc query facilities. In this paper we present a SQL-like query calculus whose major contribution lies in its inherent orthogonality and rigorous mathematical foundation. The calculus is essentially a calculus of complex values but it is defined independently of any concrete database model. The calculus can be used to formulate queries in value-based and object-based data models. Moreover it provides a general facility for the manipulation of complex values.
(20 pages, gzipped PostScript: 68kb via HTTP, FTP, uncompressed PostScript: 230kb via HTTP, FTP)


[Herzig and Gogolla, 1994b]
Rudolf Herzig and Martin Gogolla. On a Better Formal Basis for Stating SQL-like Queries in Value- And Object-Based Database Systems. Technical Report 9/94, Universität Bremen, 1994.
We present a formalism whose purpose is to serve as a rigid basis for describing SQL-like queries and constraints in context of both value- and object-based data models. The formalism, whose major contribution lies in its inherent orthogonality and rigorous mathematical foundation, is defined independently of any concrete database model. Instead it offers a general facility for the ad-hoc manipulation of structured values. In an improvement to the well-known relational domain or tuple calculi (or their extensions towards extended relational models) the formalism (1) guarantees safe and computable queries in an immanent way, (2) allows to explain duplicates in query results, and (3) supports the composition of queries from subqueries without the need to name intermediate query results. Hence it should be seen closer to concrete SQL than classical query calculi.
(26 pages, gzipped PostScript: 83kb via HTTP, FTP, uncompressed PostScript: 272kb via HTTP, FTP)


[Herzig et al., 1994a]
Rudolf Herzig, Stefan Conrad, and Martin Gogolla. Compositional Description of Object Communities with TROLL light. In Chris Chrisment, editor, Proc. Basque Int. Workshop Information Technology (BIWIT'94), pages 183-194. Cepadues Editions, Toulouse, 1994.
TROLL light is a language for the modeling of information systems. It is designed to describe the Universe of Discourse (UoD) as a system of concurrently existing and interacting objects. TROLL light objects have observable properties modeled by attributes, and the behavior of objects is described by events. Possible object observations may be restricted by constraints, whereas event occurrences may be restricted to specified life cycles. TROLL light objects are organized in an object hierarchy established by subobject relationships. Communication between objects is supported by event calling. Apart from introducing the various possibilities for the syntactical description of objects, we aim to describe how the state of an object community may be changed by event occurrences.
(12 pages, gzipped PostScript: 35kb via HTTP, FTP, uncompressed PostScript: 98kb via HTTP, FTP)


[Herzig et al., 1994b]
Rudolf Herzig, Heiko Fischer, and Martin Gogolla. Zur Gestaltung der Benutzeroberfläche bei der Animation von Objektspezifikationen. GI Datenbankrundbrief, 13:43-45, 1994. Proc. Workshop GI-Fachgruppe Datenbanken.
Im Rahmen des BMFT-Verbundprojekts KORSO beschäftigt sich die Braunschweiger Gruppe mit Aspekten der Entwicklung zuverlässiger Informationssysteme. Der Schwerpunkt liegt dabei auf Fragen der Spezifikation, Analyse und Validierung konzeptioneller Schemata. Zu TROLL light wurde eine Entwicklungsumgebung konzipiert, deren wesentliche, bisher implementierte Bestandteile ein Parser zur syntaktischen Analyse, eine Struktur zur persistenten Ablage, ein Beweisunterstützungssystem zum Nachweis spezieller Eigenschaften und ein Animationssystem zur Validierung von Objektspezifikationen sind. Wir diskutieren einige Anforderungen, die an ein Werkzeug zur Unterstützung der Animation von TROLL light-Objektspezifikationen zu stellen sind, und gehen darauf ein, in welcher Weise diese Anforderungen in der aktuellen Implementierung der Benutzungsschnittstelle des TROLL light-Animationssystems realisiert worden sind.
(4 pages, gzipped PostScript: 77kb via HTTP, FTP, uncompressed PostScript: 279kb via HTTP, FTP)


[Conrad et al., 1993]
Stefan Conrad, Grit Denker, Martin Gogolla, Rudolf Herzig, Nikolaos Vlachantonis, and Hans-Dieter Ehrich. Zur Entwicklung zuverlässiger Informationssysteme in KORSO. In H. Reichel, editor, Proc. 23. GI Jahrestagung (GI'93) - Informatik - Wirtschaft - Gesellschaft, pages 464-469. Springer, Berlin, Informatik Aktuell, 1993.
Innerhalb des KORSO-Projektes verfolgt unsere Gruppe das Ziel, die Entwicklung zuverlässiger Informationssysteme auf der Basis formaler Spezifikationen zu unterstützen. Dazu konzentriert sich unsere Arbeit auf die Spezifikationssprache TROLL light, die es erlaubt, Teile der zu modellierenden Welt als eine Gemeinschaft nebeneinander bestehender und miteinander kommunizierender Objekte zu beschreiben. Auf diese Weise bestimmen wir sowohl die Struktur als auch das Verhalten der konzeptionellen Objekte. Unsere Spezifikationsumgebung für TROLL light erlaubt die Animation von Spezifikationen ebenso wie das Beweisen von Eigenschaften der Spezifikationen unter Verwendung von Theorembeweisern.
(6 pages, gzipped PostScript: 58kb via HTTP, FTP, uncompressed PostScript: 144kb via HTTP, FTP)


[Ehrich et al., 1993a]
Hans-Dieter Ehrich, Martin Gogolla, Stefan Conrad, Grit Denker, Rudolf Herzig, and Nikolaos Vlachantonis. Beiträge zu ``Das BMFT-Verbundprojekt Korrekte Software (KORSO)''. In Manfred Broy and Stefan Jähnichen, editors, Das BMFT-Verbundprojekt Korrekte Software (KORSO), pages 160-161. Informatik - Forschung und Entwicklung, Vol. 8, No. 3, 1993.
Innerhalb des KORSO-Projektes verfolgt unsere Gruppe das Ziel, die Entwicklung zuverlässiger Informationssysteme auf der Basis formaler Spezifikationen zu unterstützen. Dazu konzentriert sich unsere Arbeit auf die Spezifikationssprache TROLL light, die es erlaubt, Teile der zu modellierenden Welt als eine Gemeinschaft nebeneinander bestehender und miteinander kommunizierender Objekte zu beschreiben. Auf diese Weise bestimmen wir sowohl die Struktur als auch das Verhalten der konzeptionellen Objekte. Unsere Spezifikationsumgebung für TROLL light erlaubt die Animation von Spezifikationen ebenso wie das Beweisen von Eigenschaften der Spezifikationen unter Verwendung von Theorembeweisern.

[Ehrich et al., 1993b]
Hans-Dieter Ehrich, Martin Gogolla, Stefan Conrad, Grit Denker, Rudolf Herzig, and Nikolaos Vlachantonis. Entwicklung zuverlässiger Informationssysteme - Stand der Arbeiten im Januar'93. In Manfred Broy and Stefan Jähnichen, editors, Korrekte Software durch formale Methoden - 4. KORSO-Workshop (KORSO'93), pages 50-56, 1993.
Innerhalb des KORSO-Projektes befaßt sich unsere Gruppe damit, die Entwicklung zuverlässiger Informationssysteme auf der Basis formaler Spezifikationen zu unterstützen. Dazu konzentriert sich unsere Arbeit auf die Spezifikationssprache TROLL light, die es erlaubt, Teile der zu modellierenden Welt als eine Gemeinschaft nebeneinander bestehender und miteinander kommunizierender Objekte zu beschreiben. Auf diese Weise bestimmen wir sowohl die Struktur als auch das Verhalten konzeptioneller Objekte. Unsere Spezifikationsumgebung für TROLL light erlaubt die Animation von Spezifikationen ebenso wie das Beweisen von Eigenschaften der Spezifikationen unter Verwendung von Theorembeweisern.

[Gogolla, 1993a]
Martin Gogolla. A Computational Model for TROLL light. In Hartmut Ehrig, Friedrich von Henke, Jose Meseguer, and Martin Wirsing, editors, Specification and Semantics. Dagstuhl-Seminar-Report Nr. 64, 1993.
The object specification language TROLL light is intended to be used for conceptual modeling of information systems. It is designed to describe the Universe of Discourse (UoD) as a system of concurrently existing and interacting objects, i.e., an object community. The first part of the talk introduces the various language concepts offered by TROLL light. The second part of our paper outlines a simplified computational model for TROLL light. After introducing signatures for collections of object types we explain how single states of an object community are constructed. By parallel occurrence of a finite set of events the states of object communities change. The object community itself is regarded as a graph where the nodes are the object community states reachable from an initial state and the edges represent transitions between states.
(1 pages, gzipped PostScript: 20kb via HTTP, FTP, uncompressed PostScript: 118kb via HTTP, FTP)


[Gogolla, 1993b]
Martin Gogolla. Some Examples for TROLL light Templates. In Hans-Dieter Ehrich, editor, Beiträge zu KORSO- und TROLL light-Fallstudien, pages 51-62. Technische Universität Braunschweig, Informatik-Bericht Nr. 93-11, 1993.
We introduce some small examples for templates which are given in the language TROLL light which is intended for the specification of conceptual objects in information systems. The spectrum of our examples ranges however from rather untypical information systems like clocks, counters, or flipflops over stacks and trees to more specific information system applications like libraries.
(68 pages, gzipped PostScript: 191kb via HTTP, FTP, uncompressed PostScript: 517kb via HTTP, FTP)


[Gogolla, 1993c]
Martin Gogolla. TROLL light - A Core Language for Specifying Objects. In Catriel Beeri, Andreas Heuer, Gunter Saake, and Susan Urban, editors, Formal Aspects of Object Base Dynamics. Dagstuhl-Seminar-Report Nr. 62, 1993.
TROLL light is a language for conceptual modeling of information systems. It is designed to describe the Universe of Discourse (UoD) as a system of concurrently existing and interacting objects. As a basis for our language we took the specification language TROLL. However, some details have been added or modified in order to round off TROLL light. This was necessary because we needed a clear and balanced semantic basis for our specification language. In TROLL light classes are understood as composite objects having the class extension as sub-objects. Therefore in contrast to TROLL an extra notion of class is not needed in TROLL light. Over and above that concepts like class attributes, meta-classes, or heterogeneous classes are inherent in TROLL light. Second TROLL light incorporates a query calculus providing a general declarative query facility for object-oriented databases.
(1 pages, gzipped PostScript: 31kb via HTTP, FTP, uncompressed PostScript: 170kb via HTTP, FTP)


[Gogolla and Claßen, 1993]
Martin Gogolla and Ingo Claßen. An Object-Oriented Design for the ACT ONE Environment. In Maurice Nivat, Charles Rattray, Theodor Rus, and Giuseppe Scollo, editors, Proc. 3rd Int. Conf. Algebraic Methodology and Software Technology (AMAST'93), pages 361-368. Springer, London, Workshops in Computing, 1993.
We define a conceptual model, i.e., an information system schema, for the well-established algebraic specification language ACT ONE and its accompanying specification environment. This paper gives a formal description of suitable database support for an environment supporting the interactive development of ACT ONE specifications. The object-oriented data model of TROLL light, a language developed recently within the KORSO project, is used to present the design of such an environment and its dynamic behavior. However, the concepts used are general enough to support other specification and even programming languages as well. Therefore, we feel the design of a conceptual schema for ACT ONE is mainly a case study in employing an object-oriented data model for database support of specification or programming languages. It is therefore a proposal for the consolidation of environments for algebraic specification languages.
(8 pages, gzipped PostScript: 55kb via HTTP, FTP, uncompressed PostScript: 134kb via HTTP, FTP)


[Gogolla et al., 1993a]
Martin Gogolla, Stefan Conrad, and Rudolf Herzig. Sketching Concepts and Computational Model of TROLL light. In Alfonso Miola, editor, Proc. 3rd Int. Symposium Design and Implementation of Symbolic Computation Systems (DISCO'93), pages 17-32. Springer, Berlin, LNCS 722, 1993.
The specification language TROLL light is intended to be used for conceptual modeling of information systems. It is designed to describe a system of concurrently existing and interacting objects. We introduces the various language concepts offered by TROLL light. TROLL light objects have observable properties modeled by attributes, and the behavior of objects is described by events. TROLL light objects are organized in an object hierarchy established by sub-object relationships. Communication among objects is supported by event calling. We outlines a simplified computational model for TROLL light. We explain how single states of an object community are constructed. By parallel occurrence of a finite set of events the states of object communities change. The object community itself is regarded as a graph where the nodes are the object community states reachable from an initial state and the edges represent transitions between states.
(16 pages, gzipped PostScript: 106kb via HTTP, FTP, uncompressed PostScript: 264kb via HTTP, FTP)


[Gogolla et al., 1993b]
Martin Gogolla, Rudolf Herzig, Stefan Conrad, Grit Denker, and Nikolaos Vlachantonis. Integrating the ER Approach in an OO Environment. In Ramez Elmasri, Vram Kouramajian, and Bernhard Thalheim, editors, Proc. 12th Int. Conf. Entity-Relationship Approach (ER'93), pages 376-389. Springer, Berlin, LNCS 823, 1993.
We translate Entity-Relationship (ER) schemas into the object-oriented specification language TROLL light. This language describes the Universe of Discourse (UoD) as a system of concurrently existing and interacting objects, i.e., an object community. Thereby two essential aspects, structure and behavior, are integrated in one formalism. By doing the translation from ER to TROLL light we preserve the visual advantages of the former and receive a formalism through the latter which can be mapped to an adequate object-oriented database system. Proceeding this way we hope our proposal for transforming ER schemas into TROLL light specifications provides a valuable link between structural and dynamic modeling.
(14 pages, gzipped PostScript: 94kb via HTTP, FTP, uncompressed PostScript: 231kb via HTTP, FTP)


[Vlachantonis et al., 1993]
Nikolaos Vlachantonis, Rudolf Herzig, Martin Gogolla, Grit Denker, Stefan Conrad, and Hans-Dieter Ehrich. Towards Reliable Information Systems: The KORSO Approach. In Colette Rolland, Francois Bodart, and Corine Cauvet, editors, Proc. 5th Int. Conf. Advanced Information Systems Engineering (CAiSE'93), pages 463-483. Springer, Berlin, LNCS 685, 1993.
Within the compound project KORSO our team is concerned with the research on techniques and methods for the development of reliable information systems on the basis of formal specifications. Our work focuses on the specification language TROLL light which allows to describe the part of the world which is to be modeled as a community of concurrently existing and communicating objects by determining their structure as well as their behavior. Moreover we develop and implement a computer aided specification environment for TROLL light which permits specification animation as well as the proof of properties of specifications.
(20 pages, gzipped PostScript: 87kb via HTTP, FTP, uncompressed PostScript: 229kb via HTTP, FTP)


[Conrad and Gogolla, 1992]
Stefan Conrad and Martin Gogolla. An Annotated Bibliography on Object-Orientation and Deduction. ACM SIGMOD Record, 21(1):123-132, 1992.
This note tries to briefly survey research activities and results on the integration of object-oriented concepts and deductive database languages.
(10 pages, gzipped PostScript: 61kb via HTTP, FTP, uncompressed PostScript: 150kb via HTTP, FTP)


[Conrad et al., 1992]
Stefan Conrad, Martin Gogolla, and Rudolf Herzig. TROLL light - A Core Language for Specifying Objects. Informatik-Bericht 92-02, Technische Universität Braunschweig, 1992.
TROLL light is a language for conceptual modeling of information systems. It is designed to describe the Universe of Discourse (UoD) as a system of concurrently existing and interacting objects. TROLL light objects have observable properties modeled by attributes, and the behavior of objects is described by events. Possible object observations may be restricted by constraints, whereas event occurrences may be restricted to specified life cycles. TROLL light objects are organized in an object hierarchy established by subobject relationships. Communication among objects is supported by event calling. Apart from introducing the various possibilities for the syntactical description of objects, we aim to describe how the state of an object community may be changed by event occurrences.
(26 pages, gzipped PostScript: 114kb via HTTP, FTP, uncompressed PostScript: 301kb via HTTP, FTP)


[Engels et al., 1992]
Gregor Engels, Martin Gogolla, Uwe Hohenstein, Klaus Hülsmann, Perdita Löhr-Richter, Gunter Saake, and Hans-Dieter Ehrich. Conceptual Modelling of Database Applications Using an Extended ER Model. Data and Knowledge Engineering, 9(2):157-204, 1992.
In this paper, we motivate and present a data model for conceptual design of structural and behavioural aspects of databases. We follow an object centered design paradigm in the spirit of semantic data models. The specification of structural aspects is divided into modelling of object structures and modelling of data types used for describing object properties. The specification of object structures is based on an Extended Entity-Relationship (EER) model. The specification of behavioural aspects is divided into the modelling of admissible database state evolutions by means of temporal integrity constraints and the formulation of database (trans)actions. The central link for integrating these design components is a descriptive logic-based query language for the EER model. The logic part of this language is the basis for static constraints and descriptive action specifications by means of pre- and postconditions.
(58 pages, gzipped PostScript: 163kb via HTTP, FTP, uncompressed PostScript: 484kb via HTTP, FTP)


[Gogolla, 1992a]
Martin Gogolla. Contributions to ``A Framework for Software Development in KORSO''. In Martin Wirsing, editor, A Framework for Software Development in KORSO. Ludwig-Maximilians-Universität München, Institut für Informatik, Bericht 9205, 1992.
This paper reports on the results of the first meeting of the KORSO methods group, held in Munich, January 1992. It presents an outline of a framework for a software development methodology in KORSO. The framework is based on a generic algebraic-axiomatic approach to software development. Goals and requirements for KORSO developments are described. The roles of correctness and verification are discussed.

[Gogolla, 1992b]
Martin Gogolla. Fundamentals and Pragmatics of an Entity-Relationship Approach. Habilitation thesis, Technische Universität Braunschweig, Naturwissenschaftliche Fakultät, 1992. Submitted November 1992, Accepted May 1993.
This text presents a comprehensive introduction to an extended Entity-Relationship model both on a conceptual and on a formal, mathematical level. In addition to the primitives given by the data model the text introduces a language for the formulation of constraints in order to restrict database states to consistent ones. The same language can be used to query databases. The text also explains an implementation of the approach chosen in the logic programming language PROLOG and discusses in this context the computational power of the proposed calculus. Finally, the extended Entity-Relationship calculus is applied in order to define the meaning of the relational query language SQL.
(145 pages, gzipped PostScript: 266kb via HTTP, FTP, uncompressed PostScript: 881kb via HTTP, FTP)


[Herzig and Gogolla, 1992]
Rudolf Herzig and Martin Gogolla. Transforming Conceptual Data Models into an Object Model. In Günter Pernul and A Min Tjoa, editors, Proc. 11th Int. Conf. Entity-Relationship Approach (ER'92), pages 280-298. Springer, Berlin, LNCS 645, 1992.
In this paper a conceptually simple structural object model focusing on object types, attributes and ISA relationships is introduced. The model is derived mainly from an extended Entity-Relationship approach, but concepts from other semantic and object-oriented models have influenced its features. It is shown how high-level conceptual data models can be mapped to this model, and to what extent the object model subsumes classical modeling paradigms.
(19 pages, gzipped PostScript: 108kb via HTTP, FTP, uncompressed PostScript: 278kb via HTTP, FTP)


[Claßen and Gogolla, 1991]
Ingo Claßen and Martin Gogolla. Towards a Conceptual Model for the Environment of the Algebraic Specification Language ACT ONE. Forschungsbericht 91/11, Technische Universität Berlin, 1991.
The paper defines a conceptual model for the algebraic specification language ACT ONE and its accompanying specification environment. But the approach chosen is quite general and can be employed for other specification languages as well. The definition of the database schema including integrity constraints is done by means of an expressive and semantically well-founded extended Entity-Relationship model and a respective calculus. The basic idea is to start with the context free grammar of ACT ONE and to introduce entity types for non-terminal symbols. Productions are modelled by a type construction and appropriate components. Context sensitive conditions are translated into integrity constraints formulated in the calculus. This approach especially allows to describe various degrees of incompleteness of ACT ONE types, for instance whether an ACT ONE type has already been checked syntactically or whether the flat equivalent of the type is available.
(24 pages, gzipped PostScript: 100kb via HTTP, FTP, uncompressed PostScript: 261kb via HTTP, FTP)


[Ehrich et al., 1991]
Hans-Dieter Ehrich, Martin Gogolla, and Amilcar Sernadas. Objects and Their Specification. In Michel Bidoit and Christine Choppy, editors, Proc. 8th Int. Workshop Abstract Data Types (WADT'91), pages 40-65. Springer, Berlin, LNCS 655, 1991.
Object-oriented concepts and constructions are explained in an informal and language-independent way. Various algebraic approaches for dealing with objects and their specification are examined, ADT-based ones as well as process-based ones. The conclusion is that the process view of objects seems to be more appropriate than the data type view.
(26 pages, gzipped PostScript: 97kb via HTTP, FTP, uncompressed PostScript: 255kb via HTTP, FTP)


[Gogolla and Ehrich, 1991]
Martin Gogolla and Hans-Dieter Ehrich. Contributions to ``COMPASS - A Comprehensive Algebraic Approach to System Specification and Development''. In Michel Bidoit, Hans-Jörg Kreowski, Pierre Lescanne, Fernando Orejas, and Don Sannella, editors, COMPASS - A Comprehensive Algebraic Approach to System Specification and Development. Springer, Berlin, LNCS 501, 1991.
This volume arose out of the work of the COMPASS Basic Research Working Group, funded by the European Community under the Basic Research Action programme, ref. no. 3264. The name COMPASS stands for ``a COMPrehensive Algebraic approach to System Specification and development''. An early version of this document was included in the original COMPASS project proposal as a review of the state of the art. The current version is the result of suggestions for improvements from the participants in the COMPASS project, assembled and edited into a more or less coherent form by five editors. Since the COMPASS working group includes most of the leading European experts in algebraic specification, the result should be a relatively comprehensive overview of the main work in the field. In spite of its deficiencies, we hope that it nevertheless represents a useful snapshot of the current state of the art.

[Gogolla and Hohenstein, 1991]
Martin Gogolla and Uwe Hohenstein. Towards a Semantic View of an Extended Entity-Relationship Model. ACM Transactions on Database Systems, 16(3):369-416, 1991.
This paper introduces an extended ER model concentrating nearly all concepts of known so-called semantic data models to a few syntactical constructs. Moreover, we provide our extended ER model with a formal mathematical semantics. On this basis a well-founded calculus is developed taking into account data operations on arbitrary user-defined data types and aggregate functions. We pay special attention to arithmetic operations as well as multivalued terms allowing nested queries in a uniform and consistent manner. We prove our calculus only allows the formulation of safe terms and queries yielding a finite result, and to be (at least) as expressive as the relational calculi.
(48 pages, gzipped PostScript: 5025kb via HTTP, FTP, uncompressed PostScript: 47544kb via HTTP, FTP)


[Gogolla et al., 1991]
Martin Gogolla, Bernd Meyer, and Gerhard D. Westerman. Drafting Extended Entity-Relationship Schemas with QUEER. In Toby Teorey, editor, Proc. 10th Int. Conf. Entity-Relationship Approach (ER'91), pages 561-585. ER Institute, San Mateo, 1991.
The system QUEER is a prototype of an information system design tool which directly supports an extended Entity-Relationship model on its front-end and uses a semantically well-founded query and manipulation language based on an Entity-Relationship calculus. The system basically consists of a set of compilers written in PROLOG which translate data specifications, schema definitions, queries, integrity constraints, and data-manipulation statements into PROLOG programs. All features mentioned are implemented in form and extent as described here.
(25 pages, gzipped PostScript: 111kb via HTTP, FTP, uncompressed PostScript: 290kb via HTTP, FTP)


[Engels et al., 1990]
Gregor Engels, Martin Gogolla, Uwe Hohenstein, Klaus Hülsmann, Perdita Löhr-Richter, Gunter Saake, and Hans-Dieter Ehrich. Conceptual Modelling of Database Applications Using an Extended ER Model. Informatik-Bericht 90-05, Technische Universität Braunschweig, 1990.
In this paper, we motivate and present a data model for conceptual design of structural and behavioural aspects of databases. We follow an object centered design paradigm in the spirit of semantic data models. The specification of structural aspects is divided into modelling of object structures and modelling of data types used for describing object properties. The specification of object structures is based on an Extended Entity-Relationship (EER) model. The specification of behavioural aspects is divided into the modelling of admissible database state evolutions by means of temporal integrity constraints and the formulation of database (trans)actions. The central link for integrating these design components is a descriptive logic-based query language for the EER model. The logic part of this language is the basis for static constraints and descriptive action specifications by means of pre- and postconditions.
(58 pages, gzipped PostScript: 163kb via HTTP, FTP, uncompressed PostScript: 484kb via HTTP, FTP)


[Gogolla, 1990a]
Martin Gogolla. A Note on the Translation of SQL to Tuple Calculus. Bulletin of the EATCS, 40:231-236, 1990.
This note presents a translation of a subset of the relational query language SQL into the well known tuple calculus. Roughly speaking, tuple calculus corresponds to first order predicate calculus. The SQL subset is relationally complete and represents a ``relational core'' of the language. Nevertheless, our translation is simple and elegant. Therefore it is especially well suited as a beginners course into the principles of a formal definition of SQL.
(5 pages, gzipped PostScript: 47kb via HTTP, FTP, uncompressed PostScript: 117kb via HTTP, FTP)


[Gogolla, 1990b]
Martin Gogolla. A Note on the Translation of SQL to Tuple Calculus. ACM SIGMOD Record, 19(1):18-22, 1990.
This note presents a translation of a subset of the relational query language SQL into the well known tuple calculus. Roughly speaking, tuple calculus corresponds to first order predicate calculus. The SQL subset is relationally complete and represents a ``relational core'' of the language. Nevertheless, our translation is simple and elegant. Therefore it is especially well suited as a beginners course into the principles of a formal definition of SQL.
(5 pages, gzipped PostScript: 47kb via HTTP, FTP, uncompressed PostScript: 117kb via HTTP, FTP)


[Gogolla, 1990c]
Martin Gogolla. Datalog - Eine deduktive Datenbanksprache. Informatik-Skript 25, Technische Universität Braunschweig, 1990.
Die vorliegenden Notizen sind Überarbeitungen der Folien, die für eine Vorlesung verwendet wurden. Stoffauswahl und Detailierungsgrad waren wesentlich von dem Umstand bestimmt, daß eine zweistündige Veranstaltung in einem Sommersemester mit 12 Wochen gehalten wurde. Die Struktur der Vorlesung lehnt sich an einen Übersichtsartikel von Ceri, Gottlob und Tanca an. Zusätzliche Definitionen, Sätze, Verfahren und Beispiele stammen aus der angegebenen Literatur. Andere Beispiele wurden in der Veranstaltung entwickelt. Die Hörer der Vorlesung haben durch kritische Fragen und Bemerkungen zur Verbesserung des Materials beigetragen.

[Gogolla and Karge, 1990]
Martin Gogolla and Ulrich Karge. Zur formalen Semantik von SQL. In Udo Walter Lipeck, Stefan Braß, and Gunter Saake, editors, Kurzfassungen 2. Workshop Grundlagen von Datenbanken (GvD'90), pages 27-29. Technische Universität Braunschweig, Informatik-Bericht Nr. 90-02, 1990.
Es wird ein Vorschlag zur Definition der formalen Semantik von SQL auf der Grundlage eines erweiterten Entity-Relationship-Kalküls diskutiert. Dieser zugrunde liegende Kalkül gestattet insbesondere eine semantisch wohl-definierte Verwendung von Aggregierungsfunktionen auf der Grundlage von Multimengen. Damit ist es möglich, sowohl die SQL Gruppierungsmöglichkeiten mittels GROUP BY als auch die (zumindest teilweise) hierauf basierenden SQL Aggregierungen MAX, MIN, AVG, COUNT und SUM präzise zu erklären. Auf dieser Grundlage können so Aussagen u.a. über die Äquivalenz von Anfragen und somit über beweisbare Eigenschaften der Sprache gemacht werden. Auf diesem Weg wird dann auch gezeigt, daß Unteranfragen, die mittels IN, ALL, ANY oder EXISTS gebildet werden, sich durch ein einziges Konstrukt, nämlich COUNT ausdrücken lassen.

[Karge and Gogolla, 1990]
Ulrich Karge and Martin Gogolla. Formal Semantics of SQL Queries. Informatik-Bericht 90-02, Technische Universität Braunschweig, 1990.
A formal semantics of the relational query language SQL (Structured Query Language) is presented by translating SQL into an extended relational calculus. This calculus allows the handling of grouping and aggregation as well as null vallues, and therefore special emphasis is laid on the correct translation of grouping and aggregation of SQL. The translation of an SQL query is performed in eight steps. Some steps can be omitted for most of the queries. Making use of the presented translation, it is possible to prove properties of SQL, e.g. subqueries which are added with IN, ALL, or EXISTS can be replaced equivalently by subqueries using the aggregation function COUNT.

[Meyer et al., 1990]
Bernd Meyer, Gerhard D. Westerman, and Martin Gogolla. QUEER - A Prolog Based Prototype for an Extended ER Approach. Informatik-Bericht 90-03, Technische Universität Braunschweig, 1990.
The combination of logic programming and databases has been given broad attention in recent years. However, mainly the connections between the relational data model and logic programming have been investigated. The application of logic programming languages as a basis for information systems founded on more complex, i.e. conceptual data models has received comparatively less attention. With the system QUEER, we introduce the prototype of a PROLOG-based information system which directly supports an extended Entity-Relationship model on its front-end and uses a semantically well-founded query and manipulation language based on an Entity-Relationship calculus. The system basically consists of a set of compilers written in PROLOG which translate data specifications, schema definitions, queries, and data-manipulation statements into PROLOG programs.
(36 pages, gzipped PostScript: 136kb via HTTP, FTP, uncompressed PostScript: 367kb via HTTP, FTP)


[Ehrich et al., 1989a]
Hans-Dieter Ehrich, Gregor Engels, Martin Gogolla, and Gunter Saake, editors. Abstracts Workshop Grundlagen von Datenbanken (GvD'89). Technische Universität Braunschweig, Informatik-Bericht Nr. 89-02, 1989.
Der vorliegende Bericht faßt die Kurzfassungen der Vorträge zusammen, die für den Workshop Grundlagen von Datenbanken (16.-19.5.89 im Herrenhaus Volkse) angemeldet wurden. Der Workshop hat das Anliegen, die Kommunikation zwischen den deutschsprachigen Arbeitsgruppen zu fördern, die um Bereich der theoretischen, konzeptionellen und methodologischen Grundlagen von Daten- und Wissensbanken arbeiten. Insbesondere den jüngeren Nachwuchswissenschaftlern soll der Workshop Gelegenheit bieten, in zwangloser Umgebung Ideen, Ansätze und Ergebnisse auszutauschen und zu diskutieren. Die Vielfalt der Anmeldungen zeigt, daß für Workshops dieser Art - und dieser Thematik - ein großer Bedarf besteht.

[Ehrich et al., 1989b]
Hans-Dieter Ehrich, Martin Gogolla, and Udo Walter Lipeck. Algebraische Spezifikation Abstrakter Datentypen - Eine Einführung in die Theorie. Leitfäden und Monographien der Informatik. Teubner, Stuttgart, 1989.
Dieses Buch ist aus der Überarbeitung und Erweiterung von Notizen zu Vorlesungen entstanden, die seit 1977 zunächst vom ersten Autor an der Universität Dortmund, seit 1982 dann von allen drei Autoren in wechselnder Folge an der Technischen Universität Braunschweig gehalten wurden. Der Schwerpunkt des Buches liegt bei den theoretischen Grundlagen, jedoch haben die Möglichkeiten und Grenzen praktischer Anwendung die Auswahl und die Gestaltung des Stoffes stark beeinflußt. Das Buch richtet sich vornehmlich an Informatiker, die sich mit Grundlagen des Software-Entwurfs auseinandersetzen wollen, und an Mathematiker, die sich für Anwendungen der universellen Algebra und der Logik in der Informatik interessieren.

[Gogolla, 1989a]
Martin Gogolla. Algebraization and Integrity Constraints for an Extended Entity-Relationship Approach. In Josep Diaz and Fernando Orejas, editors, Proc. 3rd Int. Joint Conf. Theory and Practice of Software Development (TAPSOFT'89), pages 259-274. Springer Berlin, LNCS 351, 1989.
An extended Entity-Relationship model concentrating nearly all concepts of known ``semantic'' data models and especially allowing arbitrary user defined data types is introduced. The semantics of the model is described purely in algebraic terms mainly based on the notions of signature, algebra and extension. On this basis a calculus making intensive use of abstract data types is defined and employed for the formulation of typical integrity constaints like functional restrictions and key specifications.
(16 pages, gzipped PostScript: 70kb via HTTP, FTP, uncompressed PostScript: 186kb via HTTP, FTP)


[Gogolla, 1989b]
Martin Gogolla. Zur Übersetzung eines ER-Kalküls nach Prolog. In Hans-Dieter Ehrich, Gregor Engels, Martin Gogolla, and Gunter Saake, editors, Abstracts Workshop Grundlagen von Datenbanken (GvD'89). Technische Universität Braunschweig, Informatik-Bericht Nr. 89-02, 1989.
Auf der Basis eines erweiterten ER Modells werden sowohl Schemata als auch die zugehörigen Datenbanzustände mittels Prolog-Fakten dargestellt. Es wird ein Verfahren angegeben, das es gestattet, Terme eines auf dem erweiterten ER Modell aufbauenden Kalküls in äquivalente Prolog-Prädikate zu übersetzen. Mit Hilfe dieser Terme bzw. der entsprechenden Prolog-Prädikate lassen sich einerseits Anfragen bzgl. des gegebenen Datenbankzustands formulieren und auswerten. Andererseits dienen diese Terme bzw. die äquivalenten Prolog-Prädikate auch zur Überprüfung (statischer) Integritätsbedingengen im repräsentierten Zustand.

[Gogolla and Ehrich, 1989]
Martin Gogolla and Hans-Dieter Ehrich. Contributions to ``COMPASS - A Comprehensive Algebraic Approach to System Specification and Development''. In Bernd Krieg-Brückner, editor, COMPASS - A Comprehensive Algebraic Approach to System Specification and Development. Universität Bremen, Informatik-Bericht 6/89, 1989.
COMPASS is funded as a Basic Research Workong Group under the ESPRIT Programme of the European Communities. This document contains those three chapters of the original proposal that we believe to be of potential interest to a wider audience. The first chapter states the general objectives of the cooperation in the Working Group. The second chapter gives a summary of the State of the Art for and of our own work as we saw it in June 1988. Thus it is in many ways incomplete with respect to the work of others and does not claim full coverage. We believe, however, that it provides an overview that might be of interest for other researchers in the area of Formal Methods in Computing Science. The third chapter lists the references to work mentioned in the previous chapter. Again, it is by no means complete. Overall, chapter II and III can be regarded as a first approximation of an annotated bibliography of the area of algebraic specification.

[Ehrich et al., 1988]
Hans-Dieter Ehrich, Klaus Drosten, and Martin Gogolla. Towards an Algebraic Semantics for Database Specification. In Robert A. Meersman and Amilcar C. Sernadas, editors, Proc. 2nd IFIP 2.6 Working Conf. Database Semantics (DS-2'86), pages 119-135. North Holland, Amsterdam, 1988.
In the framework of a modal-algebraic approach to database semantics, the specification of abstract object types on the basis of abstract data types is studied. As a semantic framework for determining admissible states and state sequences, a standard universe of ``possible objects'' and their interrelationships has to be associated with a schema specification. This paper gives a construction of such a standard universe from a given key system including certain constraints. There is also an abstract algebraic characterisation of the universe (up to isomorphism) in the terms of final algebras. Within this framework, a general definition of admissible states and state sequences as the semantics of a schema specification is discussed briefly.

[Hohenstein and Gogolla, 1988a]
Uwe Hohenstein and Martin Gogolla. A Calculus for an Extended Entity-Relationship Model Incorporating Arbitrary Data Operations and Aggregate Functions. In Carlo Battini, editor, Proc. 7th Int. Conf. Entity-Relationship Approach (ER'88), pages 129-148. North-Holland, Amsterdam, 1988.
We propose a semantically well-founded Entity-Relationship calculus that takes into account data operations (especially arithmetic operations) on arbitrary defineable data types and aggregate functions, as well as multivalued terms allowing nested queries in a uniform and consistent manner. We define our calculus in a way that only allows the formulation of safe terms and queries (yielding a finite result) and that it is (at least) as powerful as the relational calculi. The calculus is based upon an extended ER model concentrating nearly all concepts of known so-called semantic data models to a few syntactical constructs. Moreover, we provide our extended ER model with a formal semantics, since otherwise the semantics of the calculus cannot be defined mathematically precise.

[Hohenstein and Gogolla, 1988b]
Uwe Hohenstein and Martin Gogolla. Towards a Semantic View of an Extended Entity-Relationship Model. Informatik-Bericht 88-02, Technische Universität Braunschweig, 1988.
This paper introduces an extended ER model concentrating nearly all concepts of known so-called semantic data models to a few syntactical constructs. Moreover, we provide our extended ER model with a formal mathematical semantics. On this basis a well-founded calculus is developed taking into account data operations on arbitrary user-defined data types and aggregate functions. We pay special attention to arithmetic operations as well as multivalued terms allowing nested queries in a uniform and consistent manner. We prove our calculus only allows the formulation of safe terms and queries yielding a finite result, and to be (at least) as expressive as the relational calculus.

[Gogolla, 1987]
Martin Gogolla. On Parametric Algebraic Specifications with Clean Error Handling. In Hartmut Ehrig, Robert Kowalski, and Giorgio Levi, editors, Proc. 2nd Int. Joint Conf. Theory and Practice of Software Development (TAPSOFT'87), pages 81-95. Springer, Berlin, LNCS 249, 1987.
Usual algebraic specification techniques can be extended to treat partially ordered sorts. This allows the introduction of sub- and supersorts as well as overloaded operators, while pleasant features of the equational specification method (e.g. existence of initial algebras and equivalence of algebraic and operational semantics) are preserved. On this basis error and exception handling is studied. For each sort an ok and an error subsort is introduced and clean algebras (i.e. algebras which are ok-error-consistent and ok-error-complete) are considered. This new approach allows to prove an extension lemma for persistent parametric specifications which permit error handling.

[Ehrich et al., 1986]
Hans-Dieter Ehrich, Klaus Drosten, Martin Gogolla, and Udo Walter Lipeck, editors. Abstracts 4th Int. Workshop Abstract Data Types (WADT'86). Technische Universität Braunschweig, Informatik-Bericht Nr. 86-09, 1986.
Here are the abstracts of talks presented at the 4th Workshop on Specification of Abstract Data Types which was held at Burg Warberg near Braunschweig, May 20-23, 1986. About 70 participants attended the workshop, more than ever before in this series of workshops, starting in Langscheid 1982 and going on in Passau 1983 and in Bremen 1984. We all look forward to the next meeting in Edinburgh which is scheduled to take place in fall 1987 and will be organized by Don Sannella.

[Gogolla, 1986a]
Martin Gogolla. Exception Handling and Subsorts. In Hans-Dieter Ehrich, Klaus Drosten, Martin Gogolla, and Udo Walter Lipeck, editors, Abstracts 4th Int. Workshop Abstract Data Types (WADT'86). Technische Universität Braunschweig, Informatik-Bericht Nr. 86-09, 1986.
Usual algebraic specification techniques can be extended to treat partially ordered sorts. This allows the introduction of sub- and supersorts as well as overloaded operators, while pleasant features of the equational specification method (e.g. existence of initial algebras and equivalence of algebraic and operational semantics) are preserved. Partially ordered sorts can also be used as a basis for exception and error handling. We discuss three different, but closey related methods: (1) Ok-subsorts, (2) error-subsorts, and (3) disjoint ok- and error-subsorts. In particular, the three approaches are considered with respect to error introduction, error propagation and error recovery.

[Gogolla, 1986b]
Martin Gogolla. Über Partiell Geordnete Sortenmengen und deren Anwendung zur Fehlerbehandlung in Abstrakten Datentypen. PhD thesis, Technische Universität Braunschweig, Naturwissenschaftliche Fakultät, 1986. Mainly material from the CAAP'84, TCS'84, WADT'84 and TAPSOFT'87 papers.
Algebraische Spezifikationen von Datentypen werden um Ausdrucksmittel zur Darstellung von Halbordnungen auf den Trägern erweitert. Dies ermöglicht insbesondere die Behandlung von Unter- und Obersorten. Neben Gleichungen werden auch Deklarationen in Spezifikationen zugelassen, die es gestatten, einem Term eine neue Sorte zuzuweisen. Als Semantik ergibt sich stets eine initiale Algebra. Auf dieser Basis werden verschiedene Methoden zur Behandlung von Fehlern und Ausnahmen in abstrakten Datentypen vorgestellt, und ein Vorschlag zu deren Parametrisierung wird diskutiert.

[Gogolla, 1985a]
Martin Gogolla. A Final Algebra Semantics for Errors and Exceptions. Informatik-Bericht 85-06, Technische Universität Braunschweig, 1985.
Algebraic specifications allowing equations and inequations are studied. A characterisation of the existence of models and initial algebras as well as a criterion for the existence of final algebras for such specifications are given. As an application it is shown, how the result can be applied to yield maximal error propagation preserving error recovery in abstract data types.

[Gogolla, 1985b]
Martin Gogolla. A Final Algebra Semantics for Errors and Exceptions. In Hans-Jörg Kreowski, editor, Proc. 3rd Int. Workshop Abstract Data Types (WADT'84), pages 89-103. Springer Berlin, Informatik Fachberichte 116, 1985.
Algebraic specifications allowing equations and inequations are studied. A characterisation of the existence of models and initial algebras as well as a criterion for the existence of final algebras for such specifications are given. As an application it is shown, how the result can be applied to yield maximal error propagation preserving error recovery in abstract data types.

[Lipeck et al., 1985]
Udo Walter Lipeck, Hans-Dieter Ehrich, and Martin Gogolla. Specifying Admissibility of Dynamic Database Behaviour Using Temporal Logic. In Amilcar Sernadas, Janis Bubenko, and Antoni Olive, editors, Proc. IFIP Working Conf. Theoretical and Formal Aspects of Information Systems (TFAIS'85), pages 145-157. North Holland, Amsterdam, 1985.
This work uses temporal logic as a calculus for expressing integrity constraints that specify admissibility of dynamic database behaviour. Formulas are interpreted in state sequences representing dynamic behaviour. Our approach incorporates temporal quantifications by ``always'' and ``sometime'', and quantifiers bounded by intervals in state sequences. Moreover, dynamically changing domains of database values are considered. We then use special kinds of formulas as a language for dynamic constraints and give some hints how to specify in typical situations. For such formulas, a frame for monitoring constraints during runtime of a database is discussed which allows to characterize admissibility operationally.
(13 pages, gzipped PostScript: 1606kb via HTTP, FTP, uncompressed PostScript: 20511kb via HTTP, FTP)


[Ehrich et al., 1984]
Hans-Dieter Ehrich, Udo Walter Lipeck, and Martin Gogolla. Specification, Semantics and Enforcement of Dynamic Database Constraints. In Umeshwar Dayal, Gunter Schlageter, and Lim Huat Seng, editors, Proc. 10th Int. Conf. Very Large Data Bases (VLDB'84), pages 310-318. Morgan Kaufmann, San Mateo, 1984.
In order to specify dynamic constraints, we present a simplified version of temporal logic based on the temporal quantifiers ``always'' and ``sometime'' as well as their bounded versions ``always..until'' and ``sometime..before''. We show that, in most practical cases, the bounded temporal quantifiers can be expressed by appropriate formulas with unbounded temporal quantifiers. We then use special kinds of temporal formulas as a language to specify dynamic constraints. The problem of enforcing such constraints is then reduced to the problem of enforcing dynamically changing sets of two kinds of static constraints, called universal and existential constraints. While universal constraints can be enforced strictly in principle, violation of existential constraints cannot be detected in each case at the earliest moment. We give a sufficient criterion for detecting violation of existential constraints.
(8 pages, gzipped PostScript: 1153kb via HTTP, FTP, uncompressed PostScript: 12773kb via HTTP, FTP)


[Gogolla, 1984a]
Martin Gogolla. A Final Algebra Semantics for Errors and Exceptions. In Hans-Jörg Kreowski and Anne Wilharm, editors, Abstracts 3rd Int. Workshop Abstract Data Types (WADT'84). Universität Bremen, Informatik-Bericht 9/84, 1984.
Algebraic specifications allowing equations and inequations are studied. A characterisation of the existence of models and initial algebras as well as a criterion for the existence of final algebras for such specifications are given. As an application it is shown, how the result can be applied to yield maximal error propagation preserving error recovery in abstract data types.

[Gogolla, 1984b]
Martin Gogolla. Partially Ordered Sorts in Algebraic Specifications. In Bruno Courcelle, editor, Proc. 9th Int. Colloquium Trees in Algebra and Programming (CAAP'84), pages 139-153. Cambridge University Press, Cambridge, 1984.
Conventional algebraic specification techniques cannot express relationships between sorts formally. The approach presented here puts more structure into the specification by allowing a partial ordering on the set of sorts to describe that one sort is a subsort of another sort. This concept implies that one function can occur more than one time in the signature with different domains and codomains. The initial algebra semantics of our specifications with a partial ordering on the set of sorts are studied.
( pages, gzipped PostScript: 1584kb via HTTP, FTP, uncompressed PostScript: 20309kb via HTTP, FTP)


[Gogolla et al., 1984]
Martin Gogolla, Klaus Drosten, Udo Lipeck, and Hans-Dieter Ehrich. Algebraic and Operational Semantics of Specifications Allowing Exceptions and Errors. Theoretical Computer Science, 34:289-313, 1984.
The specification of abstract data types requires the possibility to treat exceptions and errors. We present an approach allowing all forms of error handling: error introduction, error propagation and error recovery. The algebraic semantics of our method and a new correctness criterion are given. We also introduce an operational semantics of a subclass of our specifications which coincides with the algebraic semantics.
(25 pages, gzipped PostScript: 1749kb via HTTP, FTP, uncompressed PostScript: 22673kb via HTTP, FTP)


[Gogolla, 1983a]
Martin Gogolla. Algebraic Specification of Subsorts. In Manfred Broy and Martin Wirsing, editors, Abstracts 2nd Int. Workshop Abstract Data Types (WADT'83). Universität Passau, Informatik-Bericht, 1983.
A method for the algebraic specification of subsorts and overloaded operators is presented. In this approach algebras are described by equations and declarations. A declaration is a construct, which assures that an expression has a certain type. It is shown that every specification consisting of equations and declarations has an initial model. Furthermore it is proved that declarations can be expressed only by equations using hidden sorts and functions. An as application it is shown how errors and exceptions in abstract data types can be treated by using declarations. For every sort an ok subsort representing the non error elements is introduced and by the use of declarations the functions are divided into those which may introduce errors and those which return ok values when applied to such ones. By this, error introduction and error propagation as well as error recovery is possible.

[Gogolla, 1983b]
Martin Gogolla. Algebraic Specifications with Partially Ordered Sorts and Declarations. Forschungsbericht 169, Universität Dortmund, Abteilung Informatik, 1983.
Conventional algebraic specification techniques cannot express relationships between sorts formally. The approach presented here puts more structure into the specification by allowing a partial ordering on the set of sorts to describe that one sort is a subsort of another sort. This concept implies that one function can occur more than one time in the signature with different domains and codomains. Apart from equations our specifications allow declarations to type a term of a certain sort to a subsort of the given one. The initial algebra semantics of our specifications with a partial ordering on the set of sorts are studied.

[Gogolla and Ehrich, 1983]
Martin Gogolla and Hans-Dieter Ehrich. Algebraic Specifications with Subsorts Using Declarations. Bulletin of the EATCS, 21:31-38, 1983.
Conventional algebraic specifications describe data types some times only implicit with hidden sorts and functions. A more powerful and elegant technique can be achived by putting more structure into the specification. Our approach distinguishes between basis sorts and subsorts. The subsorts, whose carriers are included in the basis sort carriers, are described by declarations, i.e. a list of terms possibly with variables of basis as well as subsorts. We study the initial algebra semantics of our specifications, which include declarations and equations.

[Drosten et al., 1982]
Klaus Drosten, Martin Gogolla, Hans-Dieter Ehrich, and Udo Lipeck. A Hierarchical Approach to an Operational Semantics for Conditional Algebraic Specifications. Forschungsbericht 144, Universität Dortmund, Abteilung Informatik, 1982.
For the specification of abstract data types, it is most convenient in many cases not only to have pure equations, but conditional ones. We present a hierarchical approach where conditions have to be evaluated on underlying levels. An operational semantics is obtained via term rewriting systems. In order to guarantee its well-definedness, we provide sufficient syntactical criteria for the Church-Rosser property. Moreover, these criteria are sufficient for the termination of the full substitution reduction strategy, as well.

[Gogolla et al., 1982a]
Martin Gogolla, Klaus Drosten, Udo Lipeck, and Hans-Dieter Ehrich. Algebraic and Operational Semantics of Exceptions and Errors. In Armin B. Cremers and Hans-Peter Kriegel, editors, Proc. 6th GI Conf. Theoretical Computer Science, pages 141-151. Springer, Berlin, LNCS 145, 1982.
The specification of abstract data types requires the possibility to treat exceptions and errors. We present an approach allowing all forms of error handling: error introduction, error propagation and error recovery. The algebraic semantics of our method and a new correctness criterion are given. We also introduce an operational semantics of a subclass of our specifications which coincides with the algebraic semantics.

[Gogolla et al., 1982b]
Martin Gogolla, Klaus Drosten, Udo Lipeck, and Hans-Dieter Ehrich. Algebraic and Operational Semantics of Specifications Allowing Exceptions and Errors. Forschungsbericht 140, Universität Dortmund, Abteilung Informatik, 1982.
The specification of abstract data types requires the possibility to treat exceptions and errors. We present an approach allowing all forms of error handling: error introduction, error propagation and error recovery. The algebraic semantics of our method and a new correctness criterion are given. We also introduce an operational semantics of a subclass of our specifications which coincides with the algebraic semantics.

[Gogolla, 1980]
Martin Gogolla. Eine Charakterisierung von nicht-strukturierten Flußdiagrammen. Master's thesis, Universität Dortmund, Abteilung Informatik, 1980.
In dieser Arbeit wird eine Formalisierung der Begriffe Flußdiagramm und Strukturiertheit eines Flußdiagramms angegeben, und es werden nicht-strukturierte Flußdiagramme über bestimmte Teilgraphen beschrieben. Flußdiagramme geben den Kontrollfluß von Programmen wieder, und Analysen des Programmablaufs können unter anderem zur Optimierung in Compilern, Umkehrübersetzung von maschinennahen Programmen und Umwandlung von unstrukturierten Programmen in lesebare Form dienen. Fragestellungen nach der Ursache der Unstrukturiertheit sind sicherlich auch im Hinblick auf die Methodik der Programmierung von Interesse.

[Coy et al., 1979]
Wolfgang Coy, Claudio Moraga, Friedrich Abraham, Angelika Beese, Werner Bielefeld, Magdalena Bonsiepen, Martin Gogolla, Michael Land, and Manfred Siebert. Adaptive und Lernende Systeme - Bericht einer Projektgruppe Wintersemester 1978 - Sommersemester 1979. Interne Berichte und Skripten, Universität Dortmund, Abteilung Informatik, 1979.
In der Projektgruppe ``Adaptive und Lernende Systeme'' wollten die Veranstalter eine Möglichkeit anbieten, das Problem des Lernens im Gebiet der formalen Sprachinferenz zu untersuchen. Nach einer einheitlichen Verarbeitung von Grundbeiträgen aus der Literatur ist die Gruppe in der Lage, sich mit Inferenzalgorithmen zu beschäftigen, einige zu entwickeln, in Form eines Programms zu testen und zu bewerten. Schließlich bietet sich die Möglichkeit, Algorithmen für Inferenz über verschiedenen Sprachen der Chomsky-, Petri- oder Lindenmayer-Sprachfamilien weiter zu untersuchen.


Home|People|Teaching|Publications
Last change: 17.10.2009