Implementation
3. Implementing an application
3.1.Environment of Use
The use of the platform is facilitated by its
integration within a graphical environment allowing to
visualise and handle directly the diagrams of classes.
However, the case base reasoning is intrinsically a
complex process, and it was necessary to introduce many
hot spots for its modeling.
The CBR*Tools framework can directly be used like
every other set of classes in Java by using an editor
or a traditional programming environment. However, its
use is proposed here within a software suite allowing
us to visualise and handle directly the entirety of the
UML models presented.
Figure 1: The interface of the CBR*Tools in
Rational Rose
During the conception of the CBR*Tools, the software
suite Rational Rose was used. This tool offers a
graphical interface (Figure 1) allowing the user to
navigate in the different conceptual elements (classes,
packets, scenarios, etc.), to display these element in
the form of UML diagrams, and to consult the
documentation associated with each element (class,
attribute, method).
The use of a such a tool does not stop with the
initial conception of CBR*Tools, but it is also used to
provide a design environment, which facilitates the use
of CBR*Tools. In effect, this tool is complementary to
the approach placed on the conception of an
object-oriented platform:
-
It facilitates the comprehension of the
platform.
This tool enables the user to visually handle the
various concepts of CBR*Tools as well as their
interactions. This handling leads not only to a
better comprehension of CBR*Tools, but also to a
better design by highlighting the difficult points as
early as possible in the development cycle.
-
It facilitates the extension of the platform.
The specialisation of a class of CBR*Tools is then
done by simple graphic handling: definition of a new
class, declaration of the inheritance, and
declaration of the methods to be specialised by a
simple mechanism of copy/paste.
-
It allows the user to generate a good-quality
documentation.
Documentation is significant for a platform, and this
tool enables the user to export the entire set of the
diagrams, which can then be included in the user's
documentation.
-
It facilitates the layout.
From the diagrams, the class-structures are
automatically generated in the selected language
(Java) and have to be completed manually. This
automatic generation thus, avoids a tiresome work
which is a source of errors, and allows the user to
concentrate on the implementation of the
algorithms.
-
It facilitates the iterative development.
This tool is also equipped with a module of
re-engineering (reverse engineering) particularly
useful in an iterative process of design and use as
in the case of a Object-Oriented framework. In
effect, the mechanism of generation and that of
re-engineering represent the only means of ensuring
coherence between the diagrams and the effective
realisation.
|