Link Search Menu Expand Document

Assignment 3: Revised Project Proposal


Table of contents

This is a report to completely specify your project and to give us all related details. It should be a stand-alone complete report/design document of your project and reflect overall scope, design, implementation strategy and current status: you may think of it as a document that can be given to any group and they would know what exactly you are planning to implement for this project. Please reuse portions of the previous proposal you made about the project. Make sure you take into account the feedback we gave you so far.

At the time of your final demo meeting, we will be consulting this design document report and any feedback/comments we will be giving you on Canvas and verbally in subsequent meetings. We will have this document and our feedback as a guideline to evaluate your final deliverable. At the “demo” you will show us a ppt presentation that describes the details of what you tried to achieve, what you learnt etc. No other report will be required besides the slides for the final ‘demo meeting.

Proposal Format

The following format must be followed as much as possible. Keep the total size of report to 5-7 pages in addition to the title page. (If you need more pages, feel free to go ahead - we will not take that against you.)

  1. Cover page: Mention GROUP number (important for us to keep track), latest project title, list of project members and repeat the 3-4 line background of each member (alphabetically ordered by last names with email of each member). Highlight the lead member of group.
  2. Learning Goals/Problem Statement (depends on the nature of the project) – Every project in this course must have a database component. Keep in mind that this project is for you to learn and explore new database technologies. Describe what sort of application you are implementing and who will be a typical user of your application. Describe what are the specific learning goals you have set out to achieve by doing this project.
  3. Approach to solve/Functionality of the System: State the problem/overview of the functionality you are trying to achieve – this should include what you aim to accomplish in terms of the features and functionality of the end product of this project. State clearly what is within your scope and what is not. Each function that you will be able to show us must be described with some detail. This is one area where the initial proposals have been very weak. Be clear about what exactly you think you can implement given the time.
  4. Design of database: Show an EER diagram and a set of tables with the attributes you are using along with some architectural details of how you are going about the implementation. When using NoSQL systems like Firestore, MongoDB, Neptune or Neo4j, you may give an EER diagram of the application and give details on how you mapped that into the target DBMS. If you are using a publicly available database (like the movie data, healthcare data from Kaggle etc.), the EER diagram and the schema in the target DBMS should still show all relevant details to convey the requirements of the application you are targeting. Also, with public databases from NBA or NIH or Kaggle etc., there should be a design of schema showing all the attributes you are storing in your version of the data.
  5. Analytics: (Applicable where you are showing analysis of public data). For applications of analytics nature, be clear to state all attributes you are capturing, how you scrape the data, exactly what subset of data you are storing, your feature selection method (in case any machine learning procedure is applied), sources and any real-time aspects, how the results are stored, etc. Pure machine learning algorithm implementation is NOT enough for this course.
  6. Data: What data you are using, and where it is coming from. You must state this clearly and say how this data will be created (synthetically or from some website or just list some mock-up samples that you will create to demo your functionality). For public databases, give a description of source database (with URL) saying what are its overall contents, and what parts of the available data you are using. If data scraping is involved, describe it in clear terms This has been kept vague by many groups so far. Please be clear on this.
  7. Interface details: how does one use your application? Fancy interfaces are NOT expected as a part of this project, but how the app works and how the user interacts with the app must be clearly specified.
  8. Visualization: you need to clearly specify what sort of visualization you plan to show – give some sample pictures identifying what the visualization axes represent. Mention what libraries you will use for visualization.
  9. Architectural overview: (components and interfaces) as applicable and implementation details of how the system/tool/application is supposed to work in terms of control flow or step by step operation. If your system has multiple components, describe the scope of each and its functional features. Whenever possible, we highly encourage you to include an architecture diagram along with the description of each component.
  10. Technologies: If you are using tools and libraries, please list what they are. Environment and platform details go here and must be explicitly stated.
  11. Algorithmic overview: if applicable (if implementing some published work, explain). If you are using public libraries, published algorithms or tools, say what they are and how you will use them.
  12. Demo Plan: What you think you will be able to show as a demo (again, no need for fancy interface work). We will ask you to demonstrate and explain the capability and features you have tried to implement. Demo does not mean just showing how the application works but showing and explaining to us all the details of what you had to implement to do this project, what approach you took, what challenges you had to overcome, etc. (A detailed guideline for demo will be posted later. They will take place from April 24th to April 28th.
  13. References if any: (use the style as shown in my previous instructions about references.) Include these if you are drawing ideas from any papers in particular. All projects may not have references to list. Any websites you are consulting or basing your project on must be clearly identified in this section. URLs of specific tools and libraries may also be mentioned.


  • Above guidelines are generic across projects. For your project, you may tailor them according to the nature of the project.
  • Use above headings in your report so it will be easy to evaluate.
  • Make sure to answer any questions we have raised in your proposal feedback.

Submission and Grading

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

We will evaluate on the basis of clarity of this report, completeness of the design and overall description of the approach taken. We will then provide you feedback; the overall grade will be given as a letter grade on the 4-point scale to all group members.