00-METHOD: An 00 Software Production Environment
Combining Conventional and Formal Methods
Oscar Pastor, Emilio Insfran, Vicente Pelechano, Jose Romero, Jose Merseguer
Departament de Sistemes Informatics i Computaci6
Universitat Politecnica de Valencia
Cami de Vera s/n
46071 Valencia (Spain)
{opastor I einsfran I pele ljmerse ljromero}@dsic.upv.es
Abstract
00-Method is an 00 Methodology that blends the use of formal specification
systems with conventional 00 methodologies based on practice. In contrast to other
approaches in this field ([Jun95,Esd93]), a set of graphical models provided by the
methodology allows analysts to introduce the relevant system information to obtain the
conceptual model through a requirements collection phase, so that an 00 formal specification
in Oasis ([Pas92, Pas95-1 ]), can be generated at any time. This formal specification acts as
a high-level system repository. Furthermore, a software prototype which is functionally
equivalent to the Oasis specification is also generated in an automated way. This is achieved
by defining an execution model which gives the pattern for obtaining a concrete
implementation in a declarative or an imperative software development environment
(depending on the user choice). The methodology is supported by a CASE workbench.
1. Introduction
In the context of the object paradigm, several 00 methodologies have
emerged to deal with the set of 00 methods to be used to model and correctly
implement an information system. Two main approaches can be distinguished:
• what could be called conventional 00 methodologies, that come from
practical use in industrial software production environments, which do not have a
formal basis and which often use classical structured concepts together with the
introduction of 00 features ([Wir90],[Rum9l],[Jac92], [Boo94],[Col94]). Recent
proposals are trying to create a unified framework for dealing with all the existing
methods (UML [BRJ96D, with the implicit danger of providing users with an
excessive set of methods that have an overlapping semantics.
• use of 00 formal specification languages ( Oblog [Ser87,Esd93], Troll
[Jun91,Har94], Albert [Dub94], Oasis), which have a solid mathematical background
and deducible formal properties such as terms of soundness and completeness.
Our contribution to this state of the art is based on the idea that these two
approaches can be mixed. This mixing offers some advantages: the use of such 00
formal languages can help designers to detect and eliminate ambiguities and
elements of dubious utility. The use of conventional 00 methodologies permits us to
take advantage of the accumulative experience coming from the industrial context.
The research work developed at the DSIC-UPV has been directed towards designing
and implementing an 00 software production environment that aims to combine the
pragmatic aspects attached to the so called conventional methods, with the good
formal properties of the 00 specification languages.
From: CAiSE 1997, LNCS 1250 © Springer-Verlag Berlin Heidelberg 1997
139