Tjan Eng Ger, Kevin's Project Portfolio Page
Project: TaskBook
TaskBook is a desktop address book and task assignment application for NUS students to efficiently manage their contacts and tasks.
Given below are my contributions to the project.
- New Features:
task sort
(#144, #176)- What it does: Adds support to sort tasks alphabetically, by when they were added, or by their date.
- Justification: This feature improves the product by allowing users to gather information about a task in their list at a quick glance.
- Highlights: Each sorting command is a different type, and inherit from an abstract superclass
TaskSortCommand
, thus exhibiting polymorphism and inheritance.
task find
(#161)- What it does: Adds support to filter tasks by a query, their assignment, or their done status.
- Justification: This feature improves the product by allowing users to gather information about a task in their list at a quick glance.
- Highlights: There are many fields that users can find tasks by, so the method to find tasks could have been long. Instead, there are over a dozen smaller private methods that make up this method, thus exhibiting SLAP.
contact sort
(#174, #176)- What it does: Adds support to sort contacts alphabetically, or by when they were added.
- Justification: This feature improves the product by allowing users to gather information about a contact in their list at a quick glance.
- Highlights: Each sorting command is a different type, and inherit from an abstract superclass
ContactSortCommand
, thus exhibiting polymorphism and inheritance.
contact find
(#171)- What it does: Adds support to find contacts by a query.
- Justification: This feature improves the product by allowing users to gather information about a contact in their list at a quick glance.
- TaskListPanel (#99)
- What it does: Adds Gui component that displays tasks added to Task Book, after applying filters from find commands, and sorted by sort commands.
- Justification: This feature improves the product by allowing users to gather information about a task in their list at a quick glance.
-
Code contributed: RepoSense link
- Project management:
- Enhancements to existing features:
- Documentation:
- User Guide:
- Developer Guide:
- Team:
- PRs reviewed(non-trivial review comments): #175, #178, #238
- Made meeting agendas for all non-trivial team meetings.
- Assisted in documenting some parts of the discussions.
- Main facilitator of team meetings
- Did both v1.2 and v1.3 feature demos
- Bugs found:
- Bugs fixed:
- Community:
- Reported 11 bugs for other teams in PE-D.
- Posted on forum (activity in 11 posts):
- #37: Reporting bug involving video quiz.
- #59: Asked about if adding Gradle manually was allowed.
- #161: Disambiguation about a weekly quiz.
- #173: Asked about which JAR file was used for grading in iP.
- #190: Attempted to help resolve a fellow’s student’s query about missing JavaFX runtime components.
- #274: Asked about automated JAR file smoke tests by module coordinator failing.
- #346: Asked about a Github CI failure.
- #393: Asked for further clarification about a fellow student’s query about whether an issue is a bug or Uii enhancement.
- iP smoke test posts: