The Simulator
Goal
The goal of this case study was to get acquainted with the use of formal
methods for the specification of reactive systems and with the application
domain. The experience gained should be distributed within the
Sonderforschungsbereich.
Context
This case study is performed by the
members of team 1,
representing all subprojects of the
Sonderforschungsbereich 501.
The application domain, within which the case study is performed, is
building automation systems.
Work done
The actual task was to describe formally an event-driven simulator for heat
flow within a building. Thereby opening and closing of windows and doors
and the weather conditions had to be considered. It had to be possible to
maintain a strict binding of simulation and real time or to run the
simulation faster than real time by a constant factor.
Starting from an informal problem description given by a
customer (represented by the head of
subproject
D1),
a requirements specification and a functional design of the
system were derived. This was done following the book of Braek and
Haugen: Engineering Real Time Systems, Prentice Hall, 1993. An
object oriented notation, Message Sequence Charts (MSC), and
Specification and Description Language (SDL)
were used to produce this documents. Two essential parts (kernel and
interface) of the simulator had been identified and the methodology was applied to them separately.
The following documents are available (in english, gzipped Postscript):
- Problem description (40KB)
Informal Problem description of the Customer. Contains statement of problem
and some of the physics of a building.
- Dictionary (138KB, german)
This is the dictionary for the domain building automation system worked out
by subproject D1.
- Requirements Specification of the simulator (43KB)
Contains a clarified problem statement, a concept model of
simulation, and static and dynamic interface descriptions of the objects
occuring in the simulation domain. An object oriented notation and message
sequence charts are used. Two important parts of the simulator are
identified: A kernel responsible for managing a set of simulation
events and for maintaining the binding between real and simulation time. An
interface responsible for accepting input events from various
sources and for making available the values of variables representing the
building.
- Requirements Specification of the
Simulator Kernel (35KB)
Contains a concept model of the kernel part, and static and dynamic
interface descriptions of the objects in the kernel.
- Functional Design of the
Simulator Kernel (32KB)
The functional design of the kernel, described in SDL.
- Requirements Specification of the
Simulator Interface (30KB)
Contains a concept model of the interface part, and static and dynamic
interface descriptions of the objects in the interface.
- Functional Design of the
Simulator Interface (44KB)
The functional design of the interface, described in SDL
Further Work
This work has been continued by actually implementing a (slightly
different)
simulator
within subproject D1, and by
repeating this case study
within subproject C1.
For further information about the work of team1, look at its homepage.
Navigation
deiss@informatik.uni-kl.de