diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md
index ae3d8ce5a0d..080a8d75863 100644
--- a/docs/DeveloperGuide.md
+++ b/docs/DeveloperGuide.md
@@ -5,6 +5,10 @@ title: Developer Guide
## Overview
+CCAConnect is a desktop application that aims to **assist NUS CCA leaders** in **managing and collating relevant CCA personnel’s contact details**, as well as help to **track attendance details for CCA sessions**.
+Equipped with features like **attendance marking**, **contact management**, **contact filtering** and **profile switching**, CCAConnect helps to reduce the headaches of personnel tracking.
+
+--------------------------------------------------------------------------------------------------------------------
## Table of Contents
* Table of Contents
@@ -14,7 +18,8 @@ title: Developer Guide
## **Acknowledgements**
-* {list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well}
+* This project is based on the AddressBook-Level3 project created by the [SE-EDU initiative](https://se-education.org).
+* Libraries used: [JavaFX](https://openjfx.io/), [Jackson](https://github.com/FasterXML/jackson), [JUnit5](https://github.com/junit-team/junit5)
--------------------------------------------------------------------------------------------------------------------
@@ -209,7 +214,6 @@ The following activity diagram summarizes what happens when a user executes a ne
-
### Switch Profile Feature
The `switch` command allows users to manage separate profiles within the application, each storing independent data in an isolated session. This feature enables users to work on different datasets without interference, as if each profile represented a unique instance of the application.
@@ -234,12 +238,6 @@ Consider these test cases for `switch` command validation:
- **Single Profile Scenario:** If no other profiles are available to be swapped (i.e., only one profile exists), the application should display a help message to guide the user.
- **Multiple Profiles Scenario:** If multiple profiles are available, the application should list the available profiles, showing the options that can be switched to.
-
-### \[Proposed\] Data archiving
-
-_{Explain here how the data archiving feature will be implemented}_
-
-
--------------------------------------------------------------------------------------------------------------------
## **Documentation, logging, testing, configuration, dev-ops**
@@ -314,15 +312,15 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli
| `*` | user | set privacy levels for each contact's information | protect sensitive details |
| `*` | user | see a profile picture for each contact | recall the person from the picture |
-*{More to be added}*
+
### Use cases
**Notes**: _For all use cases below, the **System** is `CCAConnect` and the **Actor** is the `user`, unless specified otherwise_
-**Use Case: UC01 - View John Doe’s Contact Information**
-**Actor: User**
+**Use Case: UC01 - View John Doe’s Contact Information**
+**Actor: User**
**MSS**
1. User enters appropriate ‘view’ command to search for ‘John Doe’s contact information.
@@ -339,8 +337,8 @@ Use Case ends.
-**Use Case: UC02 - Delete a contact**
-**Actor: User**
+**Use Case: UC02 - Delete a contact**
+**Actor: User**
**MSS**
1. User requests to list all contacts.
@@ -361,8 +359,8 @@ Use Case ends.
-**Use Case: UC03 - Add a contact**
-**Actor: User**
+**Use Case: UC03 - Add a contact**
+**Actor: User**
**MSS**
1. User requests to add a contact.
@@ -382,8 +380,8 @@ Use Case ends.
-**Use Case: UC04 - Search for a contact**
-**Actor: User**
+**Use Case: UC04 - Search for a contact**
+**Actor: User**
**MSS**
1. User searches the list of contacts with a query relating to a contact’s name.
@@ -402,8 +400,8 @@ Use Case ends.
-**Use Case: UC05 - List all contacts**
-**Actor: User**
+**Use Case: UC05 - List all contacts**
+**Actor: User**
**MSS**
User enters ‘list’ command to view information of all contacts.
@@ -420,8 +418,8 @@ Use Case ends.
-**Use Case: UC06 - View all commands**
-**Actor: User**
+**Use Case: UC06 - View all commands**
+**Actor: User**
**MSS**
1. User requests to see all the available commands.
@@ -431,8 +429,8 @@ Use Case ends.
-**Use Case: UC07 - View all members**
-**Actor: User**
+**Use Case: UC07 - View all members**
+**Actor: User**
**MSS**
1. User requests to see all members in the contacts.
@@ -443,8 +441,8 @@ Use Case ends.
-**Use Case: UC08 - Mark attendance of members**
-**Actor: User**
+**Use Case: UC08 - Mark attendance of members**
+**Actor: User**
**MSS**
1. User requests to mark the attendance of members.
@@ -469,8 +467,8 @@ Use Case ends.
-**Use Case: UC09 - Unmark attendance of members**
-**Actor: User**
+**Use Case: UC09 - Unmark attendance of members**
+**Actor: User**
**MSS**
1. User requests to unmark the attendance of members.
diff --git a/docs/UserGuide.md b/docs/UserGuide.md
index 7610fe17fda..43fa1cbc2e7 100644
--- a/docs/UserGuide.md
+++ b/docs/UserGuide.md
@@ -10,6 +10,8 @@ title: User Guide
CCAConnect is a desktop application that aims to **assist NUS CCA leaders** in **managing and collating relevant CCA personnel’s contact details**, as well as help to **track attendance details for CCA sessions**.
Equipped with features like **attendance marking**, **contact management**, **contact filtering** and **profile switching**, CCAConnect helps to reduce the headaches of personnel tracking.
+--------------------------------------------------------------------------------------------------------------------
+
## Table of Contents
* Table of Contents
@@ -59,17 +61,17 @@ Equipped with features like **attendance marking**, **contact management**, **co
Notes about the command format:
- - Words in UPPER_CASE
are the parameters to be supplied by the user.
- - e.g. in add n/NAME
, NAME
is a parameter which can be used as add n/John Doe
.
- - Items in square brackets are optional.
- - e.g n/NAME [t/TAG]
can be used as n/John Doe t/friend
or as n/John Doe
.
- - Items in square brackets are optional.
- - e.g n/NAME [t/TAG]
can be used as n/John Doe t/friend
or as n/John Doe
.
- - Items with …
after them can be used multiple times. If the item is optional, e.g. [r/ROLE]…
, it can also be used zero times
- - e.g. [r/ROLE]…
can be used as
(i.e. 0 times), r/exco
, r/member r/exco
etc.
- - Parameters can be in any order.
- - e.g. if the command specifies n/NAME p/PHONE_NUMBER
, p/PHONE_NUMBER n/NAME
is also acceptable.
- - The parameter prefixes (e.g. n/
) with leading spaces are considered restricted keywords, and may not be present within existing parameters. However, for some parameters, using it within the parameter without a leading space (e.g. `n/a` within `ROLE`) is allowed
+* Words in UPPER_CASE
are the parameters to be supplied by the user.
+ * e.g. in add n/NAME
, NAME
is a parameter which can be used as add n/John Doe
.
+* Items in square brackets are optional.
+ * e.g n/NAME [t/TAG]
can be used as n/John Doe t/friend
or as n/John Doe
.
+* Items in square brackets are optional.
+ * e.g n/NAME [t/TAG]
can be used as n/John Doe t/friend
or as n/John Doe
.
+* Items with …
after them can be used multiple times. If the item is optional, e.g. [r/ROLE]…
, it can also be used zero times
+ * e.g. [r/ROLE]…
can be used as
(i.e. 0 times), r/exco
, r/member r/exco
etc.
+* Parameters can be in any order.
+ * e.g. if the command specifies n/NAME p/PHONE_NUMBER
, p/PHONE_NUMBER n/NAME
is also acceptable.
+* The parameter prefixes (e.g. n/
) with leading spaces are considered restricted keywords, and may not be present within existing parameters. However, for some parameters, using it within the parameter without a leading space (e.g. `n/a` within `ROLE`) is allowed