Wee Xin Yang, Markus' Project Portfolio Page
Project: Teacher’s Address Book (TAB)
Teacher’s Address Book (TAB) is a desktop app made for teachers, teaching assistants(TA) and professors for managing contacts of each other, as well as their students, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, TAB can get your contact management tasks done faster than traditional GUI apps.
Given below are my contributions to the project.
- New Feature: Implemented the
Professor
class- What it does: It encapsulates the details of a Professor (i.e. their roles).
- Justification: Allows each person in TAB to be differentiated by their roles, with Professor being one of them
- Highlights: The
Professor
class extends the abstractPosition
class. Roles such asCoordinator
,Lecturer
,Tutor
andAdvisor
can be added so the user can know the roles of each Professor
- New Feature: Implemented the
Assignment
class- What it does: It encapsulates the name, grade and weightage of an assignment.
- Justification: Each student will be given graded assignments in the course of their learning and as such it is of absolute necessity that this is implemented
- Highlights: With its encapsulated grade and weightage, we can gauge how well the student is doing academically. This is the part of the AddAssignments feature which will be explained later
- New Feature: Added the
AddAssignmentsCommand
command- What it does: It adds a list of
Assignment
to everyStudent
in TAB - Justification: Assignments can be added to every
Student
after they are added. This saves the trouble of adding assignments to eachStudent
individually, which can be time consuming - Highlights: This command only needs to be ran once. Since each TAB consists of students of the same module, subsequent students added to TAB will be automatically instantiated with assignments if the AddAssignmentsCommand has already been ran before
- What it does: It adds a list of
-
Code contributed: RepoSense link
- Enhancements to existing features:
- AB3 only checks for similarity in
Name
when determining duplicatePerson
. I made changes to check forPhone
andEmail
as well as it is only logical that these field should also be unique for eachPerson
: #156
- AB3 only checks for similarity in
- Documentation:
- Community: