Delino is a desktop 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.
-
Major enhancement:
-
Added
return
command (Pull request: #353)-
What it does: This command allows the user to create a new return order and add it into the Return Order List or convert a delivered order into a return order and add it into the Return Order List.
-
Justification: This feature is a must-have in Delino as it is a delivery management app. It allows the user to convert delivered orders into return orders and even create new return orders from scratch with the given parcel attributes.
-
Highlights: This feature requires a deep understanding of the AddressBook 3 (AB3) codebase and that took quite a bit of time. Two different logic execution paths had to be implemented and the testing of this feature also had to be extensive and exhaustive to ensure that no test cases were missed in the process of testing. The parametized testing functionality provided by JUnit 5 made this process to be much more convenient (https://www.baeldung.com/parameterized-tests-junit-5). Furthermore, new classes such as ReturnOrder, ReturnCommand, Parcel abstract class also had to be implemented for this feature to be fully functional. Therefore, this feature affects subsequent features to be added due to changes in inheritance of classes.
-
-
Added
delivered
command (Pull request: #302 )-
What it does: Allows the user to mark orders or return orders as delivered.
-
Justification: This is a must-have feature for a delivery management app like Delino. It allows the user to easily mark an order or return order as delivered after delivering the parcel.
-
Highlights: This feature required good understanding of the AB3 codebase and how the entire order list and return order list are edited to display the changes in the GUI. As such, this required a deep level of understanding of how the entire app worked so that the changes can be executed and displayed on the GUI from the start of the command till the end of execution.
-
-
Added the
help
command (Pull requests: #310)-
What it does: It displays a list of all Delino’s commands and llows the user to see the usage of each command in Delino and quickly be able to utilise Delino’s available features.
-
Justification: This command was rather simple to implement but the main problem faced was deciding the right window size for the pop-up help window as different screens have different resolutions and this resulted in some bugs that had to be re-looked at and fixed.
-
-
-
Minor enhancement:
-
Updated Delino’s icon image and link in the Developer Guide (Pull request: #245)
-
Added Non-functional requirements (NFR) in the Developer Guide (Pull request: #89)
-
Wrote Must-haves for user stories in Developer Guide (Pull request: #65)
-
Did the first mock-up for Delino’s UI using Adobe XD (Pull request: #85)
-
-
Code contributed: [Functional code & Test code]
-
Other contributions:
-
Project management:
-
In charge of team facilitation, code integration and UI design.
-
Set up Codacy with Jeremy to improve code quality of Delino’s repository. (Pull request: #61)
-
Ensure that project deliverables are completed on time.
-
-
Enhancements to existing features:
-
Adapted the given Address Book UI into Delino’s first draft UI. (Pull request: #85)
-
-
Documentation:
-
Updated Developer Guide to include Delivered Command (Pull request: #253)
-
Updated Developer Guide to include Return Command (Pull request: )
-
Updated Developer Guide to include Help Command (Pull request: )
-
-
Community:
-
PRs reviewed (with non-trivial review comments): (Pull requests: #118, #191, #226)
-
Reported bugs and suggestions for other teams in the class (examples: https://github.com/Cherweijie/ped/issues)
-
-
Tools:
-
Set up Codacy and updated its badge to link to our repository together with Jeremy (Pull request: #61)
-
-
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
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. |
This whole section on Delino’s Design Model can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on the Return feature can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc This whole section on the Help feature can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc This whole section on the Delivered feature can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on use cases for Help can be found here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on use cases for Return can be found here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on use cases for Delivered can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on command prefixes can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on command flags can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on the delivered feature’s instructions for manual testing can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on the return feature’s instructions for manual testing can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc
This whole section on the help feature’s instructions for manual testing can be found at here. This link is provided in the event if some of the cross links are not working, as they refer to documents done by another team member. ../DeveloperGuide.adoc