Project: Cheese Inventory Management (CHIM)

Cheese Inventory Management (CHIM) is a desktop app for managing the contacts, inventory, and orders of a home-based cheese making business. It is an extension from the AddressBook Level 3 project for Software Engineering (SE) students.

Given below are my contributions to the project

  • New Feature: Added the functionality (the listcheeses command) for users to list all the cheeses in CHIM.
    • What it does: Shows on the user-interface an indexed list of all the cheeses, along with their properties, in CHIM.
    • Justification: The indexes shown on the UI allow the users to refer to specific cheeses when executing the editcheese and deletecheese commands.
  • New Feature: Added the functionality (the listorders command) for users to list all the orders in CHIM.
    • What it does: Shows on the user-interface an indexed list of all the orders, along with their properties, in CHIM.
    • Justification: The indexes shown on the UI allow the users to refer to specific orders when executing the editorder and deleteorder commands.
  • New Feature: Added the functionality (the findcheese command) for users to search for specific cheeses in CHIM.
    • What it does: Lets users filter the cheeses list so that only cheeses with certain specified attributes are shown on the UI. For example, a user can run the search command so that only Brie cheeses remain on the UI.
    • Justification: With this feature, users can quickly & conveniently look up what cheeses the inventory holds.
  • New Feature: Added the functionality (the findorder command) for users to search for specific orders in CHIM.
    • What it does: Lets users filter the orders list so that only orders with certain specified attributes are shown on the UI. For example, a user can run the search command so that only orders by customers named Bob remain on the UI.
    • Justification: With this feature, users can quickly & conveniently look up what completed or outstanding orders he or she has.
  • New Feature: Automatic toggling of list panel on the user-interface.
    • What it does: Whenever a command is executed, the UI’s list panel automatically switches between showing the customers list, the orders list, and the cheeses list - the list shown depends on the command ran. If the command executed was a customer-related command, e.g. editcustomer, then the UI switches to showing the customers list.
    • Justification: Without the need to manually toggle between the different views, CHIM becomes more convenient to use. We also want to emphasize that the automatic switching was made to be as intuitive as possible. With that said, this feature ultimately aims at improving user-experience.
  • Code contributed: RepoSense link

  • Project management:
    • Managed releases v1.1 - v1.4 (3 releases) on GitHub
  • Enhancements to existing features:
    • Improved parsing of emails (Pull request #116)
  • Documentation:
    • User Guide:
      • Added documentation for the features listcheeses, listorders, findcheeses, findorders.
    • Developer Guide:
      • Updated the documentation to reflect the new design of the Ui component.
      • Added implementation details for the automatic toggling of UI’s list panels.
  • Community: