<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>CoraI Calero</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mario Piattini</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcela Genero</string-name>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2001</year>
      </pub-date>
      <fpage>79</fpage>
      <lpage>85</lpage>
      <abstract>
        <p>Metrics are useful mechanisms for improving the quality of soji`vvareproducts and also for determim.ngthe best ways ro help practitioners and researchers. UnfortunateLy,almost all the metrics put forward focus on program characteristz`cs disregardz.ng databases. However, databases are becomz`ngmore compLex,and it is necessary to measure schemata complexityin order to understand, monz.tor, control, predict and z.mprove database development and ma"zntenanceprojects. In fizz's paper, we will present dierent measures in order to measure the complexz-ty that aJTects the maintainabz"Iz.toyf the relational, object-relatz`onal and active database schemas. However it is not enough to propose the metrics, a formaL validatz.on is also needed for know!ng thez.r mathematz.caL characteristics. We wz.II present the two main tendencz.es in metrics formal validation, axz`omatz.c approaches and measurement theory" However, research !nto sofiware measurement is needed from a theoretz`caLbut also jrom a practical point of view ((121). For thz`sreason, we wz`LaLlso present some of the experzments that we have developedfor the dijferent ia`ndsof databases.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Software engineers have been proposing large
quantities of metrics for software products,
processes and resources ([l0], [23], [
        <xref ref-type="bibr" rid="ref35">37</xref>
        ]). Metrics
are useful mechanisms for improvingthe quality of
softwareproducts and also for determiningthe best
ways to help practitioners and researchers ([
        <xref ref-type="bibr" rid="ref24">26</xref>
        ]).
Unfortunately, almost all the metrics put forward
focus on program characteristics (e"g" McCabe
([
        <xref ref-type="bibr" rid="ref20">21</xref>
        ]) cyclomatic number) disregardingdatabases
([
        <xref ref-type="bibr" rid="ref32">34</xref>
        ]). As far as databasesare concerned, metrics
have been used for comparing data models rather
than the schemata itself. Several authors ([2], [
        <xref ref-type="bibr" rid="ref15">16</xref>
        ],
[
        <xref ref-type="bibr" rid="ref16">17</xref>
        ], [
        <xref ref-type="bibr" rid="ref17">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref30">32</xref>
        ], [
        <xref ref-type="bibr" rid="ref31">33</xref>
        ]) have comparedthe most well
known models such as NIAM and relational
using different metrics. Although we think this
work is interesting,metrics for comparingschemata
are needed mostly for practical purposes, like
choosing between different design alternatives or
giving designers limit values for certain
characteristics (analogously to value 10 for Mc
Cabe complexity of prograrns). Some recent
proposals have been published for conceptual
schemata ([
        <xref ref-type="bibr" rid="ref19">20</xref>
        ], [
        <xref ref-type="bibr" rid="ref22">24</xref>
        ], [
        <xref ref-type="bibr" rid="ref26">28</xref>
        ]) but for conventional
databases,such as relationalones, nothing has been
proposed, excepting normalizationtheory.
      </p>
      <p>Databasesare becoming more complex, and it is
necessaryto measureschematacomplexityin orderto
understand,monitor, control, predict and improve
databasedevelopment and maintenanceprojects.In
modem InformationSystems (IS), the databasehas
become a crucial component, so there is a need to
propose and study some measures to assess its
quality.</p>
      <p>
        Database quality depends on several factors:
functionality, reliability, usability, efficiency,
maintainabilityand portability ([
        <xref ref-type="bibr" rid="ref14">15</xref>
        ]). Our focus is
on maintainability because maintenance accounts
for 60 to 90 percent of life cycle costs and it is
considered the most importantconcern for modem
IS departments([1l], [
        <xref ref-type="bibr" rid="ref21">22</xref>
        ], [
        <xref ref-type="bibr" rid="ref27">29</xref>
        ]).
      </p>
      <p>
        The International Standard, ISO/IEC 9126,
distinguishes five subcharacteristics for
maintainability: analysability, changeability,
stability, testability and compliance. Analysability,
changeability and testability are in turn influenced
by complexity ([191). However, a general
complexity measure is "the impossibLe holy grail"
([
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]), i.e" it is impossible to get one value that
captures all the complexity factors of a database
,Henderson-Sellers([
        <xref ref-type="bibr" rid="ref13">14</xref>
        ]) dis6nguishes three types
of complexity: computational, psychological and
representational, nd for psychological complexity
he considers three components: problem
complexity, human cognitive factors and product
complexity. The last one is our focus and for our
purposesthe productwill be databases.
      </p>
      <p>Our goal is to propose internal measures for
databases,which can characterisetheir complexity
helping to assess database maintainability (the
external quality characteristic). In the next section
we will present the framework followed to define
and validate databasemetrics.</p>
      <p>Section three summarizes the proposed metrics
for relational, object-relational and active
databases.In section four the formal validation of
some of these metrics is described.Some empirical
validations are presented in section five and
conclusions and future work will be presentedin
sections six and seven respectively.</p>
      <p>2. A Framework for Developing
Validating Database Metrics.
and</p>
      <p>As we have said previously, our goal is to
define metrics for controlling database
maintainability. However, metrics definition must
be done in a methodological way, so it is necessary
to follow a numberof steps co ensurethe reliability
of the proposed metrics. Figure 2 presents the
method we apply for the metricsproposal.</p>
      <p>~ ~,~M.-E-.TR~.I C.
Metrics definition The first step is the
proposal of metrics. Although it looks
simple, it is an importantone in ensuring
metrics are correctly defined. This
definition is made taking into account the
specific characteristicsof the databasewe
want to measure and the experience of
database designers and administratorsof
these databases.</p>
      <p>
        TheoreBeal validation. The second step is
the formal validation of the metrics. The
formal validation helps us to know when
and how to apply the metrics. There are
two main tendencies in metrics validation:
the frameworks based on axiomatic
approaches and the ones based on the
measurementtheory. The goal of the first
ones is merely definitional.The most
wellknown frameworks of this type are those
proposed by [351, [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and [251. The
measurement theory-based frameworks
(such as [
        <xref ref-type="bibr" rid="ref35">37</xref>
        ] or [
        <xref ref-type="bibr" rid="ref34">36</xref>
        ]) specify a general
framework in which measures should be
defined. Measurement theory gives clear
definitions of terminology, a sound basis
of software measures, criteria for
experimentation,conditions for validation
of software measures, foundations of
prediction models, empirical properties of
software measures, and criteria for
measurementscales.
      </p>
      <p>Empirical vaBdaOon. The goal of this
step is to prove the practical utility of the
proposed metrics~ Although there are
various ways of performing this step,
basically we can divide the empirical
validation into experimentation and case
studies. Experimentationis usually made
using controlled experimentsand the case
studies usually work with real data. Both
of them are necessary, the controlled
experiments as a first approach and the
case studies for backing up the results.</p>
      <p>In this section, we present the differentmetrics
that we have proposed for relational. object
relational and active databases. For each kind of
database, a brief summary of its main
characteristics is given and an example using
ANSI/ISO SQL:1999 code is used to illustratethe
calculationof the proposedmetrics.</p>
    </sec>
    <sec id="sec-2">
      <title>Metrics for Rela6onul Databases</title>
      <p>
        Traditionally, the only indicator used to
measure the "quality" of relational databases has
been the normalization theory, with which [13]
propose to obtain a normalization ratio. However,
we think that normalization is not enough to
measure complexity in relational databases, so we
propose the following four metrics in addition to
normalization ([
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]):
      </p>
      <sec id="sec-2-1">
        <title>Number ofaun.buzes (NA)</title>
        <p>NA is the number of attributesin all the tables
of the schema.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Depth Referential Tree (DRT)</title>
        <p>DRT is defined as the lenoothof the longest
referentialpath in the database schema. Cycles are
only consideredonce.</p>
        <sec id="sec-2-2-1">
          <title>CREATE TAELE S</title>
          <p>( S# S#,</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>SNAME NAME,</title>
        </sec>
        <sec id="sec-2-2-3">
          <title>STATUS STATUS,</title>
        </sec>
        <sec id="sec-2-2-4">
          <title>CITY CITY,</title>
        </sec>
        <sec id="sec-2-2-5">
          <title>PRIMARY KEY (S#));</title>
        </sec>
        <sec id="sec-2-2-6">
          <title>CREATE TABLE P</title>
          <p>( P# P#</p>
        </sec>
        <sec id="sec-2-2-7">
          <title>PNAME NAME,</title>
        </sec>
        <sec id="sec-2-2-8">
          <title>COLOR COLOR,</title>
        </sec>
        <sec id="sec-2-2-9">
          <title>WEIGHT WEIGHT,</title>
        </sec>
        <sec id="sec-2-2-10">
          <title>CITY CITY,</title>
        </sec>
        <sec id="sec-2-2-11">
          <title>PRIMARY KEY (P#));</title>
        </sec>
        <sec id="sec-2-2-12">
          <title>CREATE TABLE SP</title>
          <p>( S# S#,
P# P#,
QTY QTY,</p>
        </sec>
        <sec id="sec-2-2-13">
          <title>PRIMARY KEY (S#, P#),</title>
        </sec>
        <sec id="sec-2-2-14">
          <title>FOREIGN KEY</title>
        </sec>
        <sec id="sec-2-2-15">
          <title>NCES S,</title>
        </sec>
        <sec id="sec-2-2-16">
          <title>FOREIGN KEY</title>
        </sec>
        <sec id="sec-2-2-17">
          <title>REFERENCES P);</title>
          <p>SP
S
P
(S#)
(P#)</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>Number of Foreign Keys (NFK)</title>
        <p>The NFK metric is defined as the number of
foreign keys in the schema.</p>
      </sec>
      <sec id="sec-2-4">
        <title>Cohesion ofthe schema (COS)</title>
        <p>COS is defined as the sum of the square of the
number of tables in each unrelated subgraph of the
database schemata that is:</p>
        <p>|USj 2 |US| numberof unrelatedsubgraphs
COS - .S JV7USi - NTUSi number of tables in the
z=1 ` related subgraph"i"</p>
        <sec id="sec-2-4-1">
          <title>We apply the previous metrics to the following example (suppliers-and-parts database) taken from [61:</title>
        </sec>
        <sec id="sec-2-4-2">
          <title>In this schema the value of the metrics are: NA</title>
          <p>= 12, DRT = 1, NPK =2, COS =9.</p>
        </sec>
        <sec id="sec-2-4-3">
          <title>Metrics for Object-Relotional Databases</title>
        </sec>
        <sec id="sec-2-4-4">
          <title>An object-relational database schema is</title>
          <p>composed of a number of tables related by
referential integrity, which have columns that can
be defined over simple or complex (user-defined)
data types. We define the next metrics for
objectrelational databases ([4J):</p>
        </sec>
      </sec>
      <sec id="sec-2-5">
        <title>Schema Si~e(SS)</title>
        <p>We define the size of a system as the sum of the
size of every table (TS) in the schema:</p>
        <sec id="sec-2-5-1">
          <title>The table size (TS) measures the size not only</title>
          <p>in terms of the simple columns (defined using
simple domains) bot also in terms of complex
columns (defined using user-defined classes).</p>
        </sec>
        <sec id="sec-2-5-2">
          <title>Formally it can be defined as the sum of the total</title>
          <p>size of the simple columns (TSSC) and the total
size of the complex columns (TSCC) in the table.
TSSC is simply the number of simple columns in
the table (considering that each simple domain has
a size equal to one). TSCC is defined as the sum of
complex columns size (CCS). The size of a
complex column is no more than the size of the
class hierarchy above the columnand is defined as
weighted by the number of complex columns which
use the hierarchy. Finally, the size of a class
hierarchy is defined as the sum of the size of each
class on the hierarchy. For more details about the
precise definition of this metric see [4J.</p>
          <p>Complexz"tyof references between tables (DRT,
NFK)</p>
          <p>In object-relational databases, other
characteristicsof relational databasesare preserved.
Metrics related with the referential integrity, such
as NI:;Kand DRT proposed in the previous section,
can also be used.</p>
          <p>We can apply these metrics to the following
example:</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>CREATE TYPE projectAS ( name CHAR(10), budget FLOAT);</title>
    </sec>
    <sec id="sec-4">
      <title>This relational database schema representedas a relationalgraph(see figure 3). can be</title>
      <p>Fiooure3. Relational graphfor the example</p>
    </sec>
    <sec id="sec-5">
      <title>CREATE TYf E employee AS (</title>
      <p>emp_num INTEGER,
level INTEGER,
salary_base FLOAT,
proj project)
method calc_salary()</p>
      <p>RETURNS DECIMAL(72));</p>
    </sec>
    <sec id="sec-6">
      <title>Name data</title>
      <p>SHOT
type</p>
      <sec id="sec-6-1">
        <title>ROJECT</title>
        <p>EMPLOYE</p>
        <p>Then, the values for the other metrics are: SHC
= 6, CCS = 3, TSCC = 6, TSSC - 2, TS = 8, SS
8.</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Mebies for Active Databases</title>
      <p>Whenmeasuring active databases,we can make
use of the notion of a triggering graphas defined in
[I]. A triggering graph is a pair &lt;S, L&gt; where S
representsthe set of ECA rules, and L is a set of
directedarcs where an arc is drawnfrom Si to Sj if
Sis action causes the happening of an event
occurrence that participates in Sjs events. This
notion of triggering graphis modified by [71 in two
aspects. Firstly, arcs are weighted by the numberof
potential event occurrences produced by the
triggering rule Ci.e.Si) that could affect the rule
triggered off (i.e. Sjs event). Secondly, the nodes
S are extended with the set of transactionsT. A
transactionis an atomic set of (database) actions
where any of these actions could correspondto an
event triggering one or more rules. Therefore, T
nodes will have outgoing links but never incoming
links, as we assume that a transactioncan never be
triggered from within a rules action or another
transaction.</p>
      <p>
        The active databasecouldbe characterisedby the
followingtriggeringgraphmeasures([
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]):
. NA the minimum number of anchors
required to encompass the whole set of
potential causes of Si. An anchor is a
transaction node of the triggering graph,
which has a link (either directly or
transitively) with at least one cause of Si.
      </p>
      <p>D, the distance.This measure correspondsto
the length of the longest path that connects
Si with any of its anchors.</p>
      <p>TP, the triggering potential. Given a
triggeringgraph &lt; S, L &gt;, and a node of the
graph, ruleSi, the number of causes of Si, is
the sum of weights of the incoming arcs
arriving at Si. The triggeringpotential for a
rule R is the quotientbetween the number of
potential causes of Si, and Sis event
cardinality~
CREATETRIGGERONE
AFTERDELETEON TABLE3
FOREACH ROW
WHEN(OLD.NUMBER=3)
BEGIN</p>
      <p>DELETEFROMTABLE4 WHERETABLE4.S#=:TABLE3"J#;
END ONE;
CREATETRIGGERTWO
AFTERDELETEON TABLE4
FOREACH ROW
WHENCOLD.NAME=.SMITH)
BEGIN</p>
      <p>DELETEFROMTABLE5 WHERETABLE4.S#=:OLD.S#:
END TWO;</p>
      <p>For trigger ONE, NA = I, TP = I and D = I, for
trigger TWO, NA = 1, TP = 1, and D = 2.</p>
    </sec>
    <sec id="sec-8">
      <title>4. Metrics Formaf VaRdation</title>
      <p>There are two main tendencies in metrics
validation: the frameworks based on axiomatic
approachesand the ones based on the measurement
theory. The goal of the first ones is merely
definitional~On this kind of formal framework, a
set of formal properties is defined for a given
software attribute and it is possible to use this
propertyset for classifying the proposedmeasures.</p>
      <p>
        The most well-known frameworks of this type
are those proposedby [351, [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], and [
        <xref ref-type="bibr" rid="ref23">25</xref>
        ]. The main
goal of axiomatisationin software metrics research
is the clarification of concepts to ensure that new
metrics are in some sense valid. The measurement
theorybased frameworks (such as [37} or {36])
specify a general framework in which measures
should be defined,Measurement theory gives clear
definitions of terminology, a sound basis of
software measures, criteria for experimentation,
conditions for validation of software measures,
foundations of prediction models, empirical
properties of software measures, and criteria for
measurementscales. The discussion of scale types
is importantfor statisticaloperations.
      </p>
      <p>In this section, we will present the results of the
formal verification of the presented metrics with
R
E
L
V
E
N
A
L</p>
      <p>NFK
DRT
NA
COS
SS
TS
NA
TP
D</p>
      <p>BRIANO ET</p>
      <p>AL(1996)
COMPLEXHY</p>
      <p>ABOVE THE ORDINA
LENGT</p>
      <p>ABOVE THE ORDINAL
SLZ
512
SIZ
SIZE</p>
      <p>ABOVE THE ORDINA</p>
      <p>RATIO
ABOVE THE ORDINA</p>
      <p>ABOVE THE ORDINA
COMPLEXITY</p>
      <p>ABOVETHE ORDINA</p>
      <p>NOT
CLASSIPIAB</p>
      <p>ABOVE THE ORDINA
LENGT</p>
      <p>ABOVE THE ORDINA
With the axiomatic approach results we can
know, for example for relational databasesthat we
need some metrics for capturing cohesion and
coupling and covering all the characteristics
defined by the framework From the measurement
theory results we can know what kind of
operations it is possible to make with the defined
metrics,the statistics that it is possible to apply to
them etc.</p>
    </sec>
    <sec id="sec-9">
      <title>5. Metrics Empirical VaBdaHon</title>
      <p>In the past, empirical validation bas been an
informal process relying on the credibility of the
proposer. Often , when a measure was identified
theoreticallyas an effective measure of complexity,
practitioners and researchers began to use the
metric without questioning its validity. Today,
many researchers and practitioners assume that
validation of a measure (from a theoretical point of
view) is not sufficient for widespread acceptance.
They expect the empiricalvalidation to demonstrate
that the measure itself can be validated. Useful
results of an experimentation depend on careful,
rigorous and complete experimental design. A
claim that a measure is valid because it is a good
predictor of some interesting attribute can be
justified only by formulatinga hypothesis about the
relationshipand then testingthe hypothesis ([10]).</p>
      <p>In the rest of this section, we summarize
differentexperimentsthat we have done with some
of the metrics discussed in this chapter.All of these
initial experimentsrequire further experimentation
in order to validate the findings. However, these
results can be useful as a starting point for future
research.</p>
      <p>
        A complete description of the experiments can
be found in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] for relational database metrics, in
[
        <xref ref-type="bibr" rid="ref25">27</xref>
        ] for object-relationalones and in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] for active
ones.
      </p>
    </sec>
    <sec id="sec-10">
      <title>Relational experiment</title>
      <p>Our objective was to demonstrate that the
metrics related with referential integrity (DRT and
) can be used for measuring the complexity of
the relational database schema, which influences in
the relational database understandability. The
participants of this study were computer science
students at the University of Castilla-La Mancha
(Spain), who were enrolled in a two-semester
databases course. Based on the results of this
experiment, we concluded that the number of
foreign keys in a relational database schema is a |
more solid indicator of its understandability than
the length of the referential tree. This metric is not
relevant by itself, but can modulate the effect of the
number of foreign keys in a database system</p>
    </sec>
    <sec id="sec-11">
      <title>Object-relational experiment</title>
      <p>
        Five object-relational databases were used in
this experiment with an average of 10 relations per
database. Five subjects participated in the
experiment. All of them were experienced in both
relational databases and object-oriented
programming. To analyze the usefulness of the
metrics, we used two techniques: C4.5 ([
        <xref ref-type="bibr" rid="ref28">30</xref>
        ]), a
machine learning algorithms, and RoC ([
        <xref ref-type="bibr" rid="ref29">31</xref>
        ]), a
robust Bayesian classifier. In conclusion, both the
techniques discover that the table size is a good
indicator for the understandability of a table. The
depth of the referential tree is also presented as an
indicator by C4.5 but not clearly by RoC. The
number of foreign keys does not seem to have a
real impact on the understandability of a table.
      </p>
    </sec>
    <sec id="sec-12">
      <title>Active experiment</title>
      <sec id="sec-12-1">
        <title>Our objective was to assess the influence of D</title>
        <p>and TP in rule interaction understandability.</p>
      </sec>
      <sec id="sec-12-2">
        <title>However, such understanding could be influenced</title>
        <p>by how the reasoning is conducted.As rules can be
seen as cause-and-effectlinks, two questions can be
posed by the user: "whateffects can a rule produce
(forward reasoning)?" or "how can an effect be
produced (backwardreasoning)?".The participants
of the experimentwere final-year computerscience
students at the University of the Basque Country,
who were enrolled in an advance database course
The students were already familiar with relational
database, and some laboratories were previously
conducted on the definition of triggers. For the
forward experiment, we concluded that the
triggering potential in a databaseschema is a solid
indicator of its understandability, and that the
distance is not relevant by itself and cannot
modulate the effect of the triggeringpotential. For
the backward experiment we concluded that both
metrics are solid indicatorsof its understandability.</p>
        <p>All the experiments described need to be
replicated in orderto obtainmore consistentresults.
However, controlled experiments made in a
laboratoryare useful as a startingpoint but present
some problemssuch a the large numberof variables
that can cause differences- Therefore, it is
convenient to also run case studies working with
real data.</p>
        <p>6. Conclusions and Future Work</p>
        <p>Databasesare becoming more complex, and it is
necessary to measureschemata complexity in order
to understand, monitor, control, predict and
improve database development and maintenance
projects. Database metrics could help designers,
choosing between alternative semantically
equivalent schemata, to select the most
maintainable one and understandtheir contribution
to the overallIS maintainability.</p>
        <p>We have put forward different measures (for
internal attributes) in order to measure the
complexity that affects the maintainability (an
external attribute)of the relational,object-relational
and active databaseschemas.</p>
        <p>However it is not enough to propose the
