Caden's Project Portfolio Page
Project: Teacher’s Pet
Teacher’s Pet is a desktop application for managing contacts of students and classes, optimised for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Teacher’s Pet can get your contact and class management tasks done faster than traditional GUI apps.
Teacher’s Pet allows you to manage your schedule and keep track of your students. The app stores basic information about your students, such as Name, Contact Number, Class Date and more.
Given below are my contributions to the project.
- New Feature: Added the
mark
command- What it does: Allows the tutor to mark a student as present for the class.
- Justification: Enables the tutor to keep track of the schedule.
- Highlights: Automatically increases the
Money Owed
of the student by the predefinedRates per Class
. Display the cross symbol in the student’s box of the schedule list. - Pull Requests: #160
- New Feature: Added the
pay
command- What it does: Allows the tutor to indicate that a student has paid a certain amount of money.
- Justification: Enables the tutor to keep track of how much money a student owes or paid.
- Highlights: Automatically decreases the
Money Owed
of the student by the paid amount, while increasing theMoney Paid
. - Pull Requests: #172
- New Feature: Added the Statistics Window
- New Feature: Added a notification feature for students who owe money
- What it does: Highlights the student’s name in red and displays the amount owed, if the student owes money.
- Justification: Notifies the tutor who to collect money from in the day.
- Pull Requests: #146
- Enhancement to existing features -
Find
command:- What it does:
find
command now allows the tutor to search for details of the students based on their attributes (Name
,Phone
,Next-of-Kin Phone
,Email
,Address
,Class Date
,Tags
) - Justification: As a
Person
has other attributes other thanName
, the tutor might want to search by other attributes as well. - Areas contributed:
- Constructed the skeletal code for group members to implement other attribute searches.
- Find-by-name: A search system which allows the tutor to search up details of the student by his/her name.
- Find-by-phone: A search system which allows the tutor to search up details of the student by his/her phone number.
- What it does:
-
Code contributed: ~2.2kLoC. All my code contribution can be found here.
- Project management and team based tasks contribution:
- Managed v1.2.1 release.
- Created product demonstration video.
- Documented v1.2 Features Demonstration.
- Documentation:
- User Guide:
- Certain parts of the user guide were written by me.
- Added documentation for the sections
mark
,pay
,Find by Name
,Find by Student's Contact Number
andPrefix Summary
.
- Developer Guide:
- Certain parts of the developer guide were written by me.
- Added documentation for the sections
Statistics Display Feature
,Mark Student Feature
andUse case: Mark student as present for class
.
- User Guide:
- Community:
- Reported bugs and provided suggestions for other team, which can be found here.
- Tools:
- IntelliJ
- Sourcetree
- Github