ryanqiu1'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.
For me, i worked on the backend component and fixing bugs. In addition, i worked on the various documentations, UG, DG and “About Us” page.
Contributions
- New Feature: Add field
Website
toadd
command- What it does: Allows the company website to be added by the user.
- Justification: Many Companies have their own website and the user might want to store the website in the role. This will allow to user to refer to the role card and use the website to apply for the job.
- Highlights:
- Example website: Company of Google (www.google.com) Command:
w/www.google.com
- It was challenging at the start to find how the AB3 program works, as i needed to figure out which files to refactor and change.
- Needed to refactor and edit the command parser files, add command etc.
- Example website: Company of Google (www.google.com) Command:
- New Feature: Sort roles based on deadline
- What it does: Allows the user to sort the deadline of role application by ascending or descending order.
- Justification: Users might forget the deadline for the application of the job, hence can sort by the deadline to show the most recent deadline or least recent dateline.
- Highlights:
- Using the command
deadline asc
, shows the nearest application that the user should apply. - Role can be easily sorted for the user’s convenience as applying jobs is a time-sensitive task.
- Check to make sure date is of the correct format and that it is not an invalid date (passed or does not exist).
- Using the command
- Enhancements to existing features:
- Refactored the
Address
classes and methods to theRole
, e.g. AddressBook to RoleBook .- What it does: The package is changed accordingly to the needs of the application.
- Justification: Roles fits towards TechTrack instead of address and would be clearer for future developments.
- Highlights: Refactored AB3 code and tests.
- Set Deadline to only allow current date and after current date.
- Set Website field to be www. + any amount of characters + .com.
- Refactored the
- Documentation:
- User Guide:
- Added my own commands and set up table of commands.
w/www.google
field anddeadline asc
command.- Added UI Images to each command.
- Developer Guide:
- Added Sequence diagram and Commit Activity Diagram for
Deadline
Command. - Added Sequence diagram, description for
add
andedit
Command. - Added documentation for
add
andedit
manual testing appendix. - Added NFR section of requirement details.
- Adjusted and ensure proper formatting of guide.
- Added Sequence diagram and Commit Activity Diagram for
- User Guide:
- Contributions to team-based tasks:
- Created priority and type tags in team repository.
- Set Goals and deadline to complete certain tasks; Finish feature 1 by 20-03-2023 etc.
- Created and Managed Milestones for 1.2,1.3.
- Bug Fixes
- Fixed UG bugs, where commands descriptions are not stated clearly.
- Fixed UG bug where error message is not shown.
- Fixed sorting bug, where original list is deleted after filtered.
- Fixed Bugs in the UI (Wrong display format)
- Fixed Bugs in the EditCommand (Unable to edit website, fixed through the parser)
- Review/mentoring contributions: Offered useful and feedback with issues and reviewing PRs. Examples: 1, 2, 3