Skip to content

Latest commit

 

History

History
115 lines (86 loc) · 5.98 KB

exeexe93.adoc

File metadata and controls

115 lines (86 loc) · 5.98 KB

Eng Xuan En - Project Portfolio

PROJECT: Delino


Overview

Delino is a desktop delivery application for couriers to manage delivery tasks. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 16 kLoC

Summary of contributions

Given below are the summary of the contributions I have made for this project.

  • Major enhancement:

    • Added import command (Pull request #215)

      • What it does: Allows the user to add multiple orders and return orders via a CSV file.

      • Justification: This is an essential update, which allows the user to save time from adding multiple orders and return order one by one.

      • Highlights: This enhancement depends heavily on InsertCommandParser and ReturnCommandParser to process the data retrieve from the data. Considerations have to be made to differentiate the data for Order and ReturnOrder, as they have different attributes in their models.

    • Add return order book for storage (Pull request #186)

      • What it does: Stores return orders in json file.

      • Justification: The storage of return orders is important, as the return orders are required to be separate from orders and store as a separate json file in the hard disk from the orders.

      • Highlights: Considerations are to be made for how to store and retrieve the return order data from the json file which is stored in hard disk.

    • Modify the clear command (Pull requests #180, #218)

      • What it does: Gives the user to clear either both order lists or only one of them.

      • Justification: This is an essential update, which prevent the user from having the trouble clearing the orders or return orders one by one.

      • Highlights: Considerations are to be made for the clearing either one of the list or both order list and return order list, as clearing the wrong list, the data in that list would be lost permanently.

  • Minor enhancement:

    • Add timestamp field into the model(Pull requests #175, #198)

      • What it does: Allows orders and return orders to keep track of the delivery date and time.

      • Justification: This is an essential update, which allows user to input timestamp for the order and return order.

    • Add comment field into the model(Pull request #172)

      • What it does: Allows orders and return orders to store customer comment.

      • Justification: This is an essential update, which allows the courier to be able to take note about the customer’s request for that delivery.

  • Code contributed: [Functional code & Test code]

  • Other contributions:

    • Project management:

      • Co-team lead of the project, in charge of defining, assigning, and tracking project tasks. Furthermore, ensure project deliverables are done on time and in the right format.

    • Documentation:

      • Updated the product website’s heading and navigation bar. (Pull request #119)

      • Edited various parts of the User Guide (Pull requests #173, #226)

      • Added use cases and updated the Storage and Implementation part of the Developer Guide for saving, import and clear features (Pull requests #186, #197, #218)

    • Community:

      • PRs reviewed (with non-trivial review comments): (Pull requests #126, #139, #174, #189)

      • Reported bugs and suggestions for other teams in the class: (Examples: PE dry run issue)

      • Contributed to forum discussion by asking help question: (Example: #104)

    • Tools:

      • Integrated a new Github plugin (AppVeyor) to the team repo (#37b0cd1)

Contributions to the User Guide

Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users.

Contributions to the Developer Guide

Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project.

Instruction of Manual Testing