hide random home http://idom-www.informatik.uni-hamburg.de/Paper/DBIS-Pub-1993.html (Einblicke ins Internet, 10/1995)

DBIS Publications Back to the full DBIS publication list.
[BMS93] A. Borgida, J. Mylopolous, and J.W. Schmidt. The TaxisDL Software Description Language. In M. Jarke, editor, Database Application Engineering with DAIDA, volume 1 of Research Reports ESPRIT, pages 65-84. Springer-Verlag, 1993.

The purpose of the TaxisDL language is to express the conceptual design of an information system. The focus of the design process includes the data classes of the proposed system, the functions and transactions manipulating them, and the larger conceptual groupings of these actions into long-term activities, which we call scripts. The design of the language is based on ideas from semantic data models and formal specification languages.

[CMAM93] R.C.H. Connor, R. Morrison, M.P. Atkinson, F. Matthes, and J.W. Schmidt. Programming in Persistent Higher-Order Languages. In Proceedings of Euro-Arch'93 Congress. Springer-Verlag, October 1993.

Persistent programming languages differ from traditional languages in that data of arbitrary lifetimes is fully governed by the type system. Such languages lead to radically different programming paradigms and methodologies for two important reasons: (1) the high-level type system may be relied upon as a protection mechanism even for long-term data; (2) data of any type, including first-class procedures and abstract data types, may be kept for arbitrary lifetimes. The combination of these means that the kind of sophisticated typing commonly used in programs which operate over short-term data may be extended to all data manipulated by a long-lived system. This paper exposes some of the ways in which well-known type system features may be powerfully used in contexts normally associated with operating systems and database management systems.

[GSW93] T. Günther, K.-D. Schewe, and I. Wetzel. On the Derivation of Executable Database Programs from Formal Specifications. In Proceedings of the of Formal Methods Europe '93 Symposium - Industrial-Strength Formal Methods, Odense Teknikum, Denmark, April 1993.

A typeset version of the full paper can be downloaded from here.

Achieving wide acceptance of formal methods in software development requires a smooth integration with requirements analysis, design and implementation. Especially for database application systems there exist well-known approaches to conceptual modeling as well as a sophisticated implementation technology on the basis of database programming languagues.

The work described in this paper is based on a scenario, where the B method is coupled with a conceptual modeling language TDL and a database programming language DBPL. Both these languages can be represented in B. We concentrate on the problem of characterizing those B specifications that are sufficiently refined in order to be transformed into equivalent DBPL programs. This gives rise to some kind of implementability proof obligation.

Moreover, we show that the transformation itself can be regarded as a term rewriting task based on a representation by term algebras of the languages involved. For this task we exploit order-sorted algebra by using the OBJ system.

[MaSc93] F. Matthes and J.W. Schmidt. DBPL: The System and its Environment. In M. Jarke, editor, Database Application Engineering with DAIDA, volume 1 of Research Reports ESPRIT, pages 319-348. Springer-Verlag, 1993.

A typeset version of the full paper can be downloaded from here.

The DBPL system and its environment support the modular implementation of advanced data-intensive applications based on integrated database and programming language technology. It provides state-of-the-art system support at application compile-, link- and run-time as well as tools for incremental application evolution.

[MaSc93a] F. Matthes and J.W. Schmidt. System Construction in the Tycoon Environment: Architectures, Interfaces and Gateways. In Proceedings of Euro-Arch'93 Congress. Springer-Verlag, October 1993.

A typeset version of the full paper can be downloaded from here.

This paper outlines the basic concepts and the system architecture of the Tycoon environment. Tycoon is designed for the construction of persistent object systems intended to be available on multiple software and hardware platforms.

Tycoon's contribution to system portability and scalability is achieved by strictly separating concerns of data modelling, data manipulation, and data storage into three distinct system layers each of which is based on state-of-the-art system technology (polymorphic programming languages, portable code representations, persistent object stores). Much emphasis is being placed on supporting interoperability between Tycoon applications and off-the-shelf tools and systems, such as database systems, user interface managers, and optimizing code generators.

We illustrate how higher-order functions, polymorphic typing and transparent persistence management reduce the amount of repetitive and type-unsafe programming in typical persistent object systems.

[Matt93] F. Matthes. Persistente Objektsysteme: Integrierte Datenbankentwicklung und Programmerstellung. Springer-Verlag, 1993.

Unter dem Begriff der Persistenten Objektsysteme werden komplexe Anwendungen zusammengefaßt, die aufgrund ihrer langen Lebensdauer, ihrer Nähe zu Endbenutzern und ihrer Sicherheitsanforderungen auf ein hohes Maß an Unterstützung durch externe Diensterbringer angewiesen sind. Beispiele kommerzieller Diensterbringer sind Objektspeicher, Transaktionsmonitore, Datenbanksysteme, Generatoren für graphische Benutzerschnittstellen oder generische Dienste zur Kommunikation zwischen verteilten Objekten. Bislang sind derartige Diensterbringer weitgehend unabhängig voneinander entwickelt worden und können nur über historisch gewachsene, schmale Schnittstellen miteinander kommunizieren.

Die Qualität zukünftiger persistenter Objektsysteme wird jedoch entscheidend durch die Flexibilität, Effizienz und Korrektheit im Zusammenspiel der Objekte dieser verschiedenartigen generischen Dienste und weniger durch die Leistungsfähigkeit einzelner isolierter Systemkomponenten bestimmt.

In diesem Buch wird im Detail die persistente polymorphe Programmierumgebung Tycoon (Typed communicating objects in open environments) beschrieben, die eine Verbesserung der Qualität persistenter Objektsysteme dadurch erreicht, daß der Anteil der stereotypen, untypisierten Programmiertätigkeiten erheblich reduziert werden kann (verglichen etwa mit C, Modula-2 oder C++ Lösungen).

Konkret bietet das Tycoon System spezielle sprachliche und architekturelle Unterstützung für die vollständig transparente Verwaltung langlebiger Daten- und Programmobjekte, die mengenorientierte Verarbeitung (benutzerdefinierter) Kollektionen, die Implementierung generischer Bibliotheken und die typsichere Anbindung externer Systemsoftware (z.B. SQL Datenbanken oder Fenstersysteme).

Das Buch beschreibt die zentralen Komponenten des Tycoon Systems nicht nur aus der Sicht des programmierenden Anwenders, sondern vermittelt auch Einblicke in die interne Systemarchitektur sowie die Algorithmen und Formalismen zur Analyse und übersetzung generischer persistenter Programme. Schließlich enthält der Text substantielle Beispiele für die Konstruktion generischer Bibliotheken und Beispiele objekt-orientierter, funktionaler und relationaler Programmiertechniken in Tycoon.

[MeLa93] M. Merz and W. Lamersdorf. Generic Interfaces to Remote Applications in Open Systems. In Proceedings of the International IFIP Workshop on Interfaces in Industrial Production and Engineering Systems, pages 267-281. North-Holland, Elsevier Science Publishers B.V., March 1993.

Future industrial production and engineering environments will profit substantially from emerging open distributed computer communication network environments. They will, in principle, be able to benefit from a high potential of services available in such environments to support individual client applications. In practice, however, free and flexible client/server cooperations are frequently hindered by the great and confusing variety of interfaces involved in accessing various and heterogeneous network services. In order to support open client/server cooperations in distributed systems, this contribution proposes a unifying description mechanism for remote services in computer networks. It describes an application oriented generic communication service, which facilitates client/server cooperation in open systems. The most important basis for such a service is a uniform service specification mechanism for open server interfaces. Correspondingly, the paper first specifies a specific service interface description language (SIDL). It then shows how such a service interface description could also be used for automatic creation of server-specific local human user interfaces. In combination, a generic network interface description language (NIDL) specification, as proposed here, supports client applications in open systems by providing a common mechanism to access and utilize any service available anywhere in the network.

[ScMa93] J.W. Schmidt and F. Matthes. Lean Languages and Models: Towards an Interoperable Kernel for Persistent Object Systems. In Proceedings of the IEEE International Workshop on Research Issues in Data Engineering RIDE '93 Vienna, Austria, pages 2-17, April 1993. (Also appeared as TR FIDE/93/59).

A typeset version of the full paper can be downloaded from here.

Reliable interoperation between independently developed systems frequently requires type-safe access to persistent data objects and generic services while today's system architectures and interoperation tools still focus primarily on store-level access to volatile data and simple monomorphic or untyped services.

In this paper, we summarize our experience gained in a long-term project that provides persistence abstractions and generic database support in a strongly typed database environment which includes optimizing gateways to commercial relational database servers and module-based distributed programming tools. To keep the presentation focussed, we make use of a uniform language model based on higher-order polymorphic types to capture the essential interoperation semantics including classical cross-language calling mechanisms, remote procedure call models as well as relational and object-based database gateways.

This uniform language model is also the conceptual core of the Tycoon database environment being developed at Hamburg University. Tycoon lifts Persistent Object System interoperability to a higher level of genericity and precision while further reducing overall system complexity by a lean approach to languages and models for data, execution and storage.

Since it is central to our concept of lean software production to substantially reduce the depth of manufacturing penetration by importing and reusing external services, interoperability is crucial to our approach.

[ScMa93a] J.W. Schmidt and F. Matthes. Modular and Rule-Based Database Programming in DBPL. In M. Jarke, editor, Database Application Engineering with DAIDA, volume 1 of Research Reports ESPRIT, pages 85-122. Springer-Verlag, 1993. (Also available as TR FIDE/91/15).

A typeset version of the full paper can be downloaded from here.

DBPL is the target language for the implementation of data-intensive applications in the DAIDA project. This paper illustrates how DBPL supports the construction of correct, modular and efficient database programs integrating well-developed compilation and database technology.

After an introduction to the language concepts of DBPL, two methodoligical aspects central to the implementation of database applications are discussed. The first task is the representation of the classical abstraction principles of Conceptual Modelling (classification, aggregation, generalization, and association) by typed data structures and data derivation rules in DBPL. The second aspect is the decomposition of application systems consisting of multiple interacting programs into managable, shared modules using a novel abstraction mechanism for bulk data access.

By presenting the use of DBPL in some detail, we intend to support our claim that a set- and predicate-oriented view of database modelling resolves the traditional mismatch between declarative database languages and their general-purpose imperative counterparts.

[SMRS93] K. Subieta, F. Matthes, A. Rudloff, J.W. Schmidt, and I. Wetzel. Viewers: A Data-World Analogue of Procedure Calls. In Proceedings of 19th Intl. Conf. on Very Large Data Bases VLDB '93, Dublin, Ireland, August 1993.

A typeset version of the full paper can be downloaded from here.

A viewer is a reference-valued datum with a special meaning: a value of the data pointed by the viewer becomes a virtual part of data where the viewer is placed; the value virtually substitutes the viewer. Viewers are considered to be a data-world analogue of procedure calls. They possess a large conceptual and pragmatic potential as a result of new data semantics on which we can base a variety of well-organized data structures.

Various applications of viewers, related to DBPLs and object-oriented data modelling, are presented: importing common attributes, inheritance and multi-inheritance, stored selections, projections and joins, viewing a single relational structure as several hierarchical structures, etc. Methodological and formal aspects of the concept are discussed and a method of incorporating viewers into a query language is presented.

[SMV93] J.W. Schmidt, F. Matthes, and P. Valduriez. Building Persistent Application Systems in Fully Integrated Data Environments: Modularization, Abstraction and Interoperability. In Proceedings of Euro-Arch'93 Congress. Springer-Verlag, October 1993.

A typeset version of the full paper can be downloaded from here.

Research and development in the FIDE project on Fully Integrated Data Environments has led to the concept of Persistent Object Systems (POS) which generalize database systems by re-interpreting schemas as type definitions and databases as typed variables in addition to treating lifetime as a type-independent property. Furthermore, FIDE develops uniform linguistic interfaces for data modelling, computation and communication, and extends database, programming and communication technology to enable integrated application development based on interoperating POSs.

As a consequence of such an integrated view, formerly disjoint concepts such as databases, program and module libraries, files or repositories can now be treated uniformly as POSs differentiated essentially by the types of objects they contain and by the operational abstractions they provide.

Based on state-of-the-art database technology, this paper outlines FIDE results in extending databases and providing the integrated technology considered necessary for the construction and maintenance of Persistent Application Systems. Since our main goal is to improve substantially a system's capability of persisting successfully over time in changing environments, particular emphasis will be placed on systems scalability and its consequences for POS interoperability.

[STW93] K.-D. Schewe, B. Thalheim, and I. Wetzel. Integrity Preserving Updates in Object-Oriented Databases. In Proceedings of the Fourth Australian Database Conference ADC '93, Brisbane Queensland, Australia, February 1993.

Integrity with respect to static and dynamic constraints is a cruicial property of database application systems, especially in OODBs, where structurally defined constraints such as inclusion and referential constraints have to be preserved. In this paper we solve this problem for basic update operations that are determined by the schema. We present a framework on rewriting of generic operations in dependence on the structural and semantical information of the schema. We show how consistency-preserving, basic update operations can be generated. Moreover, we analyse distinguished classes of user-defined constraints and generalize our results to them.

[WSS93] I. Wetzel, K.-D. Schewe, and J.W. Schmidt. Specification and Refinement of Databases. In M. Jarke, editor, Database Application Engineering with DAIDA, volume 1 of Research Reports ESPRIT, pages 283-318. Springer-Verlag, 1993.

A typeset version of the full paper can be downloaded from here.

Traditionally, substantial portion of database application semantics are captured through static and dynamic integrity constraints. The work reported in this paper exploits this fact by interpreting such database constraints as invariants and pre- and postconditions in the style of 'Z'.

Database applications are specified by a conceptual modelling language close to TAXIS, which has been enriched by constructs for a predicative specification style. Conceptual designs of database applications are formally analyzed for consistency and are refined, step by step, into efficient extended relational implementations. The reification of designs into implementations uses the formal framework of Abrial's Abstract Machines and generalized substitutions.

It is shown that a small set of standard refinement rules is sufficient for a wide class of refinements. Furthermore, it is argued that the proposed proof-based approach has significant advantages over the traditional database technique, which tests constraints expensively at transaction commit time.


Florian Matthes (Wed Apr 26 10:29:59 MET DST 1995)