Creative Projects - Data Diagram

tl;dr; Prepare a plan for the data you think your application will need to store and why

Creative Projects: Data Diagram

Building on last week’s proposal work up a diagram that explains the data your application will store and use - and why.

Note if you won’t be storing data you can skip this step.

Workflow

Starting with your workflow, review it for any point at which your application will need to

  • create, update, read or delete information from a database that is dedicated to your application
  • access data from third parties through an API or other source.

Update your workflow diagram to include:

  1. the source of information (is it a table and what might be the name, or what is the third party it’s being drawn from)
  2. the elements of information that might be needed. Consider what are the specific items that are needed to communicate back to a user or get from them
    • For example, if the workflow is for a task application, what is returned to the user in response? What attributes are included e.g. the number of tasks outstanding, a list of the names of the tasks due today (which incidentally implies a flag for completed or not, and a due date as a field you’ll need to capture), etc.
    • For example, if the workflow is for a scheduler and the user is adding an item to their schedule, what information (at minimum) is needed to do this? A location, a title, participants, etc.

Once you’ve captured this information, translate it into a schema.

  • Create a list of tables you’ll need to store
  • For each table, list the columns (or attributes) that should be included, and the datatype (string, text, datetime, boolean, integer, float, etc.)
  • Indicate if they’re required or not.
  • Note if there are any relationships between the tables e.g. do users have many tasks.

It should end up looking something like this

Data Model diagram (credit http://atsequence.tistory.com/)

Submitting your work

Append this update to your project documentation. Either edit the ‘README.md’ in your Student Folder or create a new file called ‘FinalProject.md’ use this to add all documentation to.

These files are written in Markdown pages (see this cheatsheet too)

You can edit this in one of the following ways:

  • You can edit it raw within your text editor of choice
  • GitHub provides an online inline editor - visit the repo, open the file, and click the edit icon in the toolbar (right hand side).
  • You can use an online tool like Dillinger or StackEdit to develop your document, and then copy and paste to your repo.