Daniel Lau's Project Portfolio Page
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.
- Changes from existing code: Update to New Model Diagram
- What was done: Restructure the models to incorporate both
Cheese
andOrder
classes. - Justification: Ensures that CHIM will be able to store
Cheese
andOrder
objects. - Highlights: The enhancement required a lot of consideration on the model architecture, for example whether the data should be normalized (by using IDs) when storing relations.
- What was done: Restructure the models to incorporate both
- Changes from existing code: Update to
find
Command- What was done: Find commands was modified to include filtering by more parameters.
- Justification: Ensures that CHIM will be able to handle more robust queries to the database of objects.
- Highlights:
- The functionality to make general queries were added into the system, which allows for
future extension of the
find
command for different types of objects such asCheese
. - Improved the
find
command to rank all results based on its relevance to the queries made.
- The functionality to make general queries were added into the system, which allows for
future extension of the
- Enhancements to existing features:
- Added model validation to ensure all objects in CHIM are in a valid state. #39
- Ensures that all errors that occur are displayed to user.
- Documentation:
- Community:
- Code contributed: RepoSense link