Project: EmployeeManager

EmployeeManager is a desktop application used by Human Resource (HR) staff in a small or medium-sized company (of 50 - 200 employees). EmployeeManager has HR management features to provide HR staff a convenient way to access and update employee details.

Given below are my contributions to the project.

  • Code contributed: RepoSense link
  • New features implemented:
    • Added sort command to sort the displayed persons list based on any of their attribute.
    • Added export command to allow the data file to be exported to another location on the disk.
    • Added import command to allow a data file to be imported into the application.
    • Added GUI option for importing and exporting of files.
  • Enhancements to existing features:
    • Added Id as a field to the Person class.
    • Extended Model to support filtered and sorted person list for find and sort commands. Originally, AB3 only has a FilteredList<Person>. To support sorting as well, another SortedList<Person> is used.
    • Modified FindCommand to support searching by any attribute instead of just name.
  • Documentation:
    • User Guide:
      • Added documentation for features: sort, import, export.
      • Added Prefix summary section.
      • Added Specifying file path section.
    • Developer Guide:
      • Added implementation details for sort, import, and export.
      • Updated Model diagram and description.
      • Added SortSequenceDiagram and FileCommandClassDiagram
      • Updated target user profile & value proposition.
      • Added use cases for sort, import and export.
      • Added instructions for manual testing for import and export.
  • Contributions to team-based tasks:
    • Set up GitHub team organisation and repository.
    • Incorporated artifact building in the project workflow to streamline testing when reviewing pull requests.
    • Released v1.2 JAR File.