Project: HouR

HouR is a desktop HR management application used for managing and organising personnel data. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 12 kLoC.

Given below are my contributions to the project.

  • New Feature: Overtime Feature overtime
    • What it does: Allows the user to add overtime hours to a specified employee.
    • Justification: Overtime hours tracking does not follow a fixed schedule, and is often ad-hoc. With this feature, HR managers will be able to keep track of the overtime hours taken by respective employees in an organised manner.
    • Highlights: Maximum overtime hours allowed is 72 hours per month, in accordance with the Employment Act. Trying to add overtime hours that exceed this limit will result in an error message being displayed.
  • Code contributed: RepoSense link

  • Project management:
    • Reviewing, approving and merging pull requests on GitHub (Pull requests #127, #144, #149)
    • Resolve merge conflicts on GitHub (Merge Commit)
    • Maintaining Team Project Notes on Google Docs
    • Maintaining issues assigned to me on GitHub
  • Enhancements to existing features:
    • Improve EmployeeCard GUI (Pull request #151)
    • Added “On Leave” attribute to UI (Pull request #117)
    • Change delete command to delete by employee ID instead of index (Pull request #95)
    • Added “isOnLeave” attribute to Employee class which was subsequently replaced with a method call in Employee (Pull request #130)
  • Documentation:
    • User Guide:
      • Added guide for the feature overtime
      • Check through overall formatting and content of UG
    • Developer Guide:
      • Added implementation guide for overtime feature
      • Added sequence and activity diagrams for overtime feature
      • Added instructions for manual testing for overtime feature
      • Added instructions for manual testing for saving data
      • Added glossary section
      • Check through overall formatting and content of DG
  • Tools: IntelliJ, SceneBuilder, GitHub, Git