pzaiming's Project Portfolio Page
Project: TechTrack
TechTrack is a powerful internship/job tracking application that combines the flexibility of a Command Line Interface (CLI) with the benefits of a Graphical User Interface (GUI). Designed for computing students and professionals, TechTrack helps you manage your internship/job search project by tracking deadlines and information regarding various roles. Its CLI interface is optimized for speed, efficiency, and ease of use, making it a valuable tool for students who are already familiar with CLI environments.
I worked on the backend and documentation. I was mainly in charge of implementation and testing of the new features.
Contributions
- New Feature: Add
deadline
parameter foradd
command.- What it does: User can input deadline for the roles.
- Justification: The addition of deadline is important to allow the user to have enough time to prepare for the role.
- Highlights: TechTrack users can now add their deadline. The restriction of deadline must be in the format
YYYY-MM-DD
.
- New Feature: Add new
salary
command to allow the sorting of roles based on salary.- What it does: Allow user to see the roles that are the most or least attractive.
- Justification: This is an important feature from the user point of view as salary is tied closely to the importance of different roles.
- Highlights: Makes it more friendly for the user to search through different roles.
- Implementation: Add new
OrderParser
class to allow order in asc/desc of sorting commands.- What it does: Allow developers to easily parse the
ORDER
for their sorting commands. - Justification: The order needs to be either ascending or descending and makes it more OOP by creating a Parser class.
- Highlights: OOP design to allow more sorting features to develop in the future by accessing this class.
- What it does: Allow developers to easily parse the
- Testing: Tests new implementation and class created.
- What it does: Allow the code to be covered by more tests and making it more robust.
- Justification: New classes such as
OrderParser
,Deadline
andDeadlineCommand
needs to be added to allow the sorting of salary and deadline. Tests need to be written to ensure the accuracy of it by writing assertion. - Highlights: Better code coverage and robustness of TechTrack.
- Enhancements to existing features:
- Refactoring: Refactored the
address
package to thetechtrack
package #169- What it does: The package is changed accordingly to the needs of the application
- Justification: It will be clearer for future developments
- Highlights: Refactored AB3 code and tests
- Enhanced the salary restriction to make it more intuitive for the user #255
- Add welcome message on startup to let the user know the available commands #118
- Refactoring: Refactored the
- Documentation:
- User Guide:
- Added and provided the UI screenshots of
salary asc/desc
command. - Added restrictions for the role table.
- Added and provided the UI screenshots of
- Developer Guide:
- Added implementation, alternatives and limitations for
salary
anddeadline
sort. - Constructed the sequence diagram of sorting for
salary
anddeadline
sort. - Added documentation for
salary
,deadline
andview
for manual testing. - Added the first 7 of NFR section of requirement details.
- Adjusted and ensure proper formatting of guide.
- Added implementation, alternatives and limitations for
- User Guide:
- Contributions to Team-based Tasks:
- Created labels and tags in team repository.
- Reviewed Pull Requests done by the team and check for correctness of the code.
- Bug Fixes:
- Fixed DG bug for the sequence diagram of sorting, where the
SalaryCommand
andDeadlineCommand
object is created beforeOrderParser
. - Fixed UG bug to specify that add command will take the latter details if multiple similar parameters is given.
- Fixed salary bug where salary of zero is allowed.
- Fixed sorting bug where sorting after filter commands deletes the original list.
- Fixed DG bug for the sequence diagram of sorting, where the
- Review/mentoring contributions
- Community: