Supported by AITO.
|
|
Semantics of an object-oriented language through integration of structured algebraic
specifications
Alexander Fronk ( german )
Software Technologie, Dortmund University Baroper Strasse 310
44227 Dortmund tel: 0231 / 755 4812 fax: 0231 / 755 2061 fronk@LS10.de
Keywords:
formal calculus language concepts multimedia applications software engineering
algebraic semantics object-oriented hyperdocument
construction
Abstract:
The work presented here contributes to requirements engineering for
such hypermedia documents, or hyperdocuments for short, which consist
of 1) mediaobjects such as texts or graphics, and 2) a link structure
simple enough to be described easily and mechanically by regular
expressions. Based on this `regularity'', object-oriented programs
allow to modularly define and construct link structures. The programs
are applied to concrete mediaobjects, thus generating individual
hyperdocuments.
Such a program is understood as a collection of requirements to a
hyperdocument, which are not allowed to conflict with general
properties of the application domain, e.g. no dangling links, no two
links leading from identical sources to identical targets. Because of
their simplicity, both the application domain and the programs applied
can be completely formalized through algebraic specifications the
axioms of which are used to deduce further properties. Those
properties are understood as `expectations'' to a hyperdocument. Both
soundness of requirements and validity of expectations can be tested
formally. That is, statements concerning a desired hyperdocument can
be formalized and tested with mathematical preciseness in advance of
the hyperdocument's physical incorporation. The pure incorporation
only allows non- or semi-formal methods and tools to help detecting
conflicts and shortcomings.
We provide a formal semantics of an object-oriented document
description language, called DoDL [1],
which allows the modular construction of hyperdocuments. Static
aspects of classes and their relations as well as dynamic aspects of
objects and types are studied and formalized regarding the application
domain. Thereby, we aim at comprehending the object-oriented
construction of hyperdocuments, which contrasts to their development
through XML or HTML. Engineering suitable tools for this kind of
development strategy is supported as well [2].
The integration of 1) simple algebraic specifications, and 2)
hierachical specifications with 3) specifications with hidden symbols
allows formalizing a program into a form as close as possible to the
object-oriented structure the program provides. We transform classes,
attributes, methods, aggregation, locality, genericity, and
inheritance into suitable algebraic structures. Thereby, our approach
differs from flat specifications as usually used in the literature:
Subclasses with local classes, for example, are understood as an
integration of hierarchical specifications with hidden symbols;
attributes and methods are modelled through operations and axioms.
Many-sorted algebras serve as a mathematical model and establish a
loose semantics. Structured specifications, and thus the classes of a
program, are interpreted through their respective algebraic model
classes. Objects, or class instances, are represented by suitable
algebras respecting the axioms given and fulfilling the properties
structured specifications demand. Such algebras allow to define the
notions of object and type in a simple way. They also allow to easily
check static aspects such as subtype relation, or dynamic aspects such
as late binding of polymorphic methods.
The semantics presented here has been encoded within a compiler system
[3] to realize the hyperdocument specified in a DoDL-program.
The realization process is currently evaluated within some complex
examples, which encompass modelling a multimedial car cockpit, and an
electronic blank form used in hospitals to store data of patients
under medical treatment.
Moreover, our approach is flexible enough to describe object-oriented
languages in general. Further features than those used in
DoDL but mandatory for any object-oriented language can be
modelled easily. Such features include, for example, dynamic object
creation at runtime, or restriction of variable and method scopes
through packages.
Literature:
- E.-E. Doberkat: A Language for Specifying Hyperdocuments.
Software - Concepts and Tools, Vol. 17, p. 163 - 172, April 1996
- A. Fronk: A Tool System for an Object-Oriented Approach to
Construction and Maintenance of Hypermedia Documents. To appear in
the proceedings of the 24.th conference of the german society for
classification, GfKl, Passau, 2000.
- A. Fronk and J. Pleumann: Der DoDL-Compiler. Memorandum
100 at the Chair for Software-Technology, Dortmund University, 1999.
ISSN 0933-7725. In german.
The PhD work started: 1998
The submitted work will probably not be presented in the upcoming ECOOP PhD Workshop.
HTML3
JAVA
Last modified on Mon Aug 15 14:59:24 2005
|