CSCI 470- Database Management Systems Semester
Project
Phase 1 - Database Design Documents
Due Date: Tuesday,
October 28, in class
The purpose of this
assignment is to familiarize you with the methods and documentation of business
requirements analysis using Object-Oriented Analysis and Design Techniques.
This is what drives database development. This phase preceeds
any implementation details. Create your Phase 1 Design Document in exactly the
following format and order:
1) Problem
Statement/Requirements Definition. Develop a narrative statement of the
needs for this project. Begin with a overview and
background description of the organization and enterprise. What is the business
operation that you are automating? Next describe what is to be done and what
business processes you are focusing on for the project. Your Requirements
Statement needs to include the problem scope, what is needed, the application
context, and assumptions and performance needs. Note:
This was a part of your Proposal – if you feel that you can enhance it
further beyond the Proposal Phase, do so now.
2) 2
a)The Entity-Relationship Model which
will provide the mapping to the global schema for your database.
2
b)You will also build a *simple* Object Model
diagram along UML modeling principles discussed in class and
shown in online notes. Entity-Relationship Modeling is covered in Chapter 3 of
your text and Enhanced Entity-Relationship Modeling is covered in Chapter 4.
Object Modeling is discussed in Chapter 12 of your text. Examples of E-R
models and Object Models appear in the online student project examples as well.
3) The design of
the User Views of the database:
3a) The design of each data entry and edit
form you will use in your database. Since you are designing a web-based
interface to your database, use a tool that allows you to display your form in
a browser. Present these in a
graphical form and assign each view a unique identification number and name.
Give the name, number and a brief description of each form along with its
graphical design.
3b) The design of each report that extracts
data from your database. Present these in a graphical form and assign each
report a unique identification number (distinct from view numbers as well) and
name. Give the name, number and a brief description of each report along with
its graphical design. Again, these
reports will be displayed in a browser, so you should design them in an
appropriate tool.
4) A Data
Dictionary which lists all the data items, user views and tables(objects). For each atomic data item (i.e. single
attribute) gives: the name of the data item, the description or meaning of the
data item, the data type, any aliases, the range of values, whether or not the
data item is a primary identifier (key) or piece if a primary identifier, and
if so, in which object and finally, whether or not the data item is a foreign
key, and if so, in which objects.
Since these are going to be elements of your database schema, you can do
this directly in the database you will be using as a backend to the
application, such as MySQL.
Note: Items 5-6
below would be part of a Dynamic Model of your database application. The Dynamic Model shows how the
application is used and how the interface responds to user interaction.
5) A Set of Use
Cases: You will need to include a use case diagram and a narrative
description of each use case. If use cases are complex, break them down
hierarchically into sub-use cases. Use cases are described in the notes. See
other links on my web page for more on Use Cases.
6) A Set of Scenarios for each Use Case and a
corresponding Event Trace (OMT
terminology)/Sequence Diagram (UML terminology). I.e. event trace and
sequence diagram are synonyms. Please
see the paper "Developing a Dynamic Model for Electronic Filing to learn
how to develop scenarios and event traces/sequence diagrams from use
cases. Also see the example student projects online.
FOR
DISCUSSION OF SCENARIOS AND SEQUENCE DIAGRAMS - TAKE THIS LINK
Here
is an example from an OOAD midterm
Items 1-6 are what is
required for your Phase 1.
****Not required, but a part of a complete
Dynamic Model is:A Set of State Transition Diagrams that
show the changes of state of your user interface to your database. These are
constructed from your event traces and show how your interface elements
interact. Please
see the paper "Developing a Dynamic Model for Electronic Filing to learn
how to develop state transition diagrams. Also see the example student
projects online.
Also
see - How to develop a
State Transition Diagram for an Object Class using Sequence Diagrams!!