Project: BogoBogo
BogoBogo is a desktop inventory management application developed for small business owners. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
Given below are my contributions to the project.
- New Feature: Implemented the core components to enable placing orders.
- What it does: allows the user to order items, add and remove items from order, and place the order to make a transaction.
- Justification: This feature improves the product significantly because a user can not only log items in inventory but also monitor business dynamics via the order system.
- Highlights: This enhancement affects existing model structures and new features to be added in the future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to multiple existing components while designing good interacting logic and abstraction between them.
- New Feature: Added transaction history.
- What it does: allows the user to check past transactions made via order system and calculates essential historical business statistics.
- Justification: This feature improves the product significantly because a user can track transaction histories to better retrospect and manage business.
- Highlights: This enhancement is added on top of the order system implemented in last feature to extend and make the order system interaction more complete and powerful.
- Functional Code: Added commands to enable order related operations.
- Implemented
sorder,iorder,corder, andeordercommands and their parsers. - What it does: allows the
Uicomponent to parse user commands of order operations and activates theModelandStoragecomponents to execute the operations and update the internal states.
- Implemented
-
Code contributed: RepoSense link
- Enhancements to existing features:
- Documentation:
- User Guide:
- Developer Guide:
- Drafted the skeleton of the developer guide in v1.3 #76
- Drew the architecture class diagrams of
Ui,Model,Storagecomponents. #93 - Added use cases for all commands and features implemented in v1.3 #93
- Updated and drew new class diagrams of
Modelcomponents to reflect new design structure #177 - Refined and updated class diagrams to make them more and clean and readable #178
- Drew object diagrams for Observer pattern. #184
- Drafted the Effort appendix. #212
- Manual Testing:
- System Testing:
- Tested all commands with positive and negative EP cases.
- Logged and reported bugs to team for bug fix solutions.
- Acceptance Testing:
- System Testing:
- Community: