Overview of Project 1
In Project 1, you will build a substantial real-world database application of your choice. This project is split into three parts:
- Part 1: come up with a web application and design the database on paper using ER-modeling.
- Part 2: implement your database by translating your model into a database schema and example data.
- Part 3: implement an application that accesses and modifies your database.
Pick an application that you will enjoy working with, because you will be working on it for a substantial part of the semester!
Try to pick an application that can be populated with real data, since it will make the application more interesting.
You will implement your web application Google Cloud. You'll be able to share the URL with your friends. It'll be awesome. See programming.md for details.
Summary of Deadlines
- 9/6: Find team-mate in class or on Piazza to find one.
- 9/18-27: Meet with course staff to discuss your application and design. This is a required meeting.
- 9/27: Submit Part 1
- 10/11: Submit Part 2
- 11/8: Submit Part 3
Note: you can only use late days for the project description submisson, not for finding a teammate nor for meeting with the staff. Please read the Project Lateness Policy carefully.
Teams of exactly 2
- [Click here] if you want to be matched by the staff's "auto-matching" system. You state your past experience level and the maximum difference you are willing to be matched with, and it suggests a match.
- Simply write the name and UNI of both members when submitting part 1.
- Write a contingency plan in case your teammate drops the class.
- If you decide to drop the class, or are even remotely considering doing so, please be considerate and notify your team-mate immediately.
- Do not wait until the day before the deadline to start working on the project, only to realize that your team-mate has dropped the class or moved to another planet. It is your responsibility to start working on the project and spot any problems early.
- Please check the Collaboration Policy web page for important information of what kinds of collaboration are allowed for projects.
We strongly suggest you use the following approach when you encounter bugs. This is basically what professional software engineers and data scientists do:
- Use Google or StackOverflow by searching for the error message
- Look for previous answers on Piazza
- Ask on Piazza. Include the following in your question:
- what you're trying to do
- describe the approach you took
- the error message
- what solutions you've tried
- Ask the staff in OH