From a5ad5a05b2f6965bd850ebac2228316b0b506542 Mon Sep 17 00:00:00 2001 From: Rishit02 Date: Fri, 1 Mar 2024 13:54:04 +0800 Subject: [PATCH 1/4] Update READme.md --- README.md | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 670f615498f..a7d8234a8c8 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,31 @@ -[![CI Status](https://github.com/se-edu/addressbook-level3/workflows/Java%20CI/badge.svg)](https://github.com/se-edu/addressbook-level3/actions) +[![CI Status](https://github.com/se-edu/addressbook-level3/workflows/Java%20CI/badge.svg)](https://github.com/AY2324S2-CS2103T-W12-4/tp/actions) [![codecov](https://codecov.io/gh/AY2324S2-CS2103T-W12-4/tp/graph/badge.svg?token=F5OYT9DURR)](https://codecov.io/gh/AY2324S2-CS2103T-W12-4/tp) ![Ui](docs/images/Ui.png) -* This is **a sample project for Software Engineering (SE) students**.
- Example usages: - * as a starting point of a course project (as opposed to writing everything from scratch) - * as a case study -* The project simulates an ongoing software project for a desktop application (called _AddressBook_) used for managing contact details. - * It is **written in OOP fashion**. It provides a **reasonably well-written** code base **bigger** (around 6 KLoC) than what students usually write in beginner-level SE modules, without being overwhelmingly big. - * It comes with a **reasonable level of user and developer documentation**. -* It is named `AddressBook Level 3` (`AB3` for short) because it was initially created as a part of a series of `AddressBook` projects (`Level 1`, `Level 2`, `Level 3` ...). -* For the detailed documentation of this project, see the **[Address Book Product Website](https://se-education.org/addressbook-level3)**. -* This project is a **part of the se-education.org** initiative. If you would like to contribute code to this project, see [se-education.org](https://se-education.org#https://se-education.org/#contributing) for more info. +# ConnectCare +ConnectCare is a client management application designed for social workers. It streamlines client case management, focusing on efficient scheduling and visit tracking. The application aims to optimize scheduling, manage client goals, and ensure effective collaboration among social workers. + +## Table of contents +- [Features](#features) +- [Installation and Usage](#installation-and-usage) +- [User Stories](#user-stories) +- [Acknowledgements](#acknowledgements) +- [License](#license) + +## Features +- **Client Profile Management:** Create, update, and categorize client profiles effectively. +- **Search:** Search for clients based on keywords and tags. + +## Installation and Usage +Prerequisites: JDK 11, update Intellij to the most recent version. +1. Clone the repository +2. Configure the project to use JDK 11 (not other versions) as explained in here. + In the same dialog, set the Project language level field to the SDK default option. +3. After that, open the Gradle tab and execute the gradle command `gradle run` + +## Acknowledgements +- This project is based on the AddressBook-Level3 project created by the [SE-EDU initiative](https://se-education.org). + +## License +ConnectCare is licensed under the [MIT License](LICENSE). From c01615781527772a6487452c0c6fd20b8d4789c0 Mon Sep 17 00:00:00 2001 From: pjanthony2001 <104015990+pjanthony2001@users.noreply.github.com> Date: Fri, 1 Mar 2024 23:18:32 +0800 Subject: [PATCH 2/4] Update Developer Guide Initial commit where small changes were made to the product scope --- docs/DeveloperGuide.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 1b635c9ba53..14c7b289351 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -274,13 +274,16 @@ _{Explain here how the data archiving feature will be implemented}_ **Target user profile**: -* has a need to manage a significant number of contacts +* has a need to manage a significant number of clients for social work, that is dynamically changing +* has a need to efficiently track cases and get important information at a glance +* has a need to easily add notes and observations during visits to record important details * prefer desktop apps over other types * can type fast * prefers typing to mouse interactions * is reasonably comfortable using CLI apps +* -**Value proposition**: manage contacts faster than a typical mouse/GUI driven app +**Value proposition**: Manage and view client information more efficiently than a standard word-editor/address book/spreadsheet ### User stories From 49bb5408b45c982bd0e214a788d1795968bf4289 Mon Sep 17 00:00:00 2001 From: pjanthony2001 <104015990+pjanthony2001@users.noreply.github.com> Date: Sat, 2 Mar 2024 17:06:36 +0800 Subject: [PATCH 3/4] Update Developer Guide --- docs/DeveloperGuide.md | 85 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 83 insertions(+), 2 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 14c7b289351..67135bfb1c5 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -303,7 +303,47 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli ### Use cases -(For all use cases below, the **System** is the `AddressBook` and the **Actor** is the `user`, unless specified otherwise) +(For all use cases below, the **System** is `ConnectCare` and the **Actor** is the `user`, unless specified otherwise) + +**Use case: Add a client** + +**MSS** + +1. User requests to add a client +2. ConnectCare adds the client + + Use case ends. + +**Extensions** + +* 1a. The details of the client is incorrect + + * 1a1. ConnectCare shows an error message. + + Use case ends. + +**Use case: Update client details** + +**MSS** + +1. User requests to update a client +2. ConnectCare updates the client with new details + + Use case ends. + +**Extensions** + +* 1a. The client to update is not found + + * 1a1. ConnectCare shows an error message. + + Use case ends. + +* 1b. The client details given to update is incorrect + + * 1b1. ConnectCare shows an error message. + + Use case ends. **Use case: Delete a person** @@ -328,7 +368,48 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli Use case resumes at step 2. -*{More to be added}* +**Use case: Find client** + +**MSS** + +1. User requests to find a client +2. ConnectCare lists all clients that match the keyword + + Use case ends. + +**Extensions** + +* 1a. There is no given keyword. + + * 1a1. AddressBook shows an error message. + + Use case ends. + +**Use case: Clear all clients** + +**MSS** + +1. User requests to clear all clients +2. ConnectCare clears all clients + + Use case ends. + +**Extensions** + +* 1a. The list is empty. + + * 1a1. AddressBook shows an error message. + + Use case ends. + +**Use case: Exit the application** + +**MSS** + +1. User requests to exit the application +2. ConnectCare exits + + Use case ends. ### Non-Functional Requirements From 47f8609c8d1c78abef1b537696ae0a840e32e1f5 Mon Sep 17 00:00:00 2001 From: pjanthony2001 <104015990+pjanthony2001@users.noreply.github.com> Date: Sun, 3 Mar 2024 11:48:46 +0800 Subject: [PATCH 4/4] Update Use Cases --- docs/DeveloperGuide.md | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 67135bfb1c5..5b09e2c243f 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -290,14 +290,14 @@ _{Explain here how the data archiving feature will be implemented}_ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unlikely to have) - `*` -| Priority | As a …​ | I want to …​ | So that I can…​ | -|----------|--------------------------------------------|------------------------------|------------------------------------------------------------------------| -| `* * *` | social worker | see usage instructions | refer to instructions when I forget how to use the App | -| `* * *` | social worker | create a new client | keep track of their information efficiently | -| `* * *` | social worker | delete a person | remove client entries that I no longer need | -| `* * *` | user | find a person by name | locate details of persons without having to go through the entire list | -| `* *` | user | hide private contact details | minimize chance of someone else seeing them by accident | -| `*` | user with many persons in the address book | sort persons by name | locate a person easily | +| Priority | As a …​ | I want to …​ | So that I can…​ | +|----------|---------------------------------|------------------------------|------------------------------------------------------------------------| +| `* * *` | social worker | see usage instructions | refer to instructions when I forget how to use the App | +| `* * *` | social worker | create a new client | keep track of their information efficiently | +| `* * *` | social worker | delete a client | remove client entries that I no longer need | +| `* * *` | social worker | find a client by name | locate details of clients without having to go through the entire list | +| `* *` | social worker | hide private contact details | minimize chance of someone else seeing them by accident | +| `*` | social worker with many clients | sort persons by name | locate a person easily | *{More to be added}* @@ -350,9 +350,9 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli **MSS** 1. User requests to list persons -2. AddressBook shows a list of persons +2. ConnectCare shows a list of persons 3. User requests to delete a specific person in the list -4. AddressBook deletes the person +4. ConnectCare deletes the person Use case ends. @@ -364,7 +364,7 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli * 3a. The given index is invalid. - * 3a1. AddressBook shows an error message. + * 3a1. ConnectCare shows an error message. Use case resumes at step 2. @@ -381,7 +381,7 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli * 1a. There is no given keyword. - * 1a1. AddressBook shows an error message. + * 1a1. ConnectCare shows an error message. Use case ends. @@ -390,7 +390,9 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli **MSS** 1. User requests to clear all clients -2. ConnectCare clears all clients +2. ConnectCare requests for confirmation +3. User confirms +4. ConnectCare clears all clients Use case ends. @@ -398,7 +400,13 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli * 1a. The list is empty. - * 1a1. AddressBook shows an error message. + * 1a1. ConnectCare shows an error message. + + Use case ends. + +* 3a. The user does not confirm + + * 3a1. ConnectCare informs user of the cancellation Use case ends.