Database Reference
In-Depth Information
Figure 3-12.
Illustrating the Implementation of Subtype and Component Relationships
3.6 The Relation-Attributes List and
Relationship List
In large, complex information systems projects, it is often impractical to attempt to
develop and maintain ERDs, unless they are automatically generated and maintained by
computer-aided software engineering (CASE) tools (more on these in chapter 5). Even
when maintained by CASE tools, an ERD for such a project could become large, spanning
several pages. Reading and interpretation then becomes difficult.
To circumvent the above challenges, a
Relation-Attribute List
(RAL) and a
Relationship
List
(RL) may be constructed and maintained. The former maintains information on
all relations of the system and the latter maintains information on all relationships
implemented in the system. Figures
3-13
and
3-14
illustrate partial RAL and RL for the
database model of Figure
3-4b
. As you examine these figures, please note the following:
•
In practice, the format of the RL shown in Figure
3-14b
is used as
the final list over the format shown in Figure
3-14a
(the format
used in Figure
3-14a
can be deduced by simply identifying all
possible relationships among entities; hence, it may contain
optional relationships and is therefore useful as a first draft).
•
The revised RL of Figure
3-14b
has been stripped of all M:M
relationships (review section 3.5.4 on treating M:M relationships).
•
The relations
PurchaseInvSummary
and
PurchaseInvDetail
of
Figure
3-13
, are used to replace the M:M relationship between
PurchaseInvoice
and
InventoryItem
in Figure
3-4b
. Similarly,
the relations
PurchaseOrdSummary
and
PurchaseOrdDetail
are used to replace the M:M relationship between
PurchaseOrder
and
InventoryItem
in Figure
3-4b
.