CSCI 5931A
Advanced Database Development
Fall 1998
Homework #1

Due: September 8, 1998 (Tuesday)

Web-based polling system

The web-based polling system includes a user module and an administrator module.

The voting system displays a question and voting options for the user to vote through the web.  Here is an example as appeared in the e-magazine JavaWorld.

The user module allows the user to:

For the user to vote, he needs to supply his name and email address at the minimum.  The system does not accept vote from the same ip address more than once within any 20 minute time period.  The user votes on the current question only but may see the result of any previous questions.  Usually, the most recently set question is the current question.  Voting results are displayed by suitable graphics.  There should be a sophisticated comment reader which displays the latest comments first.

The administrator module is password protected.  There may be more than one administrators.  The database should store the name and email address of every administrator.  An administrator can create the username and account of another new administrator.  An administrator can set voting questions.  There are many utilities that the administrator may use.  For example, an administrator may want to see all questions set by himself in a chronological order.  A voting problem consists of a question and as many choices as the administrator like. The administrator may specify the display order of the choices.  When setting a voting problem, the administrator may specify the keywords associated with the problem.  He may then search all voting problem according to key words.


(1)    Use Rational Rose to devise the top level use case diagram for the application.

(2)    Use Rational Rose to devise the class diagram for the application.

(3)    Construct a reasonable relation schema for the application by hand.  Underline the primary key.
 

Submission

(1)    Put your Rational Rose project file as youraccount\5931\hw\h1.mdl in your NT account.  I may test run it.

(2)    Hard copies of your diagrams and listings using laser printing.  Handwritten work will not be graded.

(3)    A cover page specifying your NT account name.