Master branch: https://github.com/cse112-sp20/team5-project (actual master branch)
Master branch: https://github.com/cse112-team5/team5-project (temporary we created)
Phantime has a project overview notion page that goes over the different directories and types of files that are present in our github master branch. This provides a structural guide of our program to new coders in the future. (Project Overview)
Phantime has a style guide that lists out guidelines for writing codes for the coders to maintain consistency in our master branch. Consistency in our code helps with future updates when new coders add features to Phantime. (Style Guide)
Code Commits 🔐
Our commit style requires you to squash your commits. Phantime also utilizes design documents to document new features/changes.
Code is an average being committed every other day. Commit should be < 100 LOL. For each PR merge to master, there must be at least one review done by another coder.
Testing 🧪
Phantime has a tester team who is responsible to produce tests that check the
functionality of the written code from the coders. The testing team is independent of the
coders, and coders should not be writing any tests.
We write tests for the foundational functions employed in the background files, user
interface, and integration tests to ensure all processes are working.
We have testers who write simple unit tests, and others who work on integrating
frameworks and setting up a simple tester html file for executing these tests.
Our tests are in the /tests folder. They are executed using the tester html file
/tests/tester.html.
Documentation 📝
Firebase Visualization: We created a visualization of our firebase database hierarchy, showing what and how data are stored, updated in Phantime. (Firebase Diagram)
Initial Pitch: Our team leads presented our project pitch to Professor Powell, which
includes the project concept and the problem we wish to resolve. (Initial Pitch)
Demo Recording: Phantime created a demo video at the end of sprint 3 to showcase our
development progress. The recording includes MVP features such as login, productivity
score, and join a team (In class Demo)
Commercial: Phantime created a commercial for our product at the end of sprint 3 to
convey the idea behind the product and what to expect when the software is shipped
by the end of sprint 4.(Phantime Commercial)
Project Ideation: We utilize miro to brainstorm our project idea with the intention to produce some software that helps people to achieve better productivity and less distraction in a remote setting. (Miro Board)
Spirit Assignment: For each spirit, our team leads send out assigned tasks for each department to complete. The tasks are often due by the next Stand Up meeting on Monday. (Assignment 1, Assignment 2, Assignment 3, Assignment 4)
Scrum Board: We used Zenhub for our project scrum board. We adopt agile software
development process and planned our features into user stories and tasks, labeled with
priority and description. During our third spirit, our Zenhub free trial went expired. We
worked with our liaison and decided to create a new account. (Scrum Board, Format)
UI Design: We design our user interface using Figma for better team collaboration. We
iterated throughout the spirits and recorded the different changes on Figma. (Prototype)
Feature Doc: The coder team wrote out the design specification for each task assigned
for the current spirit in a weekly document. The document includes features needed to
be implemented, list of files the coders would code in, and design updates from the
Research & Design team. (Sprint 1(User Story Planning), Sprint 2, Sprint 3, Sprint 4)
Website: Phantime has a website that gives an overview of the features of the
extension, how you can contribute to the project, and the latest updates regarding the
Software. (Website)
Project Overview: Phantime has a project overview notion page that goes over the
different directories and types of files that are present in our github master branch. This
provides a structural guide of our program to new coders in the future. (Project
Team Style Guide: Phantime has a style guide that lists out guidelines for writing codes
for the coders to maintain consistency in our master branch. Consistency in our code
helps with future updates when new coders add features to Phantime. (Style Guide)
Tools Selection 🛠️
Types | Tools | Use It ? | Pros/Cons |
Agile Project Management | Zenhub | ✅ |
|
Jira | ❌ |
| |
Communication | Discord | ✅ |
|
Slack | ❌ |
| |
UI Design | Adobe XD | ❌ |
|
Figma | ✅ |
| |
Backend Server platform | Firebase | ✅ |
|
AWS Amplify | ❌ |
| |
Continuous Integration | CircleCI | ✅ |
|
TravisCI | ❌ |
|