/get2gether

Group Calendar / Personal Assistant application developed with Qt software :: [CS441 Software Engineering Final Project]

Primary LanguageC++

Get2gether

CSUSM: Software Engineering
Fall 2017 - Samra Sukendeep

Image

Background

As a team, we struggled to find appropriate meeting times that would cater to each member. We needed an application that could organize both individual and group schedules like school work, upcoming exams, work schedules, social events (i.e. a family member’s birthday party), and any personal tasks (i.e. Dentist appointments) that we may have. The solution to our problem was Get2gether.

Get2gether is an application that acts as a personal secretary in which it helps the user plan schedules, organize tasks/reminders, and keep track of their work. The application uses tools such as a chat, a calendar, and a meeting scheduler as well as reminder notifications to help manage their personal schedules.

Functionality

  • Users can create their own account and login
  • Users can create, edit, and delete personal events
  • Users can create groups and add members to the group.
  • Groups can keep track of group events via the Group Calendar
  • Any group member within a group can edit, create, and delete his/her associated group
  • Group members can instant message one another via the Discussion Board located in the Group Calendar view
  • Reminders are provided to the user of upcoming events within the current week

Image

Sprints

Using the Agile approach to software development, a total of five sprints was utilized which lasted two weeks each. Development of the project lasted from September 17, 2017 to November 25, 2017.

Sprint 1

  • Review QT and SQL DataBase
  • Flesh Out Use Cases
  • Work on UML

Sprint 2

  • System Requirements
  • Work on Prototype of Application
  • ERD design

Sprint 3

  • Create Database Tables
  • Button Functions
  • Show events in Tableview of Specific day
  • Highlight Calendar days that have events

Sprint 4

  • Create Group, Group List, and show Group Calendar
  • Update Database for Group
  • Make the UI differentiate between group and user’s personal calendar

Sprint 5

  • Discussion Board and Reminders
  • Refactor and Debug code
  • Prepare Powerpoint Presentation

Database Design

All data is stored on a MySQL database hosted on Google Cloud and maintained using MySQL Workbench.

Setup: MySQL 5.7 | 3.75GB Memory | 10GB SSD Storage
Schema: https://github.com/isaychris/Get2gether/blob/master/get2gether_db.sql

Image

Technologies

  • QT Framework
  • MYSQL Cloud Database
  • MYSQL Connector
  • C++

Team

Name Profile
Chris Banci https://github.com/isaychris
Katherine Mayo https://github.com/kathymayo5
Chris Morikawa https://github.com/CodingMorry7
Zena Nuhaily https://github.com/zenanuhaily
Greg Seda https://github.com/gregseda
Malialosa Taupule https://github.com/curvySage
Andrew Zhang N/A
Esmond Liang N/A