Skip to content

Commit

Permalink
Merge pull request #17 from Darren159/branch-documentation
Browse files Browse the repository at this point in the history
Branch documentation
  • Loading branch information
adammangzijun authored Oct 4, 2023
2 parents 324ab29 + 560cba5 commit eb03e80
Show file tree
Hide file tree
Showing 5 changed files with 143 additions and 39 deletions.
31 changes: 29 additions & 2 deletions docs/AboutUs.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,40 @@

We are a team based in the [School of Computing, National University of Singapore](http://www.comp.nus.edu.sg).

You can reach us at the email `low.darren[at]u.nus.edu`

## Project team

### Darren Low

<img src="images/darren159.png" width="200px">

[[github](https://github.com/Darren159)]
[[portfolio](team/darren159.md)]

* Role: Developer

### Kim Hanjoo

<img src="images/hjoneweek.png">
<img src="images/hjoneweek.png" width = "200px">

[[github](https://github.com/hjoneweek)]
[[portfolio](team/hjoneweek.md)]

* Role: Developer

### Jane Doe

<img src="images/johndoe.png" width="200px">

[[github](http://github.com/johndoe)]
[[portfolio](team/johndoe.md)]

* Role: Team Lead
* Responsibilities: UI

### Johnny Doe

<img src="images/johndoe.png" width="200px">

[[github](http://github.com/johndoe)] [[portfolio](team/johndoe.md)]

72 changes: 55 additions & 17 deletions docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
pageNav: 3
---

# AB-3 Developer Guide
# MedBook Developer Guide

<!-- * Table of Contents -->
<page-nav-print />
Expand Down Expand Up @@ -35,7 +35,7 @@ Given below is a quick overview of main components and how they interact with ea

**Main components of the architecture**

**`Main`** (consisting of classes [`Main`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/Main.java) and [`MainApp`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/MainApp.java)) is in charge of the app launch and shut down.
**`Main`** (consisting of classes [`Main`](https://github.com/AY2324S1-CS2103T-T12-4/tp/blob/master/src/main/java/seedu/address/Main.java) and [`MainApp`](https://github.com/AY2324S1-CS2103T-T12-4/tp/blob/master/src/main/java/seedu/address/MainApp.java)) is in charge of the app launch and shut down.
* At app launch, it initializes the other components in the correct sequence, and connects them up with each other.
* At shut down, it shuts down the other components and invokes cleanup methods where necessary.

Expand Down Expand Up @@ -67,7 +67,7 @@ The sections below give more details of each component.

### UI component

The **API** of this component is specified in [`Ui.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/ui/Ui.java)
The **API** of this component is specified in [`Ui.java`](https://github.com/AY2324S1-CS2103T-T12-4/tp/blob/master/src/main/java/seedu/address/ui/Ui.java)

<puml src="diagrams/UiClassDiagram.puml" alt="Structure of the UI Component"/>

Expand Down Expand Up @@ -115,7 +115,7 @@ How the parsing works:
* All `XYZCommandParser` classes (e.g., `AddCommandParser`, `DeleteCommandParser`, ...) inherit from the `Parser` interface so that they can be treated similarly where possible e.g, during testing.

### Model component
**API** : [`Model.java`](https://github.com/se-edu/addressbook-level3/tree/master/src/main/java/seedu/address/model/Model.java)
**API** : [`Model.java`](https://github.com/AY2324S1-CS2103T-T12-4/tp/blob/master/src/main/java/seedu/address/model/Model.java)

<puml src="diagrams/ModelClassDiagram.puml" width="450" />

Expand Down Expand Up @@ -269,13 +269,18 @@ _{Explain here how the data archiving feature will be implemented}_

**Target user profile**:

* has a need to manage a significant number of contacts
* doctors
* has a need to manage a significant number of patients
* 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**:

* streamline patient management
* easy access to patients' details such as medical records and contact information
* manage patients faster than a typical mouse/GUI driven app


### User stories
Expand All @@ -295,30 +300,63 @@ 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 the `MedBook` and the **Actor** is the `user`, unless specified otherwise)

**Use case: UC01 - Viewing help**

**MSS**

**Use case: UC02 - Adding a patient**

**MSS**

**Use case: UC03 - Listing all patient**

**MSS**

**Use case: UC04 - Editing a patient**

**MSS**

**Use case: UC05 - Locating a specific patient**

**MSS**

**Use case: Delete a person**
**Use case: UC06 - Delete a patient**

**MSS**

1. User requests to list persons
2. AddressBook shows a list of persons
3. User requests to delete a specific person in the list
4. AddressBook deletes the person
1. User <u>lists all patients (UC03)</u>
2. User requests to delete a specific patient in the list
3. MedBook deletes the patient

Use case ends.

**Extensions**

* 2a. The list is empty.
* ~~2a. The given id is invalid.

* 2a1. MedBook shows an error message.~~

Use case ends.

Use case ends.
**Use case: UC07 - Pin a patient**

**MSS**

1. User <u>lists all patients (UC03)</u>
2. User requests to pin a specific patient in the list
3. MedBook pins the patient

Use case ends.

**Extensions**

* 3a. The given index is invalid.
* 2a. The given id is invalid.

* 3a1. AddressBook shows an error message.
* 2a1. MedBook shows an error message.

Use case resumes at step 2.
Use case ends.

*{More to be added}*

Expand Down
54 changes: 34 additions & 20 deletions docs/UserGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
pageNav: 3
---

# AB-3 User Guide
# MedBook User Guide

AddressBook Level 3 (AB3) is a **desktop app for managing contacts, optimized for use via a Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, AB3 can get your contact management tasks done faster than traditional GUI apps.
Medbook is a **desktop app for managing patient details and medical records, optimized for use via a Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, MedBook can get your contact management tasks done faster than traditional GUI apps.

<!-- * Table of Contents -->
<page-nav-print />
Expand All @@ -17,11 +17,11 @@ AddressBook Level 3 (AB3) is a **desktop app for managing contacts, optimized fo

1. Ensure you have Java `11` or above installed in your Computer.

1. Download the latest `addressbook.jar` from [here](https://github.com/se-edu/addressbook-level3/releases).
1. Download the latest `medbook.jar` from [here](https://github.com/AY2324S1-CS2103T-T12-4/tp/releases).

1. Copy the file to the folder you want to use as the _home folder_ for your AddressBook.
1. Copy the file to the folder you want to use as the _home folder_ for your MedBook.

1. Open a command terminal, `cd` into the folder you put the jar file in, and use the `java -jar addressbook.jar` command to run the application.<br>
1. Open a command terminal, `cd` into the folder you put the jar file in, and use the `java -jar medbook.jar` command to run the application.<br>
A GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.<br>
![Ui](images/Ui.png)

Expand All @@ -30,7 +30,7 @@ AddressBook Level 3 (AB3) is a **desktop app for managing contacts, optimized fo

* `list` : Lists all contacts.

* `add n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01` : Adds a contact named `John Doe` to the Address Book.
* `add n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01` : Adds a contact named `John Doe` to the MedBook.

* `delete 3` : Deletes the 3rd contact shown in the current list.

Expand Down Expand Up @@ -131,23 +131,36 @@ Examples:
* `find alex david` returns `Alex Yeoh`, `David Li`<br>
![result for 'find alex david'](images/findAlexDavidResult.png)

### Deleting a person : `delete`
### Deleting a patient : `delete`

Deletes the specified person from the address book.
Deletes the specified patient from the medbook.

Format: `delete INDEX`
Format: `delete [patientId]`

* Deletes the person at the specified `INDEX`.
* The index refers to the index number shown in the displayed person list.
* The index **must be a positive integer** 1, 2, 3, …​
* Deletes the patient at the specified `patientId`.
* The patientId refers to the unique patient id shown in the displayed patient list.
* The id **must be a positive integer** 1, 2, 3, …​

Examples:
* `list` followed by `delete 2` deletes the 2nd person in the address book.
* `find Betsy` followed by `delete 1` deletes the 1st person in the results of the `find` command.
* `delete 2` deletes the patient with the id of `2` in the medbook.

### Pinning a patient : `pin`

Pins the specified patient to the top of the patient list.

Format: `pin [patientId]`

* Pins the patient at the specified `patientId` to the top of the patient list.
* The pinned patient will always be visible on screen at the top of the patient list.
* The patientId refers to the unique patient id shown in the displayed patient list.
* The id **must be a positive integer** 1, 2, 3, …​

Examples:
* `pin 2` pin the patient with the id of `2` in the medbook to the top of the patient list.

### Clearing all entries : `clear`

Clears all entries from the address book.
Clears all entries from the medbook.

Format: `clear`

Expand All @@ -159,16 +172,16 @@ Format: `exit`

### Saving the data

AddressBook data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
MedBook data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.

### Editing the data file

AddressBook data are saved automatically as a JSON file `[JAR file location]/data/addressbook.json`. Advanced users are welcome to update data directly by editing that data file.
MedBook data are saved automatically as a JSON file `[JAR file location]/data/medbook.json`. Advanced users are welcome to update data directly by editing that data file.

<box type="warning" seamless>

**Caution:**
If your changes to the data file makes its format invalid, AddressBook will discard all data and start with an empty data file at the next run. Hence, it is recommended to take a backup of the file before editing it.
If your changes to the data file makes its format invalid, MedBook will discard all data and start with an empty data file at the next run. Hence, it is recommended to take a backup of the file before editing it.
</box>

### Archiving data files `[coming in v2.0]`
Expand All @@ -180,7 +193,7 @@ _Details coming soon ..._
## FAQ

**Q**: How do I transfer my data to another Computer?<br>
**A**: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous AddressBook home folder.
**A**: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous MedBook home folder.

--------------------------------------------------------------------------------------------------------------------

Expand All @@ -196,8 +209,9 @@ Action | Format, Examples
-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------
**Add** | `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…​` <br> e.g., `add n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 t/friend t/colleague`
**Clear** | `clear`
**Delete** | `delete INDEX`<br> e.g., `delete 3`
**Delete** | `delete [patientId]`<br> e.g., `delete 3`
**Edit** | `edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [t/TAG]…​`<br> e.g.,`edit 2 n/James Lee e/[email protected]`
**Find** | `find KEYWORD [MORE_KEYWORDS]`<br> e.g., `find James Jake`
**Pin** | `pin [patientId]`<br> e.g., `pin 2`
**List** | `list`
**Help** | `help`
Binary file added docs/images/darren159.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 25 additions & 0 deletions docs/team/darren159.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
layout: default.md
title: "Darren's Project Portfolio Page"
---

### Project: MedBook

AddressBook - Level 3 is a desktop address book application used for teaching Software Engineering principles. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.

Given below are my contributions to the project.

* **New Feature**:

* **Code contributed**: [RepoSense link](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=darren159&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos)

* **Project management**:

* **Enhancements to existing features**:

* **Documentation**:

* **Community**:

* **Tools**:

0 comments on commit eb03e80

Please sign in to comment.