CIS 371 Term Project Details#

Objectives#

The term project is designed to:

  • Demonstrate mastery of skills learned in the course.

  • Provide experience building and presenting a moderately large web application.

  • Encourage teamwork and consistent development practices.

You will work in groups of 2–3 students. Each group will design and implement a web application (not just a static web page) that is practical and original. The project should include key features expected in real-world applications and must be deployed with a functioning cloud backend.


Project Requirements#

Your web application must demonstrate the following:

  1. Project Proposal

    • Submit a one-page proposal early in the semester.

    • The proposal should include:

      • Overview of the application.

      • Problem solved and uniqueness.

      • Potential users.

      • Team responsibilities and role distribution.

      • Database design (collections/tables, attributes).

      • Any planned external services.

  2. Complete & Realistic Features

    • Functional features that reflect real-world app behavior.

    • Example: a shopping app should include cart and checkout.

  3. User Authentication

    • Implement a secure login/logout system.

    • Support multiple concurrent users.

  4. Cloud Database

    • Use Firebase Cloud Firestore.

    • At least two or three collections (depending on group size).

    • Must support both private (user-specific) and shared data.

  5. Database Operations

    • Implement full CRUD (Create, Read, Update, Delete) functionality.

  6. Frontend Framework

    • Use Vue.js (preferred) or a comparable modern frontend framework.

  7. Visual Design

    • Apply CSS or UI frameworks (e.g., Vuetify, Bootstrap) for a responsive, professional look.

  8. Version Control & Progress

    • Maintain the project in a Git repository.

    • Commit regularly to demonstrate consistent progress by all team members.

  9. In-Class Presentation

    • Each group will present their project in class.

    • All members must participate.

    • A live demo is required.


Deliverables#

  1. Proposal Document (one page).

  2. Deployed Web Application with a publicly accessible URL.

  3. Git Repository with full source code and commit history.

  4. In-Class Presentation and live demo.


Grading Rubric (100%)#

  • Project Proposal Quality – 10%

  • Complete & Realistic Features – 10%

  • User Authentication – 10%

  • Cloud Database – 10%

  • Private & Shared Data – 10%

  • Database Operations – 10%

  • Modern Frontend Framework – 10%

  • Visual Design – 10%

  • Weekly Progress via Git Logs – 10%

  • In-Class Presentation – 10%