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
deadlineparameter foraddcommand.- 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
salarycommand 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
OrderParserclass to allow order in asc/desc of sorting commands.- What it does: Allow developers to easily parse the
ORDERfor 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,DeadlineandDeadlineCommandneeds 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
addresspackage to thetechtrackpackage #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/desccommand. - Added restrictions for the role table.
- Added and provided the UI screenshots of
- Developer Guide:
- Added implementation, alternatives and limitations for
salaryanddeadlinesort. - Constructed the sequence diagram of sorting for
salaryanddeadlinesort. - Added documentation for
salary,deadlineandviewfor 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
SalaryCommandandDeadlineCommandobject 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: