Over the course of the semester, you will develop a database and web application to interact with that database. The resulting system should be usable by others – i.e., it is fully functional, supporting the expected set of operations for its users with a comprehensive user interface, and contains representative, real-world data to demonstrate its functionality. The project should be non-trivial but not so complex that it requires more than 5 weeks of work (approximately 30 hours total outside of class).

The project deliverables are organized as a series of assignments:

  1. Proposal
  2. ER diagram
  3. Schema design
  4. Website
  5. Application

You may complete the project individually, but working with a team of 1–2 other students (2–3 team members total) is strongly encouraged. Teams will be expected to do more than individuals, but in practice, the total amount of work rarely grows linearly (e.g., writing a project proposal as a team might require 50% more time than writing the proposal individually).

Ideas

You are strongly encouraged to pursue a project that is related to your capstone topic (if known) or your personal interests. You may propose a project that is related to another course’s project or assignments, but if you do so, you must 1) clearly identify what is unique to each course as part of the proposal and 2) notify and receive approval from the courses’ instructors prior to submitting the project proposal. Working on a project that is related to another one lessens the “start-up time” that is spent learning about the project.

Projects that require interaction with a client outside of the class will be viewed particularly favorably when grading.

Listed below are a number of ideas for consideration (please note that this list is not comprehensive).

Falcon Telescope Network
Develop a web portal for the Falcon Telescope Network (POC: Francis Chun)
Test question bank
Organize questions and answers, allowing unique versions of tests to be created automatically from the question bank while ensuring appropriate coverage of material
Fitness tracker
Record workout information and provide summary reports to improve personal fitness
Textbook swap
Collect textbook information and create listing for students to sell them “offline” the next time that a course is offered
Squadron / team feedback system
Track comments and ratings for inspections, etc.
Stock portfolio (or personal finance) tracker
Record transactions and stock positions (gains or losses) or difference from budget allocations
Competition “ladder”
Organize sports games (tennis, racquetball, Mario Kart, etc.) based on skill level with participants moving up or down the ladder based on the results
Database for non-profit
Track members, donations, specialized needs, etc. for a specific non-profit organization
Tutoring
Volunteer expertise in particular subjects (or courses) so that those struggling know where to find help
Auctions
Create a private version of eBay or Amazon Marketplace
Student / alumni database
Maintain information about students (courses completed, GPA, graduation year, job(s), etc.)
Multimedia database
Store photographs, songs, movies, etc. along with metadata so that the content is searchable and sharable