unwilledtangent'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 implementing features, such as adding the required experience, as well as filtering by tags. I also worked on the various documentations, UG, DG
Contributions
- New Feature: Added the
experience
parameter foradd
command.- What it does: User can input
experience
for theroles
. - Justification: The addition of
experience
is important for any applicant looking to apply for internships/jobs,
providing them with the information they need to make more informed decisions about their job search. - Highlights: TechTrack users can now add their experiences of respective roles.
experience
must not be an empty string.
- What it does: User can input
- New Feature: Add a new
tag
command to allow filtering of thetag
field.- What it does: Allows users to filter companies by the keyword specified. e.g.
tag Tech
- Justification: Filtering by company names is important as it speeds up the process of finding relevant companies that the user is interested in applying for.
- Highlights: Makes it more friendly for the user to search through different roles. The keyword entered is not case-sensitive.
- What it does: Allows users to filter companies by the keyword specified. e.g.
- Implementation: Add a new
TagContainsKeywordPredicate
class to check for keywords in thetag
field.- What it does: Allow developers to check for equivalence of keywords and testing.
- Justification: Follows the original Tag command format of AB3 where the Tag of the role is filtered
by
TagContainsKeywordPredicate
. - Highlights: Allows for a separate, unique predicate checking on keywords parsed to the
Tag
command.
- 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
TagCommandParser
,Experience
andTagCommand
have test cases in their respective test classes. These tests are written to ensure the reliability of these classes. - Highlights: Better code coverage and robustness of TechTrack.
- Documentation:
- User Guide:
- Added the
x/
parameter for theexperience
field in theadd
command - Wrote and provided the screenshots of
tag
command. - Added UI Images to each command.
- Added the
- Developer Guide:
- Added Sequence diagram and Commit Activity Diagram for
tag
Command. - Edited Sequence diagram for
Model
component. - Added Sequence diagram and description for
tag
andname
Command. - Added documentation for
add
andedit
manual testing appendix. - Edited Product Scope
- Added User Stories to reflect the team’s implemented commands
- Added Appendix: Won’t Fix / Out of Scope
- Adjusted and ensure proper formatting of guide.
- Added Sequence diagram and Commit Activity Diagram for
- User Guide:
Enhancements
- Implementation of
Experience
in TechTrack. - Implementation of
TagCommand
where users can filter for various companies.
Bug Fixes
- Fixed UG bugs. (missing commands in command summary)