Overview
VolunCheer is a desktop application for project managers who wish to keep track of their ongoing / upcoming projects as well as their beneficiary and volunteer pool.
Summary of contributions
-
Major enhancement: implemented the
Project
class whereby it creates a newProject
object to the VolunCHeer application-
What it does: the
Project
class is implemented with relevant functions that ties the Beneficiary pool and Volunteer pool together -
Features involved: the relevant features include basic functions such as
addProject
,deleteProject
andlistProject
. The added features are thecomplete
feature and theassign
feature which will be elaborated in further details. -
Justification: The Project class forms the basis of the VolunCHeer application whereby the aim is to manage and organise projects better and save users form the hustle of paper works.
-
Highlights: The methods implemented involves interactions between the 3 objects namely
Project
Beneficiary
andVolunteer
. It provides user with the ability to add and deleteProjects
, assign the specificBeneficiary
and a list ofVolunteers
toProject
of interest as well as setting projects status as complete to keep track of ongoing and completedProjects
. -
Explanation of features implemented
-
Assign Beneficiary feature allows the user to assign a existing
Beneficiary
to theProject
selected-
Justification: A
Beneficiary
is usually attached to aProject
and the beneficiary details are very important and usually tracked in a separate document / file. Thus we decide to keep Beneficiary information as a separate list and assigned to the project when required such that it can be managed separately. -
Highlights: This enhancement requires data from both the project list as well as the beneficiary list, there was thus some difficulty trying to implement the command. Many adjustments had to be made to keep the project class and beneficiary class independent and yet synchronised.
-
-
Assign Volunteer feature allows the user to assign a Required number of
Volunteers
to theProject
selected-
Justification: Projects usually require varying number of volunteers, we thus decide to make it flexible by allowing user to key in the required number themselves. Furthermore, should there be any requirement for the
Volunteers
they can filter theVolunteer
list with ourMap Command
andSort
function.
-
-
Complete project allows the user to mark a project as completed in the project list this is indicated by a colour change - to red for the project title.
-
Justification: This is thought to be a useful feature as project managers would want to keep track of what are the ongoing projects while still have a copy of their completed projects.
-
Highlights: This enhancement indicates a change of status of the specified
project
, it is a simple yet useful feature for the user.
-
-
-
-
Minor enhancement: ListProject and DeleteProject commands are inherited from addressBook and successfully implemented on the project class.
-
Other contributions:
-
Project management:
-
Documentation:
-
Did the UserGuide for v1.1: #6
-
Subsequent updates of documents on individual features.
-
-
Tools:
-
Integrated Ruby + asciidoctor for pdf releases of documentations as well as easy editing of adoc.
-
-
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. |
Project Management
Adding a project: addProject
/ ap
One of the first things to do when you use the app is to start adding projects to track, and this is the command to use.
Format: addProject n/PROJECT_NAME d/DATE
Now let us look at what happens when the command addProject p/Old Folk Home Visit d/25/05/2019
is entered on screen.

addProject p/Old Folk Home Visit d/25/05/2019
is executed.Deleting a project : deleteProject
/ dp
When a project is completed or cancelled, VolunCHeer allows you to easily delete it by stating
the project order in the list.
Format: deleteProject INDEX
This is how the project list changes upon execution.

deleteProject 3
command is executed.Listing all projects : listProject
/ lp
When you want to take a look at all your projects, this command helps you do so.
Format: listProject
Assigning a Beneficiary to Project: assignB
Projects are generally associated with certain beneficiaries. VolunCHeer allows you to attach them easily with this command.
It assigns the Beneficiary at the provided INDEX to the Project with ProjectTitle indicated.
Format: assignBeneficiary p/PROJECT_TITLE i/INDEX
The index must be a positive integer 1, 2, 3, …
|
After assigning a beneficiary, the project will have its data updated as seen below.

assignB p/Old Folks Home Visit i/1
command executedUse listBeneficiary to view a full list of Beneficiary to assign. Use summaryBeneficiary command to view the Projects attached to each Beneficiary. |
Assigning one or more Volunteers to Project: assignV
We also provide an easy method to assign a specific number of volunteers to the indicated Project
Format: assignVolunteer p/PROJECT_TITLE rv/REQUIRED_NUMBER_OF_VOLUNTEERS
The number of volunteers assigned to the Project can be seen under the Project card as shown below. |

assignV p/Old Folks Home Visit rv/2
is executed.Use the commands listed in [map] to filter out the desired list of volunteers. |
Mark project as complete: 'complete'
Once a project
is done, you can mark it as complete to distinguish it from your other projects.
Simply provide an INDEX to indicate which project you would like to complete.
Format: complete i/INDEX

complete i/1
command is executedOnce marked as complete, project title will be displayed in red colour font |