Project: McKitchen

McKitchen (My-CLI-Kitchen) is a desktop application that can quickly store, edit, and search for recipes by running a single command, ideal for the fast typists, home cooks, and students who want a simple way to store or search for simple recipes to cook. The user interacts with it using a CLI-like interface, and it has a GUI created with JavaFX. It is written in Java and has about 8 kLoC.

Listed below are my contributions to the project with majority of the credits given to AB-3 as it served as a strong foundation for our application.

  • New Feature: Added a Delete command (Pull requests #61,#75)
    • What it does: Allows the user to delete recipes either by the recipe name or its index
    • Justification: This feature improves the product significantly because a user can quickly remove any unwanted recipes in the application.
    • Wrote test cases for Delete command and DeleteCommandParser to ensure that it meets 100% code coverage #128
  • Code contributed: RepoSense link

  • Project management:
    • Sorted out issues found by other students and assigned them accordingly based on type and severity
    • Managed releases v1.1 - v1.4rc (3 releases) on GitHub
  • Enhancements to existing features:
    • Wrote CommandTestUtil for testing of different commands #106
    • Wrote test cases for ingredients to ensure that 100% code coverage is met (Pull requests #131, #132)
    • Wrote test cases for Exit Command #106
    • Made amendments based on the issues found by other students #226
  • Documentation:
    • User Guide:
      • Took part in the designing of the mock up UI for Mckitchen
      • Added documentation for the features delete (Pull requests#132 #257)
      • Added documentation for Architecture, UI, Logic, Model and storage components
      • Added FAQs for our application #163
      • Suggested ways to improve the structure, design and clarity of the UG
      • Gave suggestions on others PR #177
      • Made amendments based on the issues found by other students #226
    • Developer Guide:
      • Added Non-Functional Requirements to describe the system’s operation capabilities and constraints that enhance its functionality #39
      • Added Glossary #257
      • Added the undo/redo future feature to fit our need
      • Added instructions for manual testing for launch and shutdown and deleting a recipe (Pull requests#39 #257)
      • Added User stories and prioritised them accordingly #39
      • Added use cases, guarantees, MSS and Extensions for adding a recipe, deleting a recipe, Editing a recipe and Clearing the recipe book #39
      • Designed UML diagrams to suit our McKitchen theme (Pull requests#48 #122 #257)
  • Community:
    • PRs reviewed (with non-trivial review comments): (Pull requests#47, #59, #177, #135, #225, #192)
    • Contributed to forum discussions #164
    • Reported bugs and suggestions for other teams in the class #10, #2, #3, #11