CSCI 273M- Database Management Systems Semester Project

Phase 1 - Database Design Documents

Due Date: Thursday, April 5, in class (may be resubmitted with corrections once)

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 proceeds 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.

2) The Entity-Relationship Model which will provide the mapping to the global schema for your database. 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:

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.

Note: Items 5-7 below constitute a Dynamic Model of your database application which 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

7) 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!!