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: Add Leave Feature addleave
    • What it does: Allows the user to add a leave period to a specified employee.
    • Justification: Leave tracking is an important component of employee management systems. With this feature, HR managers will be able to keep track of the leaves taken by respective employees.
    • Highlights: Deciding whether it would be better to add a single date each time or a specified period. Ultimately, the team decided that it would be best to implement the command flexibly, with the current format allowing the addition of both a single leave date and a leave period with multiple days.
  • New Feature: List Leave Feature listleave
    • What it does: Allows the user to view the list of employees on leave on a particular day.
    • Justification: Provide the user a fast and easy method to view the employees that are on leave on a particular day, rather than checking through each and every employee one by one to see if they are on leave on the date of interest.
    • Highlights: Initially, this feature was only meant to check which employees were currently on leave (in real time). However, I realised that it would be more useful if the user could check leaves taken on specified days, to help with the employee management process.
  • Code contributed: RepoSense link

  • Project management:
    • Reviewing, approving and merging pull requests on GitHub (Pull requests #76, #144, #211)
    • Creating, assigning and closing issues using Github’s issue tracker
    • Maintaining Team Project Notes on Google Docs
  • Enhancements to existing features:
    • Added Salary attribute to the existing Employee class (Pull request #92)
    • Edited Phone attribute to only accept local mobile numbers (Pull request #109)
    • Added LeaveList attribute to the existing Employee class (Pull request #124)
  • Documentation:
    • User Guide:
      • Add Table of Contents, Glossary and FAQ section
      • Include v1.2 commands into command summary and parameter information
      • Add guides for list leave feature
      • Check through overall formatting and content of UG
    • Developer Guide:
      • Add implementation and testing guide for add leave and list leave features
      • Create UML diagrams for add leave and list leave features
      • Update UML class diagrams (e.g. ModelClassDiagram, UIClassDiagram) to fit v1.4 implementation
      • Update user stories
      • Check through overall formatting and content of DG
  • Tools: Java, JavaFX, IntelliJ, Github, Sourcetree, PlantUML