UCombinator

Startup Submission 04: ER Diagrams

Introduction

Now that your startup team has implemented a static React mockup of your application, they want your startup to begin planning for a dynamic mockup of the application. As your instructors describe in Workshop 7, you need to think critically about the data in your application before you can complete a dynamic mockup.

In Workshop 7, your instructors describe how to represent the data needed by a Facebook feed as an entity-relationship diagram. UCombinator expects you to think critically about the data in your product, and wants your startup to produce an entity-relationship diagram like the one in that workshop.

We describe everything below.

Startup Submission

Like with the ER diagram in Workshop 7, we expect you to:

  • Use has and isa relationships where appropriate.
  • Label all relationships to indicate if they indicate an embedding relationship, or a referencing relationship.
    • Workshop 7 uses different colors to differentiate between these.
  • Label the quantities on relationships between entities.
    • In Workshop 7, we labeled each side of a relationship as 1 or n.

To create your ER diagram, we recommend the free Draw.io diagram web application. You can click here to access the ER diagram from Workshop 7 as an example to start from. Right click that link, save it to your computer, go to https://draw.io, click on File -> Open From… -> Device, and select the HTML file you just downloaded.

You are not required to use Draw.io, so you can use alternatives if you are more comfortable with them. You may find it helpful to whiteboard the diagram first before you try to finalize it in electronic form.

Submit the ER diagram along with a short report, briefly describing:

  • Your ER diagram notation, if it differs from what we used in Workshop 7
  • Short entity descriptions
    • Example: Book: A unique published book in our database. Different revisions of the same book are represented as separate Book entities.
  • Short description of how each page/widget of your application uses the entities in the database
    • Example: Recent Orders: The Recent Orders page lists the active User’s OrderList.
    • Example: Order Details: Lists the name, price, and quantity of each Item in the Order. If the Item isa DigitalItem, it will also include a link to that item’s downloadUrl.
    • Example: Facebook Feed: The Feed lists recent Facebook FeedItems authored by Users in the active User’s FriendList, and by Pages that have the active User in their LikeCounters.
  • If you have decided to cut any features from your product since your last submission, describe those changes.

Place the report in your GitHub repository as reports/submission_04.pdf. We will pull your repository on the late deadline to grade it.

Make sure you have everything added, committed, and pushed to your team’s github repository. After you confirm that the repository is up-to-date, you must submit the URL to your github repository to Moodle by the assigned due date.

Grading Rubric

  • 25% Report contains a short, understandable description of how every page/widget of your application uses the entities in your database
    • We will take off points if something is missing
  • 25% Report contains a short, understandable description of every entity in the diagram
  • 50% Given the description of the entities and how your product uses the data…
    • 25% … the embedding and referencing relationships make sense
    • 25% … the entities and their relationships make sense

Honors Students

This section is only relevant during semesters when an honors section is offered

In addition to the group submission, honors students must produce an ER diagram for the data that their product feature requires. You can choose to simply add your ER diagram entities and relationships to the main product’s ER diagram, or to produce it separately. If you produce it separately, it must be clear which entities are new to your diagram, and which are shared with the main product’s diagram!

Included within the main product report (in reports/submission_04.pdf), describe:

  • Your ER diagram notation, if it differs from what we used in Workshop 7
  • Short entity descriptions
  • Short description of how your feature uses the entities in the database

Grading Rubric

  • 25% Report contains a short, understandable description of how your feature uses the entities in your database
  • 25% Report contains a short, understandable description of any new entities or relationships your feature introduces in the diagram
  • 50% Given the description of the entities and how your feature uses the data…
    • 25% … the embedding and referencing relationships you have added make sense
    • 25% … the entities and their relationships you have addded make sense

Please submit a URL to Moodle of your startup’s repository by the due date of this assignment