CSCI 6838.01
Capstone Projects Fall 2001
Guidelines for Database Design and Documentation

by K. Yue, August 23, 2001

Nearly all serious IT/Web applications use a sophisticated database to support their functionalities. A well design backend database is critical for the success of these applications. This document specifies the minimum requirements of the database design and documentation of your capstone projects and it should be strictly followed. It is assumed that you are using a relational database. If you are using other data models, discuss with your faculty supervisor and mentor for the requirements.

1. UML Class Diagrams

UML class diagrams should be used to clearly specify all persistent classes of the projects. All data members of the classes should be specified. All associations should be clearly stated with their cardinality. Constraints and special associations (such as generalization/specialization, superclass/subclass, etc) should also be specified.

With the permission of the faculty supervisor, you may use an extended entity-relationship diagrams to replace the UML class diagram.

2. Data Dictionary

You should maintain an up to dated data dictionary.

Relations

Relation names should be meaningful and follow a reasonable naming convention.

For each relation: the following should be clearly listed:

If a relation is not in BCNF, the rationale behind the decision should be discussed.

Example:

Supplies(SuppliesId, SupplierNum, PartNum, Quantity):

You may want to use a more tabular format.

Columns

Column names must be meaningful and follow a reasonable naming convention.

Columns should be listed under relations. For each column, the followings should be listed:

Example:

Supplies:

PartNum:

You may select to store these information in a more tabular format.

Example

Read the project example of the Fall 1998 section of the course Applied Database Development to get an idea of OO modeling using Rational's Rose. Beware that it is not exactly the same as the requirement here. If turquiose.rocks.uhcl.edu is down, you can also get it here.