Tool Integration in the UniForM-Workbench *
C. Liith, E. W. Karlsen, Kolyang, S. West meier , B. Wolff
1 Introduction
The need for tool support is widely acknowledged, in particular in the context
of formal methods. Yet, there exist many different tools serving different for-
mal methods, and no single formal method (let alone tool) covers all aspects of
software development. In order to combine the advantages of various tools and
methods, they are combined into one integrated Software Development Environ
ment (SDE).
Tool integration for formal methods has to address two issues: the technical
side of the integration (where features such as type-safe communication, per-
sistent and distributed storage, version management and configuration manage-
ment are required), and the semantic side of the integration (where the semantic
integrity of the documents produced by the various formal method tools have to
be maintained).
The UniForM-Workbench addresses both of these issues. On the technical
side, the integration is based on a loosely coupled architecture where prefabri-
cated tools are integrated within a tool integration framework. On the semantic
side, we propose an approach based on the embedding of formal methods into a
logical framework, the generic theorem prover Isabelle (Paulson 1994).
This paper will give an introduction to the UniForM-Workbench. We will
first take the reader on a guided tour of the Workbench, giving an impression
how a user would work and interact with the system. We will then turn to
more technical matters, and discuss the semantical and technical aspects of tool
integration (Sect. 3 and 4, respectively), and the generic data model underlying
the Workbench (Sect. 5).
2 A guided tour of the UniForM-Workbench
In this section, we will give an impression how the UniForM-Workbench presents
itself to the user. In general, the Workbench provides distributed and persistent
storage, access and administration of all objects needed during the development
process. We can think of the Workbench as a sort of file system with additional
mechanisms providing persistence (we can always recover a working version),
versioning, and a typing discipline.
The specific types of objects will vary with the particular instantiation of
the Workbench, but the two most general types of objects, folders and files, are
* This work has been supported by the German Ministry for Education and Research
(BMBF) as part of the project UniForM (Krieg-Bruckner et al. 1996) under grant
No. FKZ 01 IS 521 B2.
R. Berghammer et al. (eds.), Tool Support for System Specification, Development and Verification
© Springer-Verlag/Wien 1999