Framework for graph-based formalisms

Arya MirSoftware and s/w Development

Apr 27, 2012 (4 years and 11 months ago)


Qualitative analysis and performance evaluation require the use of suitable formalisms to describe the systems under study. From an abstract point of view, most of the formalisms defined in the literature, can be seen as special kind of hierarchical graphs. In this work we present a framework for defining and manipulating graph-based formalisms.

Framework for graph-based formalisms.
Andrea Valente,Marco Gribaudo
Dipartimento di Informatica,
Facolta’ di Scienze Matematiche Fisiche e Naturali,
Universita’ di Torino,Corso Svizzera 185/B,Torino,Italy,
Qualitative analysis and performance evaluation require
the use of suitable formalisms to describe the systems un-
der study.From an abstract point of view,most of the for-
malisms defined in the literature,can be seen as special kind
of hierarchical graphs.In this work we present a framework
for defining and manipulating graph-based formalisms.We
build it on a data-definition language (or DDL),specific to
graph-domain,in which formalisms are described by the set
of the legal type of elements that can be used to build their
models,and by the constraints that model elements must
satisfy.Rapid development of client/server system-analysis
tools can be achieved adopting the DDL as an interchang-
ing language.
In this paper we introduce a data description language
for rapid specification of different class of graph-based for-
malism (see below) that could be used as the base on which
multi-formalism system-analysis tools can be developed.
Our language is defined to be also the interchange data lan-
guage of such tool,and it has been developed taking into
account distribution of both data and code.
We start by defining a language for graph descrip-
tion,then we extend it to allow the construction of multi-
formalismtools in a rapid and efficient way.The result is a
Java framework ([3],[11] [7]),[2]) for defining formalisms
and building models (as explained in the next section) de-
rived fromthem.
2 A two levels language
In this paper the term formalism refers to a set of rules
that define a particular language,with well specified syntax
and semantics,that can be used describe abstraction of real
systems.We call model the description of a particular real
systemin a given formalism.
A solver is software component that receives a model
(and knows its formalism),perform specific and possibly
heavy computation on it,then returns the model changed in
some parts,together with additional informations (such as
results of the performed analysis).
We present a two level data description language (DDL
for short),by which the analyst of a system can define a
formalism,then create models after it;the DDL has been
implemented as a Java framework.
The higher level in our DDL is for formalismspecifica-
tion,the lower for model specification.
Our goal is rapid formalismdefinition:once a formalism
is described,models can be built fromit and a set of solvers
can be written for every formalism ([9]).The formalisms
used in systemanalysis are usually grouped in families and
in many cases they formtaxonomies,so we gave class-like
behaviour to our formalisms:they can inherit from others
and specify new features,not present in their parents.We
also choose to describe themfroma structural (syntactical)
point of view,leaving to the solvers almost every semantic
check;in our architecture this permits to specify rapid cre-
ation of new formalisms without compiling any Java code,
and also to implement simple checking during model build-
ing (real-time checking).
Therefore solvers embed all semantics knowledge on
models;they are developed ad hoc for models of a specific
formalism(or a class of them),for which they code the so-
lution algorithms.In order to obtain the better possible per-
formance,they are authorised to assume specific semantics
for the models they receive.
Models in our data language are graphs,so every model
is basically defined by a set of nodes and edges;since we
permit the building of hierarchies of graph,a model also
have a set (possibly empty) of sub-models.For this reason
graphs became the main abstract data type (or ADT) of our
description language,in particular we use and manipulate
hierarchical graphs ([10] and [4]) with labels both on edges
Formalism 1
Formalism 2
Model 1
Model 2
Model 3
The Shelf
The Application
The Solver
Model 1
Model 3
-1-Clone fromprototypes
-2-Solve eachsub-model
Formalism 1
Formalism 2
Solver A
Solver B
Solver C
-3-Produce thecomplete solution
Figure 2.An application based on the DDL.
models.The two levels structure of the DDL results eas-
ily adaptable to XML (and XML schemas),and XSL would
be used when simple,light solvers are required.Given that
XML works well both with Java and C++ (because parsers
have already been developedand freely accessible on the In-
ternet),it will be easy to convert existing heavy-dutysolvers
to import and export this XML format.
Further research should be performed on both the graph-
ical and the solver side.Document/View approach can be
used to allow multiple visualisation styles for the graphical
entities in a formalism(see [4]).
A framework under development,should be capable of
generating solver skeletons starting from a formalism,al-
lowing rapid development of servers.
[1] F.Bause,P.Bucholz,and P.Kemper.A toolbox for func-
tional and quantitative analysis of deds.Computer Perfor-
mance Evaluation.
[2] S.Demeyer and J.Bosch.Object-oriented technology,
ecoop’98,workshop reader.LNCS 1543,1998.
[3] R.J.J.V.Erich Gamma,Richard Helm.Design Patterns,
Elements of Reusable Object-Oriented Software.Addison-
[4] D.Harel.On visual formalisms.Communications of the
ACM,31(5),May 1999.
[5] E.Henley and H.Kumamoto.Reliability Engineering and
Risk Assessment.Prentice Hall,Englewood Cliffs,1981.
[6] N.Leveson.Safeware:System Safety and Computers.
[7] G.B.Lynne Blair,Trevor Jones.A tool suite for multi-
paradigm specification.LNCS 1577,1999.
[8] M.A.Marsan,G.Balbo,G.Conte,S.Donatelli,and
G.Franceschinis.Modelling with Generalized Stochastic
Petri Nets.John Wiley &Sons,1995.
[9] W.H.Sanders.Integrated framworks for multi-level and
multi-formalismmodeling.Proceedings of PNPM’99,1999.
[10] J.Tapken.Implementing hierarchical graph-structures.
LNCS 1577,pages 283–295,1999.
[11] M.von der Beeck,V.Braun,A.Classen,A.Dannecker,
S.B.Graphs in metaframe:The unifying power of polymor-
phism.LNCS 1217,1997.