FAQ Project
Chum 240 Fall 2007
Due date: (see schedule)

Design a database and provide SQL statements needed for the following project:

FAQ Database Project
--------------------

Concept
-------

Show a list of frequently asked questions (FAQ)
and answers provided by a group of experts.

The list of questions will be perused by users.
When they see an interesting question they will
request to see any answers it has.

Requirements
------------

1. Each question will have zero or more answers.
2. Provide a way to determine how much time it took
   to answer a question. 
3. Record contact information for each expert.
4. Keep track of which experts submit which answers.
5. Answers will be rated by users according to 
   perceived usefulness.
6. Experts will be rated based on the cumulative ratings
   for answers they have submitted.

Fully document you design by doing the following:

  • Provide any additional requirements you think are necessary to resolve ambiguities.
  • List the entities mentioned or implied by the concept and requirements.
  • Describe the entity relationships essential to the requirements.
  • Show the database schema (tables and columns) indicating key columns and foreign key references.
  • Write use case 'stories' that fulfill the requirements. Each story should include the following:
    • A brief statement of the task to be done.
    • A reference to the requirement prompting this case.
    • An explanation of the steps necessary to perform the task.
    • When useful, a summary or illustration of the results.
  • Produce SQL statements to create the tables in the schema including column constraints when needed.
  • Produce the SQL statement(s) needed for each use case.
  • Use your copy of SQLite to check your statements.

Your assignment should have a cover sheet with the class (CHum 240 Sec. 001), your name, and the date the assignment is due.

Copyright ©2007 Brigham Young University