Link Search Menu Expand Document

Assignment 2: Team Project Proposal Draft


Table of contents

In this assignment, you will form teams to develop a project that extends beyond implementing a basic database application, as experienced in CS4400. This project is an excellent opportunity to explore various aspects of database systems, innovate applications, or delve into research and evaluation of database management systems or tools that fit your interests. The project is implementation-oriented.

Proposal Draft

Forming Teams

You will form teams on your own. Aim for a team of 4 members. Team of 3 is fine, but Teams of 2 will be allowed only if there is a strong justification. You can use the “Search for Teammates” feature on Piazza for forming the group. The “Project Group” tab under the “People” section on Canvas tells you which students have already signed up for groups.

Proposal Format

Your project proposal should cover the following topics:

  1. Cover Page: Title of the project and team members’ names (last name, first name) in alphabetical order.
  2. Background: List each team member’s coursework, threads, and practical experience related to databases and technologies they have used.
  3. Project Goal: Define what the project aims to achieve and the desired outcome.
  4. User/Use Case: Identify potential users and beneficiaries of the system or application. What types of interface will they have?
  5. Problem Definition: Define the scope of what you plan to do and what you do not plan to do.
  6. Design and Approach: This is the meat of the proposal. Here you can be more specific about what is the eventual functionality of what you are implementing, what data you will use, what technologies you may adopt, and any architectural information in terms of modules you will implement. Discuss what will be implemented and how – list languages /tools/frameworks may be used.
  7. Work Division and Schedule: Outline how tasks will be divided among team members and a tentative execution timeline.
  8. Demo Plan: Preliminary idea of how you plan to demo the project. What functionality will be demonstrated?

Project Requirements and Expectations

  1. The platform, system, language etc. is totally flexible.
  2. Use of some relational DBMS like MySQL, PostgreSQL, SQLlite or some NoSQL DBMS like MongoDB, Cassandra, Neo4j is mandatory to qualify as a project in this course.
  3. You are encouraged to interact with any other faculty members or any graduate research students to define a “meaningful yet small” project. Integration with any ongoing research in any group in the college is acceptable if a student is already associated with some research project. However, the class project must stand on its own and cannot be used in any other course.
  4. Public databases can be used – you may extract certain subsets and develop an application that analyzes that data. We have also provided a list of public datasets for your reference. However, simply visualizing a public database or running some ML library routines against the data are not sufficient.
  5. The team-size will be considered in setting the expectations.

When proposing the project, please keep in mind that the final project will be evaluated based on the following criteria:

  • (i) overall effort
  • (ii) how challenging it was and how you approached it, proposed ideas, and hardness/difficulty
  • (iii) completeness of design and implementation
  • (iv) the extent to which new database techniques were used or explored (innovation/novelty)

Sample Projects

We have shared the five best projects from the 2019 Spring class here (also available on Canvas under Files tabs). For each group, we have shared the project proposal and the final presentation. The PPT presentations are not exhaustive but should give you an idea of what the group did.

Here are some additional examples of past projects:

  1. Implementation of a specific file access or indexing scheme for a temporal/image database.
  2. Use of a DBMS to build an image database with querying by content or by descriptors.
  3. Implementing ideas of storage and indexing from any of the research papers that deal with Storage Management.
  4. Implementing a DBMS that simulates storing, accessing, and a limited querying of data in the ER model so that it is an ER DBMS. (this work led to a publication in the ER conference).
  5. A comparative performance study of some data mining algorithms.
  6. A medical or bioinformatics application using a DBMS that deals with genomic data or patient clinical data.
  7. An engineering information system prototype application using mechanical or electrical design data.
  8. A database for virtual reality applications.
  9. Implementing some aspect of a geographic data management system – e.g., a path finder for going from A to B on campus with certain constraints and making it into a mobile app
  10. Development of a web-based querying tool for unstructured data.
  11. A program/software documentation, annotation and change management system using software as data.
  12. Development of a database application on a handheld device for a mobile app.

Additional examples of projects from the 2019 Spring offering of course:

  1. A comparative evaluation of some NOSQL systems.
  2. A messaging application with a database backend.
  3. A web-based file management and searching application.
  4. A search and analysis app on public domain data – e.g. Movies.
  5. An electronic medical record system prototype using Cassandra.
  6. A multi-user gaming simulation prototype with database backend.

Tentative Project Timeline:

  • Proposal Draft (Feb 7): The proposal draft is not graded and intended for feedback.
  • Proposal Feedback (week of Feb 19, tentatively): The instructor and the TAs will give you feedback and comments on the proposal draft.
  • Project Proposal (Mar 4):The revised proposal will be graded and it’s worth 10% grade.
  • Project Presentation (Apr 17,22): Present project (10mins per group) during the last two classes (5% grade).
  • Project Oral Explanation and Demo (Apr25-29): Explain your work with a live 15min demo session with the instructor and the TAs in the final’s week (15% grade).

Submission and Grading

Submit a PDF with your proposal draft on canvas. Only one submission is required per group.

This proposal is not graded and is intended for getting early feedback. We plan to schedule a 10 min Zoom session with each team to discuss the proposals.

Assignment 3 will ask for a revised proposal, which will serve as a design document for your proposed project and will be graded.