Project: TAlent Assistant™

Overview

TAlent Assistant™ is a desktop, lightweight and centralized management system catered to NUS School of Computing professors for managing the interview scheduling process of candidates applying to be undergraduate Teaching Assistants (TA). It is optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI) built using JavaFX.

Summary of Contributions

  • Code contributed:

    • Click on this RepoSense link to view the breakdown of my code contribution!
  • Enhancements implemented:

    • New Features: schedule add, schedule edit, schedule delete, schedule clear
      • Added the feature to schedule, reschedule, delete and clear interviews. (#96, #179, #194, #251)
      • Justification: An important feature for the value proposition of our application. Modelled after AB3’s add, edit, delete, clear commands for consistency. Created a new model InterviewSchedule (and interface ReadOnlyInterviewSchedule) to store Interview objects.
      • Enhanced the schedule clear command to update the candidate’s interview status according to the state of the interview upon execution (i.e. Not Scheduled if interview is upcoming or in progress, Completed if the interview has expired and user has not refreshed the application)
    • Enhancement to existing features:
      • Enhanced the ClearCommand to clear both candidates and interviews when command is executed.
  • Contributions to the UG:

    • Added documentation for Motivation and Quick Start.
    • Enhanced documentation for the feature delete.
    • Added documentation for the new features schedule add, schedule edit, schedule delete and schedule clear.
  • Contributions to the DG:

    • Added documentation and sequence diagrams for the section Scheduling interviews.
    • Updated documentation and class diagram for the section Storage Component
    • Added use cases for clear, schedule add, schedule edit, schedule delete and schedule clear.
    • Added manual testing documentation for schedule add and schedule delete.
  • Contributions to team-based tasks:

    • Testing and de-bugging:
      • Contribution to identified bugs in v1.3b found here
      • Fixed bug related to invalid user input for interview DATE_TIME (#365)
      • Fixed bug preventing users from rescheduling the same candidate (#384)
    • Project management:
      • Managed GitHub issues/deadlines whenever/wherever necessary.
      • Managed release of v1.3.trial on GitHub.
      • Authored 37 PRs and reviewed 75 PRs.
  • Review/mentoring contributions:

    • PR reviews/discussion threads involving non-trivial comments/suggestions:
      • Suggested removal of redundant abstraction layers in implementation of availability checking (#135).
      • Identified unnecessary declared and returned variables (#200).
      • Suggested redundant declaration of variables due to relation of superclass and subclasses (#167).
    • Contributions beyond the project team: