MI-783 Database Structures and Processing

Term Project

Date:    Tuesday, March 29, 2005
Due:     Tuesday of Week #10, (May ?)

The purpose of this project is to apply the database techniques learned in class to a database application of your own choosing.  Students are encouraged to work on problem domains familiar to them in order to develop a database application that demonstrates the concepts and techniques discussed in this course.  Your application domain can be any area of information that you wish to manage (it does not need to be from the Healthcare field).  Just make sure that there are several entities represented with several relationships between the entities that make the database non-trivial.

Due:    Tuesday, April 12, 2005:    A one-page description of your application domain.

Due:    Tuesday of Week #10:    A project report that describes your database development (Data Model, Database Design, Implementation details and examples of typical use of the database); along with your actual database files.

As you conduct your Database term project, be aware that you want to document the product lifecycle of Analysis, Design, Implementation and Testing.  Each phase has some descriptions and/or diagrams that are produced.  The following lists some suggestions for content of your final report:

Analysis - Describe your problem domain, and how a relational database will help answer questions or solve problems in your domain

Design - Do your Data Modeling using IDEF1X.  Use tools such as Microsoft Access, Visio, or other vendor tools to do your work.  Also describe your design decisions using the techniques described in Chapter 5 of the text.

Implementation - Using Access (or whatever RDBMS you're using) describe or draw your relations (tables), describe your queries, reports and forms.  Also indicate where you may have used SQL to write a stored procedure or trigger to enforce a referential integrity action or other such constraint on the database.

Testing- Indicate sample use of your final product.  Display results and show the features of your system.  Show the limits of your database by showing successful and unsuccessful queries or interactions that produce desired or undesired results.

It is easiest to write the report if you document the above as you go along developing your system.  Remember that the development process is normally an iterative one in which you will make several passes through the lifecycle, adding just one or two features per pass.