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 for add command.
    • What it does: User can input experience for the roles.
    • 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.
  • New Feature: Add a new tag command to allow filtering of the tag 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.
  • Implementation: Add a new TagContainsKeywordPredicate class to check for keywords in the tag 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 and TagCommand 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 the experience field in the add command
      • Wrote and provided the screenshots of tag command.
      • Added UI Images to each command.
    • 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 and name Command.
      • Added documentation for add and edit 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.

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)

RepoSense link Commit History Pull Requests Issues