Professional Documents
Culture Documents
Extending ER Model Clustering by Relationship Clustering
Extending ER Model Clustering by Relationship Clustering
USA
1. Introduction
The entity relationship approach [Chen76] is a widely accepted method for conceptual database design.
Tools like IEF, IEW, ADW and ORACLE*CASE1 supporting the information engineering approach of
James Martin [Mart89, Mart90a/b] use the binary entity relationship approach. However, some problems
arise if ER modelling is applied to the design of really large databases concerning whole enterprises.
There is, e.g., no way to obtain a general view nor to perceive the global context of a detailed enterprise
scheme with hundreds of entity and relationship types.
[FeMi86, TWBK89, Mist91, RaSt92] propose the method of ER model clustering to gain a general view
and to recognise the global context of a detailed enterprise scheme. They collect whole sections of the de-
tailed diagram into so-called entity-clusters, which are then represented as (complex) entity types in a
higher level ER diagram. The higher level diagrams can be iteratively abstracted by this method. All pro-
posals are based on an already existing detailed ER diagram, the abstraction layers are built bottom-up.
The approach proposed in this paper refines and extends the approaches mentioned above. It also takes
into account the Nested Entity Relationship Approach of [CaJA89] in order to refine relationship types.
We distinguish between three kinds of clustering:
Entity clustering which is introduced by [FeMi86, TWBK89, Mist91, RaSt92].
Simple relationship clustering which is newly introduced here to refine relationship types by several
semantically similar relationship types. This also supports the modelling of additional integrity
constraints.
Complex relationship clustering which is proposed here to refine relationship types by whole ER
diagrams.
The extended approach presented in this paper has several advantages:
It can be used especially in a top-down database design process in order to allow the stepwise analy-
sis and design of the universe of discourse.
It can also be applied to database reengineering. Entity and relationship clusters can be built bottom-
up based on already existing database schemes. Then redesigning as well as extending the original
scheme can be done top-down.
Modifications in one cluster do not have any unpredictable side effects in adjacent clusters.
Standard diagrams for industry branches or special business functions can be designed and indi-
vidually refined for specific enterprises.
Simple relationship clustering can be used to formulate additional integrity constraints on relation-
ship types. However, the presentation of these constraints can be faded out, if only the relationship
type itself without any additional constraints is relevant.
This paper is structured as follows: In section 2 the extended entity relationship model used in this paper
is described. Then the concept of ER clustering is presented and extended by simple relationship cluster-
ing as well as by complex relationship clustering. Rules concerning the different clustering techniques are
proposed. Because most of the CASE-tools supporting the Information Engineering approach use a bi-
nary ER (BER) model, in section 4 the idea of relationship clustering is transferred to the BER model and
compared to the algorithm of [RaSt92].
Airplane Type
Two kinds of dominance grouping have to be distinguished.
(0,*)
• A strong entity type and its identifier dependent weak entity types form a cluster
of type
which is regarded as a higher level entity type. It must be emphasised that only
(1,1) weak entity types which are identifier dependent on exactly one strong entity
Airplane type are considered.
• Also normal entity types participating in (1:n)-relationship types can be clustered
Fig. 3.2(1): towards the dominating entity type if they are existence dependent (min-
Dominance cardinality > 0) on it. It is also required that this existence dependency is only
grouping due to one single entity type. In Fig. 3.2(1) the entity type 'Airplane Type' is the
dominating entity type whereas 'Airplane' is the dominated one.
The cluster can be named either like the dominating or like the dominated entity type. If the dominating
entities are used to classify the entities of the dominated type as in our example, the cluster is named like
the dominated type. If the dominated entity types describe details of the dominating entity type, the
cluster is named like the dominating one. The latter is mostly used if a strong entity type and its weak en-
tity types are regarded.
Packaging (T, N)
S tandar d Special
Packaging Packaging
Fig. 3.3(3): Refinement of Fig. 3.3(2) modelling the additional integrity constraints.
Normally at least the relationship cluster will be faded out as shown in Fig. 3.3(2). There is no necessity
to show these details in order to understand the relevant aspects of the universe of discourse. Nowadays,
the additional constraints of this kind are typically implemented in and controlled by application modules
and not by the database itself. Therefore they are important when the specific module is implemented or
maintained. Also it is possible that the modelled situation is the regular one but that exceptions are
allowed in special cases.
A refinement is called contextsensitive if not only one single relationship or entity cluster is refined but
also all adjacent clusters are refined, too (Fig. 3.3(3)).
The following rules are given in order to restrict simple relationship clustering to cases in which (min,
max)-cardinalities or additional integrity constraints must be modelled more precisely.
Rules on Simple Relationship Clustering:
• A simple relationship cluster is refined by a set of relationship types or simple relationship clusters.
• In a simple relationship cluster only entity clusters (as in the examples above), entity types, simple rela-
tionship clusters (interpreted as aggregation types) or relationship types (interpreted as aggregation
types) can participate. Or the other way round, complex relationship clusters - as described in Section
3.4. - must not participate in a simple relationship cluster.
• In the contextsensitive refinement of a simple relationship cluster R for every relationship type or sim-
ple relationship cluster of the refinement the following requirements must be fulfilled:
• For every entity cluster E participating in R an entity type or cluster of E participates in every re-
finement of R.
• For every simple relationship cluster R' participating in R a relationship type or simple relationship
cluster of R' participates in every refinement of R.
• Every entity type E participating in R also participates in every refinement of R.
• Every relationship type R' participating in R also participates in every refinement of R.
The rules concerning relationship types or clusters must be applied in the same way to aggregation types
or clusters.
Fig 3.4(2): Contextsensitive refinement of 'flies with' based on complex relationship clustering
(0,*)
Flight (0,*) (0,*)
Employee flies with Airplane
(0,*)
(0,*)
Employee qualified for Airplane
take part
(0,*)
(0,*)
(0,*)
(0,*) F light Section
Execution used for
Flight (0,1)
(0,*) (1,1) (0,*)
for Flight Execution
Fig 3.4(3): Refinement of 'flies with' based on complex relationship clustering without considering
the participating clusters