[CS2113-T16-2] Elderly In Your Hood#39
Conversation
Fix bug in new line not found of Scanner class
Add function of viewing and adding medical history
Add function to delete medical message
Add prompt for garbage collection
Update user guide
|
|
||
| {Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} | ||
|
|
||
| ### Elderly risk categorisation |
There was a problem hiding this comment.
Maybe this section should be further down instead of being the first section, as the first section is usually a brief introduction of the app/overview of architecture.
|
|
||
| ### Elderly risk categorisation | ||
| #### Implementation | ||
| The elderly risk categorisation is an addition to the current `Elderly` class. It utilises |
There was a problem hiding this comment.
Since it is an addition to the Elderly class, the section on the Elderly class should probably be above this.
There was a problem hiding this comment.
The Elderly class is not described before this section, this can cause confusion.
| - `Doctor` — A class that contains information about a doctor | ||
|
|
||
| Below is a UML class diagram for the elderly risk categorisation: | ||
|  |
|  | ||
|
|
||
|
|
||
| #### How the classes interact with each other |
There was a problem hiding this comment.
This section is comprehensive and well written :)
| UML Diagram of the interaction between classes is shown below : | ||
|  | ||
|
|
||
| #### Interaction of Classes |
There was a problem hiding this comment.
Would be good to add a sequence diagram here to summarise how the function works as the description is slightly lengthy.
| 2. The product should work on both 32-bit and 64-bit system. | ||
| 3. This version of product does not allow for addition of hospital and doctors. | ||
|
|
||
| ## Glossary |
There was a problem hiding this comment.
In general, the DG is well written but can be organised better (the introduction seems to be at the bottom instead of the top) and have a section for the overall architecture/flow of the app. Would also be good to have a table of contents for better navigability.
nvbinh15
left a comment
There was a problem hiding this comment.
Overall, the DG is well-written with a lot of content included. There are some minor bugs with the class diagrams, and a table of content can be included for better navigability. Well done!
|
|
||
| {Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} | ||
|
|
||
| ### Elderly risk categorisation |
There was a problem hiding this comment.
The sections should be numbered and a table of content with links should be included so readers can navigate easily.
| {Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} | ||
|
|
||
| ### Elderly risk categorisation | ||
| #### Implementation |
There was a problem hiding this comment.
There should be a blank line after the section header, same issue at line 48.
| - `Doctor` — A class that contains information about a doctor | ||
|
|
||
| Below is a UML class diagram for the elderly risk categorisation: | ||
|  |
There was a problem hiding this comment.
For the elderly class, there should be two horizontal bars to indicate that there is no attribute and no method in this class
There was a problem hiding this comment.
The association were specified with multiplicity but name of the association is not specified
There was a problem hiding this comment.
The attribute data type and method return type are not specified
| This information in both classes is then stored in `Elderly` class. | ||
|
|
||
| UML Diagram of the interaction between classes is shown below : | ||
|  |
There was a problem hiding this comment.
Same issue with the previous class diagram. The relationships between Elderly, Next-Of-Kin, and Record should be shown with arrows. Therefore, the attributes can be omitted.
| When using the `findbymed`, `findbydiet`, `findbyname` functions, they will take generate a set of | ||
| medicine, diets and real names respectively. The function `checkSimilarities` in `ElderlyList.class` | ||
| will then iterate through each item in the set and compare it with the query term. If there is a | ||
| similarity score of `>=0.8`, the closest match will be printed. |
There was a problem hiding this comment.
perhaps you could show a diagram (sequence or class) to complement this explanation?
|
|
||
| UML Diagram of the interaction between classes is shown below : | ||
|  | ||
|
|
There was a problem hiding this comment.
this is correct UML notation, the first diagram used in the guide can be edited to match this notation (although some standardisation is needed e.g. in Elderly members and visibility symbol have a space in between but not in the other classes)
|
|
||
| #### Interaction of Classes | ||
| `Elderly` class will interact with `Next-of-kin` class through the use of `addNok()` function. This function will | ||
|
|
There was a problem hiding this comment.
unsure if this blank line is intended or not, but does not seem to serve any purpose and is quite abrupt
| is used to view the details that are stored. | ||
|
|
||
| #### Future Implementation and Considerations | ||
|
|
There was a problem hiding this comment.
a short explanation of how exactly this can be implemented could be given (similar to proposed undo/redo feature in AB3 developer guide here)
| 2. The product should work on both 32-bit and 64-bit system. | ||
| 3. This version of product does not allow for addition of hospital and doctors. | ||
|
|
||
| ## Glossary |
There was a problem hiding this comment.
Adding to the previous reviewer's feedback, your team could look into having more diagrams of different types such as sequence diagrams (currently only 2 diagrams that are both class diagrams) to show your UML and documentation skills.
| The `Elderly` class interacts with two classes, which is `Next-of-Kin` class and `Record` class. As can | ||
| be seen by the association between the three classes, the `Elderly` class stores `Next-of-Kin` and `Record` | ||
| as ArrayLists in its attributes. | ||
| - `Next-of-Kin` class stores the contact information of the Next-of-Kin, such as name, phone number, | ||
| email, address and relationship to the Elderly | ||
| - `Record` stores the details of the Elderly, such as the elderly phone number and address |
| #### An example of AutoSuggestions | ||
| Assuming we have an elderly that exist in the system called `John Tan`. We, as the user, remember | ||
| that his name was `<SOMETHING> Tan`, and it was either `Josh` or `John`. We try `Josh` | ||
| first. | ||
|
|
||
|  | ||
|
|
||
| Instead of just prompting that the system could not find `Josh Tan`, the search term went through | ||
| the Levenshtein Distance logic and the name `John Tan` returned with a result of `0.9375`. As you | ||
| can see, this was our intended result and showcases the intended solution to our problem. | ||
|
|
||
| #### Potential Shortcomings of this function | ||
| There may be two strings that have similar edit distance to each other but may not be related to | ||
| each other. This will include words like `sitting` and `kitten` for example. This may give | ||
| inaccurate suggestions. However, since this is **not a key function** and is only meant to be a | ||
| complementary tool, **it will not be a major problem**. | ||
|
|
||
| ### Addition of Next-of-Kin and Record Classes | ||
| #### Implementation |
Fixes made on load to allow for inheritance when loading from json
Support fast-typing in adding elderly
Update size of diagram
# Conflicts: # docs/DeveloperGuide.md
Changes made to DG
Changes made to DG to prevent additional line
Change made to DG to add appendixes
Add more to PPP
Update ppp
Update dg manual test
Add more regex checker
Change the regex checker to allow useful invalid risk level
Edit minor bug with doctor
Changes made to DG to finish Appendix E and update table of contents
Update PPP




Our team intends to assist the elderly helpers by automating certain tasks for them.