Conceptual Design Verification, Logical Design, and Implementation c c c c c c
Appendix C c
The University Lab: Conceptual Design, Verification, c c c c c
Logical Design, and Implementation c c c c
Discussion Focus c
How is a database design verified, and why is such verification necessary?
c c c c c c c c c c c
Use our detailed answer to question 1 to focus class discussion on database design verification. Stress that
c c c c c c c c c c c c c c c c
the verification process uses the initial ER model as a communication tool.
c c c c c c c c c c c c
The designer may begin the verification process by describing the organization's operations to its end users,
c c c c c c c c c c c c c c c
basing the detailed description on the initial ER model. Next, explain how the operations will be supported
c c c c c c c c c c c c c c c c c
by the database design. Stress that the design must support the end-user application views, outputs, and
c c c c c c c c c c c c c c c c
inputs. Points to be addressed include such questions as:
c c c c c c c c c
• Is the description accurate? If not, what aspects of the description must be corrected?
c c c c c c c c c c c c c
• Does the model support the end-user requirements? If not, what aspects of the end-
c c c c c c c c c c c c c
userrequirements have not been addressed or have been addressed inadequately?
c c c c c c c c c c
Keep in mind that even a model that perfectly addresses all initially determined end user requirementsis
c c c c c c c c c c c c c c c c
likely to need adjustments as those end users begin to understand the ramifications of the database design's
c c c c c c c c c c c c c c c c c
capabilities. In many cases, the end users may learn what the organization's processes and procedures
c c c c c c c c c c c c c c c
actually are, thus leading to new requirements and the perception of new opportunities. The database
c c c c c c c c c c c c c c c
designer must keep such likely developments in mind, especially if (s)he works as a database design
c c c c c c c c c c c c c c c c
consultant. (Anticipation of such developments must be factored into the contract negotiations for
c c c c c c c c c c c c c
consulting fees.)
c c
Discuss the role of the system modules.
c c c c c c
1
, Appendix C The University Lab: c c c c
Conceptual Design Verification, Logical Design, and Implementation
c c c c c c
The use of system modules can hardly be overemphasized in a database design environment.
c c c c c c c c c c c c c
Stressthese module characteristics and features:
c c c c c c
• Modules represent subsets of the database model: Smaller "pieces" are more easily
c c c c c c c c c c c
understood.
c
• Modules are self-contained and accomplish a specific system function; if such a system
c c c c c c c c c c c c
function must be modified, other functions remain unaffected.
c c c c c c c c
• Modules fit into a modular database design, which is more easily modified and adapted tonew
c c c c c c c c c c c c c c c
circumstances. Because modification efforts are focused on a database subset, productivity
c c c c c c c c c c c
of both designers and application developers is likely to be enhanced.
c c c c c c c c c c c
Module interfaces must be clear if the modules are expected to work well within the overall system.
c c c c c c c c c c c c c c c c
2
, Appendix C The University Lab: c c c c
Conceptual Design Verification, Logical Design, and Implementation c c c c c c
Answers to Review Questions c c c
1. Why must a conceptual model be verified? What steps are involved in the verification process?
c c c c c c c c c c c c c c
The verification of a conceptual model is crucial to a successful database design. The verification process
c c c c c c c c c c c c c c c
allows the designer to check the accuracy of the database design by:
c c c c c c c c c c c c
• Re-examining data and data transformations. c c c c
• Enabling the designer to evaluate the design efficiency relative to the end user's and
c c c c c c c c c c c c c
system's design goals.
c c c
Keep in mind that, to a large extent, the best design is the one that serves the end-user requirements
c c c c c c c c c c c c c c c c c c
best. For example, a design that works well for a manufacturing firm may not fit the needs of a marketing
c c c c c c c c c c c c c c c c c c c c
research firm, and vice versa.
c c c c c
The verification process helps the designer to avoid implementation problems later by:
c c c c c c c c c c c
• Validating the model's entities. (Remember the minimal data rule.) c c c c c c c c
• Confirming entity relationships and eliminating duplicate, unnecessary, or improperly
c c c c c c c c
defined relationships.
c c
• Eliminating data redundancies. c c
• Improving the model's semantic precision to better represent real-world operations.
c c c c c c c c c
• Confirming that all user requirements (processing, performance, or security) are met.
c c c c c c c c c c
Verification is a continuous activity in any database design. The database design process is evolutionary
c c c c c c c c c c c c c c
in nature: It requires the continuous evaluation of the developing model by examining the effect of
c c c c c c c c c c c c c c c c
adding new entities and by confirming that any design changes enhance the model's accuracy.
c c c c c c c c c c c c c c
The verification process requires the following steps:
c c c c c c
1. Identify the database's central entity. c c c c
The central entity is the most important entity in our database, and most of the
c c c c c c c c c c c c c c
cotherentities depend on it. c c c c
3
, Appendix C The University Lab: c c c c
Conceptual Design Verification, Logical Design, and Implementation
c c c c c c
2. Identify and define each module and its components.
c c c c c c c
The designer divides the database model into smaller sets that reflect the data needs
c c c c c c c c c c c c c
ofparticular systems modules such as inventory, orders, payroll, etc.
c c c c c c c c c c
3. Identify and define each of the module's processes.
c c c c c c c
Specifically, this step requires the identification and definition of the database transactions
c c c c c c c c c c c
that represent the module's real-world operations.
c c c c c
4