Mist 351 Assignment 6
Mist 351 Assignment 6
Overview
The next two assignments will require you to design and implement a relational database using
MySQL. You need to come up with a scenario in which a database would be useful. Try to make
it realistic, but don't make it so complex that you'll be spending hours simply typing in table
information or data. In order to save some typing and data entry, you can leave out some
attributes, even if they make sense in the model (e.g. feel free to go with last names only, if
you're including a person's name, or leave out pieces of an address, if you wish, but you must
state in the write-up that you are doing so for convenience!). Your database must be unique
and unlike any other database in the class. Topics will be selected on a first-come, first-served
basis, via email. Clear your topic with me before you start drawing a diagram! You must send
me an email with the topic and I will respond with whether or not you are approved.
Write a description of what your Project will entail. Be specific and keep in mind what it will be
used for. In other words, what is the purpose of your database? Start with an overview of the
scenario, and then get into the details of exactly what data is needed in the database to solve
the problem described. Keep in mind the required relationships in Part Two. Remember, you
will have to enter information into the database, as well as query the database for information.
This description should be detailed enough and contain all of the necessary business rules to
justify each and every detail of your object model! However, this description should not be
over two pages.
Using an automated drawing package (i.e. this cannot be drawn by hand), draw an Object
Model that specifies the design of your database for the Project. The model must include the
following:
at least one one-to-many relationship
at least one one-to-zero or one relationship
at least one many-to-many relationship
at least one multi-valued attribute
at least one subclass
at least one associative entity
at least one attribute that can be calculated (for example: FSalary, CKPrice, COQty)
Again, this should match your project description exactly. Every piece of the model should be
justified by the project description, and the model should fully handle every piece of data
needed for the project.
Put another way, you should be able to give your case to anyone else in the class, and they
should come up with an object model extremely similar to your model. If that isn't the case,
your description or your model is flawed!
Then, convert the model into relations and normalize (i.e. place into 3NF), if necessary.
Formatting
Due Date: March 27th at the beginning of class (8:31AM is not 8:30AM)
Be aware: This assignment will be graded very harshly, as you should be able to do all of these
things with ease, by this point in the term!
Ten points will be deducted for each 24 hours that this assignment is turned in late.
If you are confused about ANY part of this assignment, please contact me ASAP for
clarification.