metrics, a formal validation is also needed for
knowing their mathematical characteristics. We
have presentedthe two main tendencies in metrics
formal validation, axiomatic approaches and
measurement theory. Although the information
obtainedfrom both techniquesis different,the final
objective is the same, to obtain objective
mathematical information of the metrics we are
workingon.</p>
        <p>However, as we have indicated previously,
research into software measurement is needed
also from a practical point of view. We have
presented some of the experiments that we have
developed for the different kinds of databases.
Nevertheless controlledexperimentshave problems
(like the large number of variables that causes
differences) and limits (they do not scale up, are
done in a class in training situations, are made in
vitro and face a variety of threats of validity).
Thereforeit is convenient to run multiple studies,
mixing controlledexperimentsand case studies. For
these reasons, a more in depth empirical evaluation
is under way in collaboration with industrial and
public organizationsin "rear situations.</p>
      </sec>
    </sec>
    <sec id="sec-13">
      <title>ACKNOWLEDGEMENT</title>
      <sec id="sec-13-1">
        <title>This research is part of the MANTICA project,</title>
        <p>partially supported by the CICYT and the European</p>
      </sec>
      <sec id="sec-13-2">
        <title>Union (CICYT-1FD97-0168) and by the CALIDAT project carried out by Cronos Iberica (supported by the Consejeria de Educaci6n de la Comunidad de Madrid, Nr, 09/0013/1999)</title>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1-
          <string-name>
            <surname>Aiken</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hellerstein</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Widow</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1995</year>
          ).
          <article-title>Static analysis techniques for predicting the behaviour of active database rules</article-title>
          .
          <source>ACM Transactionson Databases</source>
          ,
          <volume>20</volume>
          (
          <issue>1</issue>
          ),
          <fpage>341</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <given-names>.?.</given-names>
            <surname>Batra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Hoffer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.A.</given-names>
            and
            <surname>Bostrom</surname>
          </string-name>
          ,
          <string-name>
            <surname>R.P.</surname>
          </string-name>
          (
          <year>1990</year>
          ).
          <article-title>A comparison of user performance between the relational and the extended entity relationshipmodels in the discovery phase of databasedesign</article-title>
          .
          <source>CACM</source>
          ,
          <volume>33</volume>
          (
          <issue>2</issue>
          ), 126
          <fpage>139</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Briand</surname>
            ,
            <given-names>L.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Morasca</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <article-title>And</article-title>
          <string-name>
            <surname>Basin</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          (
          <year>1996</year>
          ).
          <article-title>Property-based software engineering measurement</article-title>
          .
          <source>IEEE Transactionson Software Engineering</source>
          ,Vol.
          <volume>22</volume>
          (
          <issue>1</issue>
          ). pp~
          <fpage>68</fpage>
          -
          <lpage>85</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Calero</surname>
            ,
            <given-names>C`</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piattini</surname>
            ,
            <given-names>M</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ruiz</surname>
            ,
            <given-names>F</given-names>
          </string-name>
          ~and
          <string-name>
            <surname>Polo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>1999</year>
          )
          <article-title>Validation of metrics for Object" Relational Databases, InternationalWorkshop on QuantitativeApproaches in Object-Oriented Software Engineering (ECOOP99</article-title>
          ), Lisbon (Portugal),
          <fpage>14</fpage>
          -
          <lpage>18June</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Calero</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piattini</surname>
            ,
            <given-names>M</given-names>
          </string-name>
          , Genero,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Serrano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            and
            <surname>Caballero</surname>
          </string-name>
          ,
          <string-name>
            <surname>I.</surname>
          </string-name>
          (
          <year>2000</year>
          ).
          <article-title>Metrics for Relational Databases Maintainability,</article-title>
          .CKAI52000, Cardiff,UK.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Date</surname>
            .,
            <given-names>C.J.</given-names>
          </string-name>
          (
          <year>1995</year>
          ).
          <article-title>An Introductionto Database Systems</article-title>
          . 6th.
          <string-name>
            <surname>Addison-Wesley</surname>
          </string-name>
          , Reading, Massachusetts-
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. Diaz,
          <volume>0</volume>
          . and Piattini, M (
          <year>1999</year>
          ).
          <article-title>Metrics for active databases maintainability</article-title>
          .
          <source>CAISE99</source>
          . Heidelberg,June 1618.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Dfaz</surname>
          </string-name>
          . O.,
          <string-name>
            <surname>Piattini</surname>
            . M y Calero,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2001</year>
          ).
          <article-title>Measuring active databases maintainability</article-title>
          .
          <source>Accepted for publication in Information Systems Journal</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Fenton</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          (
          <year>1994</year>
          ).
          <article-title>Software Measurement:A Necessary Scientific Basis</article-title>
          .
          <source>IFRE Transactions on SoftwareEngineering</source>
          ,
          <volume>20</volume>
          (
          <issue>3</issue>
          ),
          <fpage>199</fpage>
          -
          <lpage>206</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          1O.
          <string-name>
            <surname>Fenton</surname>
            ,
            <given-names>N</given-names>
          </string-name>
          , andPfJeeger
          <string-name>
            <surname>S.L.</surname>
          </string-name>
          ( / 997).
          <source>Software Metrics: A Rigorous Approach 2nd. edition</source>
          . London, Chapman&amp; Hall.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>ll" Frazer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>1992</year>
          )~
          <article-title>Reverse engineering-hype, hope or here?</article-title>
          . In; P.
          <string-name>
            <given-names>A.V.</given-names>
            <surname>Hall</surname>
          </string-name>
          , Software Reuse andReverse Engineering in Practice. Chapman &amp;Hall.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Glass</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>1996</year>
          ).
          <source>The Relationship Between Theory and Practice in Software Engineering. Software, November</source>
          , Vol.
          <volume>39</volume>
          (
          <issue>11</issue>
          ). pp
          <fpage>11</fpage>
          -
          <lpage>13</lpage>
          ,
          <string-name>
            <surname>Gray</surname>
            <given-names>R.ff.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carey</surname>
            <given-names>B.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGlynn</surname>
            <given-names>N.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pengelly</surname>
            <given-names>A.D.</given-names>
          </string-name>
          , (
          <year>1991</year>
          ),
          <article-title>Design metrics for databasesystems</article-title>
          .
          <source>BT Technology J</source>
          , Vol
          <volume>9</volume>
          , 4 Oct.pp.
          <fpage>69</fpage>
          -
          <lpage>79</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          14.
          <string-name>
            <surname>Henderson-Sellers</surname>
            ,
            <given-names>B-</given-names>
          </string-name>
          (
          <year>1996</year>
          ).
          <article-title>Object-Oriented Mefrics - Measures of CompJexity</article-title>
          .PrenticeHall, UpperSaddle River, New Jersey.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          15. ISO, (
          <year>1994</year>
          ).
          <article-title>Software Product Evaluation QualityCharacteristicsand Guidelines for their Use</article-title>
          .
          <source>ISO/IECStandard9126</source>
          , Geneva.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          16.
          <string-name>
            <surname>Jarvenpaa</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Machesky</surname>
            ,
            <given-names>J</given-names>
          </string-name>
          ~ (
          <year>1986</year>
          ).
          <article-title>End user learningbehaviorin data analysis anddata modeling tools</article-title>
          .
          <source>Proc. of the 7th Int. Conf. on InformationSystems, SanDiego</source>
          ,
          <fpage>152</fpage>
          -
          <lpage>167</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          17.
          <string-name>
            <surname>Juhn</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Naumann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1985</year>
          ).
          <article-title>The effectiveness of data representation characteristicson user validation</article-title>
          .
          <source>Proc. of the 6th Int. Conf. on Information Systems</source>
          , Indianapolis,
          <fpage>212</fpage>
          -
          <lpage>226</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          18.
          <string-name>
            <surname>Kim</surname>
            ,
            <given-names>Y.G.</given-names>
          </string-name>
          and
          <string-name>
            <surname>March</surname>
          </string-name>
          , S.T. (
          <year>1995</year>
          ).
          <article-title>Comparing Data Modeling Forrnalisms~ CACM38(6</article-title>
          ), /
          <fpage>03</fpage>
          -1
          <fpage>15</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          19.
          <string-name>
            <surname>Li</surname>
          </string-name>
          , HF. and Cheng,W.K. (
          <year>1987</year>
          ).
          <article-title>An empirical study of software metrics</article-title>
          .
          <source>IEEE Trans. on SoftwareEngineering</source>
          ,
          <volume>13</volume>
          (
          <issue>6</issue>
          ),
          <fpage>679</fpage>
          -
          <lpage>708</lpage>
          ~
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          20.
          <string-name>
            <surname>MacDonell</surname>
            ,
            <given-names>S.G.</given-names>
          </string-name>
          , Shepperd, MJ. and
          <string-name>
            <surname>Sallis</surname>
            ,
            <given-names>P</given-names>
          </string-name>
          "J.(
          <year>1997</year>
          ).
          <article-title>Metrics for Database Systems; An Empirical Study</article-title>
          .
          <source>Proc. Fourth International Software Metrics Symposium - Metrics'97</source>
          ,
          <string-name>
            <surname>Albuquerque</surname>
          </string-name>
          .IEEE ComputerSociety,
          <volume>99</volume>
          -
          <fpage>107</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          21.
          <string-name>
            <surname>McCabe</surname>
            ,
            <given-names>T.J.</given-names>
          </string-name>
          (
          <year>1976</year>
          ).
          <article-title>A complexity measure</article-title>
          .
          <source>IEEE Trans. Software Engineering</source>
          <volume>2</volume>
          (
          <issue>5</issue>
          ),
          <fpage>308</fpage>
          -
          <lpage>320</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          22.
          <string-name>
            <surname>McClure</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>1992</year>
          )
          <article-title>The Three Rs of Software Automation: Reengineering, Repository, Reusability</article-title>
          .Englewood Cliffs:
          <string-name>
            <surname>Prentice-Hall. Melton</surname>
            ,
            <given-names>A</given-names>
          </string-name>
          . (ed.) (
          <year>1996</year>
          ).
          <source>Software Measurement</source>
          .London, InternationalThomson ComputerPress.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          24. Moody, D~ L. (
          <year>1998</year>
          ).
          <article-title>Metrics for Evaluating the Quality of Entity Relationship Models</article-title>
          .
          <source>Proc. of the Seventeenth International Conference on Conceptual Mode|ling (ER'98)</source>
          , Singapore.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          25.
          <string-name>
            <surname>Morasca</surname>
            ,
            <given-names>S,</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>Briand</surname>
            ,
            <given-names>I .C.</given-names>
          </string-name>
          (
          <year>1997</year>
          ).
          <article-title>Towards a Theoretical Framework for measuring software attributes</article-title>
          .
          <source>Proceeding of the Fourth International,Software Metrics Symposium</source>
          ,
          <fpage>119</fpage>
          -
          <lpage>126</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          26. Pf|eager,
          <string-name>
            <surname>S. L.</surname>
          </string-name>
          (
          <year>1997</year>
          ).
          <article-title>Assessing Software Measurement</article-title>
          .
          <source>IEEE Software. March/April</source>
          ,
          <fpage>25</fpage>
          -
          <lpage>26</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          27.
          <string-name>
            <surname>Piattini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calero</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sahraoui</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <article-title>and</article-title>
          <string-name>
            <surname>Loams</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          (
          <year>2000</year>
          )
          <article-title>An empirical Study with object-relational database metrics, ECOOP:2OOOC,annes</article-title>
          , I3 June.
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          28.
          <string-name>
            <surname>Piattini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Genera</surname>
            ,
            <given-names>M,</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calero</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Ruiz</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          (
          <year>2001</year>
          ).
          <article-title>Metrics for Managing Quality in InfOrrnation Mode|ling</article-title>
          . In:
          <article-title>"Information Modeling in the New MiJJennium"M. Rossi andK</article-title>
          .
          <source>Siau (eds.)</source>
          ,
          <string-name>
            <surname>Idea</surname>
            <given-names>GroupPublishing</given-names>
          </string-name>
          ,USA.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          29.
          <string-name>
            <surname>Pigoski</surname>
            ,
            <given-names>T.M.</given-names>
          </string-name>
          (
          <year>1997</year>
          ).
          <article-title>Practical Software Maintenance</article-title>
          . Wiley Computer Publishing. New York, USA.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          30.
          <string-name>
            <surname>Quinlan</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          .
          <source>C4</source>
          .
          <article-title>5: Programs for Machine Learning</article-title>
          , (
          <year>1993</year>
          ), Morgan Kaufmann Publishers.
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          31.
          <string-name>
            <surname>Barnaul</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Sebastiani</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <article-title>Bayesian methods for intelligent data analysis</article-title>
          . In M Berthold and
          <string-name>
            <surname>D.J</surname>
          </string-name>
          . Hand, editors,
          <source>An Introductionto Intelligent Data Analysis</source>
          , (New York,
          <year>1999</year>
          ). Springer.
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          32.
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Brinkkemper</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>1996</year>
          ).
          <article-title>Complexity Metrics for Systems Development Methods and Techniques</article-title>
          .
          <source>InformationSystems</source>
          <volume>21</volume>
          (
          <issue>2</issue>
          ),
          <fpage>209</fpage>
          -
          <lpage>227</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          33.
          <string-name>
            <surname>Shoval</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Even-Chaime</surname>
            ,
            <given-names>M</given-names>
          </string-name>
          (
          <year>1987</year>
          ).
          <article-title>Database schema design: An experimental comparison between normalization and informationanalysis</article-title>
          .
          <source>Database</source>
          <volume>18</volume>
          (
          <issue>3</issue>
          ),
          <fpage>3039</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          <volume>34</volume>
          "
          <string-name>
            <surname>Sneed</surname>
            ,
            <given-names>H.M andFoshag. O.</given-names>
          </string-name>
          (
          <year>1998</year>
          ).
          <article-title>Measuring Legacy Database Structures</article-title>
          .
          <source>Proc of The European Software Measurement Conference FESMA 98</source>
          ,
          <string-name>
            <surname>Antwerp</surname>
          </string-name>
          ,May 6-8, Coombes, Van Huysduynen andPeelers (eds.),
          <fpage>199</fpage>
          -
          <lpage>211</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          35.
          <string-name>
            <surname>Weyuker</surname>
            ,
            <given-names>E.J.</given-names>
          </string-name>
          (
          <year>1988</year>
          ).
          <article-title>Evaluating software complexity measures</article-title>
          .
          <source>IFFE Transactions on Software Engineering</source>
          Vol.
          <volume>14</volume>
          (
          <issue>9</issue>
          ). pp.
          <fpage>1357</fpage>
          -
          <lpage>1365</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          36.
          <string-name>
            <surname>Whitmire</surname>
            ,
            <given-names>S.A.</given-names>
          </string-name>
          (
          <year>1997</year>
          ), Object OrientedDesign Measurement,Ed. Wiley.
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          37. 2use,
          <string-name>
            <surname>H.</surname>
          </string-name>
          (
          <year>1998</year>
          ).
          <article-title>A Framework of Software Measurement</article-title>
          .Berlin, Walter de Gruyter
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>