VULab Database Schema Planning

VULab has made a decision to move unto a new framework and with that comes a re-factoring of the database schema to better suit and organize the data. Below is a chart of the database and various notes on it.

Note: This is a first draft and should be taken with some sugar

Update v2: I opt'd to use abunch of relation tables so I could keep more detail

Update v3: Fixed some typos and added more detail.

Legend

  1. Items With a (1) and blue writing are table names
  2. Items with green writing are fields (note names are given for readability and may change when implemented. ex. 'project_id' might become 'pid')
  3. Items that are in bubbles with red lettering are notes for a given field. 

Full Full Size Flow Chart (Its Big)

Notes

  1. Arrays in database will be stored as a comma separated list, or a serialized array (decision to be made)
  2. I will be using a drupal style ordering system which uses a "weight" integer to organize items
  3. Each question type will have its own model that can interpret its own choices.
  4. The user and related tables (roles, groups) are controlled by an existing library and are mostly a placeholder in this diagram.

    I made this map with FreeMind which is a cross-platform (java) open source mind mapping application that uses the GNU GPL V2+ License.