04.06.2015 Views

Database Modeling and Design

Database Modeling and Design

Database Modeling and Design

SHOW MORE
SHOW LESS

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-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!