Skip to content

Latest commit

 

History

History
108 lines (74 loc) · 5.28 KB

Huu.adoc

File metadata and controls

108 lines (74 loc) · 5.28 KB

Nguyen Dang Huu - Project Portfolio

PROJECT: VolunCHeer


Overview

This project portfolio page serves to document my contributions to the VolunCHeer project.

VolunCHeer is an open-sourced Command Line Interface (CLI) management application designed for Volunteering Project Managers. We aim to help our target users alleviate the haystack of managing multiple projects, beneficiaries, and volunteers in an efficient and effective manner.

Team T08-1 consists of Zhao Jun Ru, Wong Kai Wen Jeremy, Liow Zhu Hui and myself.

400

The user interacts with VolunCHeer using a command-line interface, and has a GUI created with JavaFX. VolunCHeer is written in Java, and has about 10 kLoC.

VolunCHeer’s codebase draws from SE-EDU's AddressBook Level 4.

Role

I am the Lead Developer, who ensure the application is bug free, or report bugs and assign developers to fix them. I am also the adviser for implementation of commands and bug fixes.

Summary of contributions

  • Major enhancement: added Beneficiary management feature

    • What it does: Beneficiary Management feature allows the user to manage beneficiary, including:

      • add a beneficiary: to open a new record of a beneficiary.

      • edit a beneficiary: to edit an existing record of a beneficiary.

      • find a beneficiary by name: to help the user quickly navigate to the wanted beneficiary record.

      • list beneficiaries: to list all beneficiary records.

      • summarise beneficiaries' data: to enable the user to see most active beneficiary based on attached project list.

    • Justification: This feature improve the product significantly because:

      • The beneficiary management feature allows the dynamic of tracking beneficiary records for the user to revise, and reuse every time a project initiation process starts with a known beneficiary.

      • The feature efficiently saves time in terms of searching beneficiaries’s details and navigate through beneficiary records.

      • Moreover, it also allows the user to do consideration on which beneficiary to come for in terms of funding based on the activeness measurement of beneficiaries.

    • Highlights: This enhancement affects the existing commands such as Undo and Redo Command. It also requires the analysis of resources we have in term of time and performance of algorithm in the context of VolunCHeer. Moreover, it requires challengingly synchronization with related Projects and storage files. The summary table also requires adaptation of Ui components and learning of JavaFX.

    • Credits: The implementation of the order list is based on the code written for the person list in the Address Book Level 4 made by SE-EDU initiative.

  • Minor enhancement: updated Storage Management #55

    • What it does: Storage is ensured to capture any change the user makes in the application reflects them in the storage file. When the user reopens the application, these changes are correctly viewed or if the data is corrupted, such as duplicated data or two beneficiaries have the same attached project, the application will prompt the user.

    • Justification: The data storage is important because the main purpose of the application is to reserve these data. Hence, storage management is essential for the application to work properly and serve its purposes.

  • Minor enhancement: quality control of synchronization of assigning beneficiary to project #61 #125

  • Minor enhancement: UI update up to version 1.3 #43 #67

  • Minor enhancement: Bug reports and fixed #67 #72

  • Code contributed: My code contribution can be viewed here

  • Other contributions:

    • Managing issue tracker: #31 #61

    • Documentation:

      • Contribution to DG in early stage #2 #3

      • Did cosmetic tweaks to existing contents of the Developer Guide: #142

    • Giving substantial comments on Github #64 #124

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.