Link Search Menu Expand Document

Project Milestone 1

Your task for this milestone is to (a) pick a group of people to work with, and a (b) choose a domain that you want to design a database-driven web application around.

What you need to do

  • Read over the project guidelines.
  • Find a group of four people, though one group may have three (forming the group of three will be first-come-first-serve, so contact me as soon as you have your group formed if you want to be the group of three). There are 27 people in class, so we should end up with six groups of four people and one group with three.
  • Pick a domain for your project: the “main idea” behind the web application your group will build. Some ideas to get you started are listed in the project guidelines.
  • Decide how your website will function from the user’s perspective. In other words, describe how a user would interact with the website: what can the user do and what they see while doing it. Don’t get technical here; use language that a non-computer scientist could understand. Be detailed; explain all the functionality that you can. You can use flowcharts or pictures or diagrams if you want.
  • Hint: The goal here is not necessarily an algorithmically-interesting project, but rather a project that emphasizes the database aspects. Take Amazon’s website as an example. There’s not much about that site that is complicated from an algorithmic perspective (with the exception of maybe the part that suggests other products you might like based on the one you’re looking at). Instead, the website is driven by tons of data: who the customers are, what their purchase histories are, what’s in their cart right now, reviews of the item they’re looking at, etc. And the website is mostly about simply manipulating that data: creating it, reading it, updating it, and deleting it (CRUD).

What to turn in

Hand in a one-page write-up describing all of the above items (group name, members, domain, and website functionality). Do not skimp on the functionality section; try to brainstorm as many details as you can. It’s better to have too many ideas here than too few.