From 92f17f1a8beade7c9bfe2b2cc37a5744d08bec8a Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 21:31:10 +0800 Subject: [PATCH 1/6] Update overview for kratious.adoc --- docs/team/kratious.adoc | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/docs/team/kratious.adoc b/docs/team/kratious.adoc index fb38602e4cfe..4f58189e5da0 100644 --- a/docs/team/kratious.adoc +++ b/docs/team/kratious.adoc @@ -11,19 +11,19 @@ :sectnums: == Overview -This portfolio documents my involvement in the SocialCare project, under the CS2103T Software Engineering module in NUS. -The main scope of the module requires students to modify an existing application with an established code base -while applying proper software engineering practices. +This portfolio documents my involvement in the SocialCare project that was developed under the CS2103T (Software Engineering) module taken in the National University of Singapore (NUS). -SocialCare is a desktop application designed to serve the volunteer and event management needs of non-profit organizations. +SocialCare is a desktop application designed to serve the *volunteer and event management* needs of social welfare organizations. +The main aim of the project was to streamline manual and inefficient processes faced by administrators of such organizations. Users primarily interact with the application using a Command Line Interface (CLI) with elements of a Graphical User Interface (GUI) to display information. -My contributions to the project focused on the event management features as well as improving upon the original GUI. +My primary role as a developer for SocialCare involved implementing *event management functions* as well as handling *extensive user interface improvements*. + == Summary of Contributions -* *Major enhancement*: added *the ability to undo/redo previous commands* +* *Major enhancement*: added commands to manage *event records* ** What it does: allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command. ** Justification: This feature improves the product significantly because a user can make mistakes in commands and the app should provide a convenient way to rectify them. ** Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands. @@ -70,9 +70,5 @@ include::../UserGuide.adoc[tag=eventmanagement] include::../DeveloperGuide.adoc[tag=eventmanagement] +include::../DeveloperGuide.adoc[tag=command-overview] -== PROJECT: PowerPointLabs - ---- - -_{Optionally, you may include other projects in your portfolio.}_ From 9157ab7c2f23f8d9f7c4457aba5f91cc96293963 Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 22:11:39 +0800 Subject: [PATCH 2/6] Update missing image in delete command in UserGuide.adoc --- docs/UserGuide.adoc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/UserGuide.adoc b/docs/UserGuide.adoc index f10baae570fa..ec127dec5776 100644 --- a/docs/UserGuide.adoc +++ b/docs/UserGuide.adoc @@ -517,6 +517,9 @@ Example(s): The figure below indicates the EVENT_INDEX and shows how the panel looks like before executing the example(s) below. +.Panel before deleting an event, EVENT_INDEX is indicated in the circles +image::command_event_delete_before.png[add command, 300] + * `delete 3` + Deletes the event specified at index 3. The expected result is shown in the figure below. From 14976df2109a54039cf8ff4712cb7068bc0b8698 Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 22:55:08 +0800 Subject: [PATCH 3/6] Update PPP for kratious.adoc --- docs/team/kratious.adoc | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/docs/team/kratious.adoc b/docs/team/kratious.adoc index 4f58189e5da0..08e70449f33b 100644 --- a/docs/team/kratious.adoc +++ b/docs/team/kratious.adoc @@ -23,35 +23,31 @@ My primary role as a developer for SocialCare involved implementing *event manag == Summary of Contributions -* *Major enhancement*: added commands to manage *event records* -** What it does: allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command. -** Justification: This feature improves the product significantly because a user can make mistakes in commands and the app should provide a convenient way to rectify them. -** Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands. -** Credits: _{mention here if you reused any code/ideas from elsewhere or if a third-party library is heavily used in the feature so that a reader can make a more accurate judgement of how much effort went into the feature}_ +* *Major enhancement*: added the ability to manage and display *event records* +** What it does: This feature allows the user to create and manage events that span a period of time. +** Justification: This feature improves the product significantly because a user is able to display and keep track of events by the organisation. This is a core requirement to the application as volunteers have to be assigned to events for basic operations. +** Highlights: +This enhancement is one of the major building blocks of the system and affects majority of the other components. It required an in-depth analysis of design alternatives. The implementation too was challenging as other components are highly dependent on this enhancement. -* *Minor enhancement*: added a history command that allows the user to navigate to previous commands using up/down keys. +* *Minor enhancement*: added an overview command that allows the user to have a statistical overview of existing volunteers and events. -* *Code contributed*: [https://nus-cs2103-ay1819s1.github.io/cs2103-dashboard/#=undefined&search=kratious[Functional code]] [https://github.com[Test code]] +* *Code contributed*: Here is a https://nus-cs2103-ay1819s1.github.io/cs2103-dashboard/#=undefined&search=kratious[link] to my code on the Project Code Dashboard. * *Other contributions*: ** Project management: -*** Managed releases `v1.1` - `v1.3` (3 releases) on GitHub +*** Managed releases `v1.1` - `v1.4` (4 releases) on GitHub +*** Applied upstream bug fix: link:{pullURL}/78/[#78] ** Enhancements to existing features: -*** Updated the GUI aesthetics and layout (Pull requests link:{pullURL}/92/[#92],link:{pullURL}/148/[#148]) -*** Wrote additional tests for existing features to increase coverage from 88% to 92% (Pull requests) +*** Updated the user interface aesthetics and behaviour: link:{pullURL}/68/[#68], link:{pullURL}/92/[#92], link:{pullURL}/148/[#148], link:{pullURL}/151/[#151], link:{pullURL}/158/[#158], link:{pullURL}/221/[#221], link:{pullURL}/230/[#230], link:{pullURL}/243/[#243] ** Documentation: -*** Did cosmetic tweaks to existing contents of the User Guide: https://github.com[#14] +*** Did cosmetic tweaks to existing contents of the Developer Guide: link:{pullURL}/118/[#118], link:{pullURL}/123/[#123], link:{pullURL}/128/[#128] ** Community: -*** PRs reviewed (with non-trivial review comments): link:{pullURL}/58/[#58], -*** Contributed to forum discussions (examples: ) -*** Reported bugs and suggestions for other teams in the class (examples: ) -*** Some parts of the history feature I added was adopted by several other class mates () +*** PRs reviewed (with non-trivial review comments): link:{pullURL}/58/[#58], link:{pullURL}/72/[#72], link:{pullURL}/121/[#121] link:{pullURL}/232/[#232] +*** Enquired about and resolved a team issue on the forum: https://github.com/nus-cs2103-AY1819S1/forum/issues/134[#134] ** Tools: -*** Integrated a third party library (Natty) to the project () -*** Integrated a new Github plugin (CircleCI) to the team repo +*** Integrated a new Github plugin (Coveralls) to the team repository -_{you can add/remove categories in the list above}_ == Contributions to the User Guide From 667ca19cd2e96535eb66b1e44b083a9c62523e70 Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 23:08:11 +0800 Subject: [PATCH 4/6] Resize images in event management section of UserGuide.adoc --- docs/UserGuide.adoc | 14 +++++++------- docs/team/kratious.adoc | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/UserGuide.adoc b/docs/UserGuide.adoc index ec127dec5776..e544698ab75a 100644 --- a/docs/UserGuide.adoc +++ b/docs/UserGuide.adoc @@ -445,7 +445,7 @@ Example(s): The figure below shows how the panel looks like before executing the example(s) below. .Panel before adding an event -image::command_event_add_before.png[add command, 300] +image::command_event_add_before.png[add command, 200] * `add n/Flag Day l/Yishun MRT sd/31-10-2018 ed/31-10-2018 st/09:00 et/15:00 d/For the children's home` + @@ -453,7 +453,7 @@ image::command_event_add_before.png[add command, 300] Adds an event with the properties specified in the command above. The expected result is shown in the figure below. + .Result of `add n/Flag Day l/Yishun MRT sd/31-10-2018 ed/31-10-2018 st/09:00 et/15:00 d/For the children's home` -image::command_event_add_before_after1.png[add command, 600] +image::command_event_add_before_after1.png[add command, 500] * `add n/Fundraising l/Tampines Street 31 sd/15-11-2018 ed/17-11-2018 st/13:00 et/18:00 d/Raising funds t/fundraiser t/charity` @@ -461,7 +461,7 @@ t/charity` Adds an event with the properties specified in the command above. The expected result is shown in the figure below. + .Result of `add n/Fundraising l/Tampines Street 31 sd/15-11-2018 ed/17-11-2018 st/13:00 et/18:00 d/Raising funds t/fundraiser t/charity` -image::command_event_add_before_after2.png[add command, 600] +image::command_event_add_before_after2.png[add command, 500] [[command-event-list]] @@ -496,14 +496,14 @@ Example(s): The figure below indicates the EVENT_INDEX and shows how the panel looks like before executing the example(s) below. .Panel before editing an event, EVENT_INDEX is indicated in the circles -image::command_event_edit_before.png[add command, 300] +image::command_event_edit_before.png[add command, 200] * `edit 1 n/Charity Fun Run t/` + Edits the name of event at index 1 and removes all tags. The expected result is shown in the figure below. + .Result of `edit 1 n/Charity Fun Run t/` -image::command_event_edit_before_after.png[Before edit, 600] +image::command_event_edit_before_after.png[Before edit, 500] [[command-event-delete]] @@ -518,14 +518,14 @@ Example(s): The figure below indicates the EVENT_INDEX and shows how the panel looks like before executing the example(s) below. .Panel before deleting an event, EVENT_INDEX is indicated in the circles -image::command_event_delete_before.png[add command, 300] +image::command_event_delete_before.png[add command, 200] * `delete 3` + Deletes the event specified at index 3. The expected result is shown in the figure below. + .Result of `delete 3` -image::command_event_delete_before_after.png[Before delete, 600] +image::command_event_delete_before_after.png[Before delete, 500] // end::eventmanagement[] diff --git a/docs/team/kratious.adoc b/docs/team/kratious.adoc index 08e70449f33b..e97499f85988 100644 --- a/docs/team/kratious.adoc +++ b/docs/team/kratious.adoc @@ -27,7 +27,7 @@ My primary role as a developer for SocialCare involved implementing *event manag ** What it does: This feature allows the user to create and manage events that span a period of time. ** Justification: This feature improves the product significantly because a user is able to display and keep track of events by the organisation. This is a core requirement to the application as volunteers have to be assigned to events for basic operations. ** Highlights: -This enhancement is one of the major building blocks of the system and affects majority of the other components. It required an in-depth analysis of design alternatives. The implementation too was challenging as other components are highly dependent on this enhancement. +This enhancement is one of the major building blocks of the system and affects majority of the other components. It required an in-depth analysis of design alternatives. The implementation too was challenging as other components are dependent on this component. * *Minor enhancement*: added an overview command that allows the user to have a statistical overview of existing volunteers and events. @@ -39,7 +39,7 @@ This enhancement is one of the major building blocks of the system and affects m *** Managed releases `v1.1` - `v1.4` (4 releases) on GitHub *** Applied upstream bug fix: link:{pullURL}/78/[#78] ** Enhancements to existing features: -*** Updated the user interface aesthetics and behaviour: link:{pullURL}/68/[#68], link:{pullURL}/92/[#92], link:{pullURL}/148/[#148], link:{pullURL}/151/[#151], link:{pullURL}/158/[#158], link:{pullURL}/221/[#221], link:{pullURL}/230/[#230], link:{pullURL}/243/[#243] +*** Updated the user interface aesthetics and behaviour: link:{pullURL}/68/[#68], link:{pullURL}/92/[#92], link:{pullURL}/158/[#158], link:{pullURL}/243/[#243] ** Documentation: *** Did cosmetic tweaks to existing contents of the Developer Guide: link:{pullURL}/118/[#118], link:{pullURL}/123/[#123], link:{pullURL}/128/[#128] ** Community: From eddac3326a4053602d2a48c5ade84f2a3e77a758 Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 23:11:57 +0800 Subject: [PATCH 5/6] Remove comments from code snippets in DeveloperGuide.adoc --- docs/DeveloperGuide.adoc | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/docs/DeveloperGuide.adoc b/docs/DeveloperGuide.adoc index 9f6e558c785b..1cc1baafb408 100644 --- a/docs/DeveloperGuide.adoc +++ b/docs/DeveloperGuide.adoc @@ -663,9 +663,6 @@ This constructor is used when working with an event that does not yet exist in t It increments the current highest event ID in the system and assigns that value to the new event that is created. This behaviour is illustrated in the code snippet of the `Event` class below. + ``` Java -// Used to keep track of current highest event ID in the system -private static int maxId = 0; - public Event(Name name, Location location, Date startDate, Date endDate, Time startTime, Time endTime, Description description, Set tags) { ... incrementMaxId(); @@ -673,7 +670,6 @@ public Event(Name name, Location location, Date startDate, Date endDate, Time st ... } -// Increments the current highest event ID by 1 private void incrementMaxId() { maxId += 1; } @@ -689,9 +685,6 @@ If this condition is true, the current highest event ID value will be replaced b This behaviour is illustrated in the code snippet of the `Event` class below. + ``` Java -// Used to keep track of current highest event ID in the system -private static int maxId = 0; - public Event(Name name, Location location, Date startDate, Date endDate, Time startTime, Time endTime, Description description, Set tags) { ... if (isEventIdGreaterThanMaxId(eventId.id)) { @@ -700,7 +693,6 @@ public Event(Name name, Location location, Date startDate, Date endDate, Time st ... } -// Replaces current highest event ID with the ID of the event being initialised private void replaceMaxIdWithEventId(int eventId) { maxId = eventId; } @@ -845,12 +837,6 @@ This behaviour is illustrated in the code snippet below. ``` Java public static int getEventStatus(Date startDate, Time startTime, Date endDate, Time endTime) { ... - //build start from startDate and startTime - java.util.Date start = inf.parse(startDate + " " + startTime); - - //build end from endDate and endTime - java.util.Date end = inf.parse(endDate + " " + endTime); - if (now.compareTo(start) < 0) { return UPCOMING_EVENT; } else if (now.compareTo(start) >= 0 && now.compareTo(end) <= 0) { From 5797305adfcce1fef2fa8081bcfc7a99080935ec Mon Sep 17 00:00:00 2001 From: Kratious Date: Mon, 12 Nov 2018 23:13:33 +0800 Subject: [PATCH 6/6] Remove PR references from kratious.adoc --- docs/team/kratious.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/team/kratious.adoc b/docs/team/kratious.adoc index e97499f85988..633f29ad2a8b 100644 --- a/docs/team/kratious.adoc +++ b/docs/team/kratious.adoc @@ -39,11 +39,11 @@ This enhancement is one of the major building blocks of the system and affects m *** Managed releases `v1.1` - `v1.4` (4 releases) on GitHub *** Applied upstream bug fix: link:{pullURL}/78/[#78] ** Enhancements to existing features: -*** Updated the user interface aesthetics and behaviour: link:{pullURL}/68/[#68], link:{pullURL}/92/[#92], link:{pullURL}/158/[#158], link:{pullURL}/243/[#243] +*** Updated the user interface aesthetics and behaviour: link:{pullURL}/92/[#92], link:{pullURL}/158/[#158], link:{pullURL}/243/[#243] ** Documentation: -*** Did cosmetic tweaks to existing contents of the Developer Guide: link:{pullURL}/118/[#118], link:{pullURL}/123/[#123], link:{pullURL}/128/[#128] +*** Did cosmetic tweaks to existing contents of the Developer Guide: link:{pullURL}/118/[#118], link:{pullURL}/128/[#128] ** Community: -*** PRs reviewed (with non-trivial review comments): link:{pullURL}/58/[#58], link:{pullURL}/72/[#72], link:{pullURL}/121/[#121] link:{pullURL}/232/[#232] +*** PRs reviewed (with non-trivial review comments): link:{pullURL}/58/[#58], link:{pullURL}/72/[#72], link:{pullURL}/232/[#232] *** Enquired about and resolved a team issue on the forum: https://github.com/nus-cs2103-AY1819S1/forum/issues/134[#134] ** Tools: *** Integrated a new Github plugin (Coveralls) to the team repository