Lab 1: Database Schema Exploration
The goal of this lab is to think about how databases support application development (e.g., websites), and to practice describing a database schema. Completing this lab will help with Homework 1.
You are required to work with a partner.
Steps
- Choose a sufficiently complicated website to analyze. Either choose a website that allows users to log in, or has some other form of interactivity. For example:
- Social media (e.g., Twitter, Reddit, etc., but not Facebook, since we discussed it in class)
- Ecommerce website (e.g., Amazon, eBay, etc.)
- Recipe website with reviews
- Workout tracking website
- Take screenshots of several pages on the website which you think are populated by data from a database.
- Circle at least 10 different page elements which you think are populated by queries to a database.
- For example, for Facebook you might take circle your name, your birthday, etc.
- If you can’t find 10 different elements from a database, take more screenshots, or choose a different website.
- Design a database schema to hold these page elements. Your schema should be formatted as tables, similar to the example below.
- For lab, it is optional to include example data. For Homework 1, you will include example data.
- Try to find out what kind of database(s) the website uses by searching online.
Note: Refer to these instructions for taking screenshots on macOS and on Windows.
Submit
Upload a PDF containing:
- Your names
- The URL of the website you choose
- The annotated screenshots of the website
- A database schema based on the page elements you identified
- Any information you found about the kind of database used by the website
This will only be graded for completion, as part of your attendance and participation grade.
Example Schema
Users
ID | Name | Password | Birthday | Phone Number | Relationship |
---|
Status Updates
Timestamp | User ID | Text |
---|
Friendship
User ID 1 | User ID 2 |
---|