Database Modeling and Design
Database Modeling and Design
Database Modeling and Design
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
68 CHAPTER 4 Requirements Analysis <strong>and</strong> Conceptual Data <strong>Modeling</strong><br />
schemas merged at one time <strong>and</strong> an n-ary approach with n schemas<br />
merged at one time, where n is between 2 <strong>and</strong> the total number of schemas<br />
developed in the conceptual design. The binary approach is attractive<br />
because each merge involves a small number of data model constructs<br />
<strong>and</strong> is easier to conceptualize. The n-ary approach may require<br />
only one gr<strong>and</strong> merge, but the number of constructs may be so large<br />
that it is not humanly possible to organize the transformations properly.<br />
4.4.2 Comparison of Schemas<br />
In the second step, comparison of schemas, the designer looks at how<br />
entities correspond <strong>and</strong> detects conflicts arising from schema diversity—<br />
that is, from user groups adopting different viewpoints in their respective<br />
schemas. Naming conflicts include synonyms <strong>and</strong> homonyms. Synonyms<br />
occur when different names are given for the same concept;<br />
these can be detected by scanning the data dictionary, if one has been<br />
established for the database. Homonyms occur when the same name is<br />
used for different concepts. These can only be detected by scanning the<br />
different schemas <strong>and</strong> looking for common names.<br />
Structural conflicts occur in the schema structure itself. Type conflicts<br />
involve using different constructs to model the same concept. In<br />
Figure 4.4, for example, an entity, a relationship, or an attribute can be<br />
used to model the concept of order in a business database. Dependency<br />
conflicts result when users specify different levels of connectivity (oneto-many,<br />
etc.) for similar or even the same concepts. One way to resolve<br />
such conflicts might be to use only the most general connectivity—for<br />
example, many-to-many. If that is not semantically correct, change the<br />
names of entities so that each type of connectivity has a different set of<br />
entity names. Key conflicts occur when different keys are assigned to the<br />
same entity in different views. For example, a key conflict occurs if an<br />
employee’s full name, employee ID number, <strong>and</strong> Social Security number<br />
are all assigned as keys.<br />
4.4.3 Conformation of Schemas<br />
The resolution of conflicts often requires user <strong>and</strong> designer interaction.<br />
The basic goal of the third step is to align or conform schemas to make<br />
them compatible for integration. The entities, as well as the key<br />
attributes, may need to be renamed. Conversion may be required so that<br />
concepts modeled as entities, attributes, or relationships are conformed<br />
to be only one of them. Relationships with equal degree, roles, <strong>and</strong> con-