-
Notifications
You must be signed in to change notification settings - Fork 69
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[v1.5][T11-B2] PrisonBook #78
base: master
Are you sure you want to change the base?
Changes from 42 commits
9afa182
c29e014
2fa38ea
9d95f29
98cfc71
3d1cb0b
5e9ac91
2cffb64
bba8a33
8d063fa
c99afc7
e3e14f1
708f1db
a8e2c19
f18c20b
343e076
08c0090
f8ad4d9
3b8a2ad
141d2f7
bc6c4b0
2ceed8c
8acec84
c8065cd
2a1d7eb
13f507c
64cb296
21f692f
fa198db
c6e860a
dd79a22
a57f8f1
6269b5a
edf587c
2d096f1
ad764da
3b843ac
aa12886
36b54f5
0ab0a88
ef444dd
ffaee13
d0b828d
ba74e9d
9d3208c
38b36f6
bd34c90
2303157
3be5e78
d77fa80
e99c8fd
984297c
f0e6262
c626106
6409ee4
6030b17
f993dc7
45f126e
fbeb164
4dc46f4
59e84e0
91a7a27
110336e
f13d100
7d43f89
ddead9e
d682a78
e3ea062
1b812ed
c664f3a
b24382e
64e93ac
e02f12f
a7ca816
1cdd6a5
a3726cd
616918a
22ed1a2
2c7f15b
0b7e41f
e594d04
dc844fa
dd06882
ea6240b
f49403a
5854788
235ab21
09830ed
6c58b69
d322d11
74e3264
b7f2ded
1fa127e
df071d7
1154530
68ecc49
e265e74
0d6e2dd
d0a2bc8
d3a1318
da253fd
5bb8397
e9007b1
8289522
f721e77
fe85204
69baa6b
773f915
8ff1879
c0caba0
d1f8aaa
ba4972d
63e3a23
862e6c0
0372b7d
7a959d4
0ae694c
e5131d5
ac651c9
254ebef
9de2b6d
35cd8a1
4a3a552
a2dcc68
cc6e7eb
09825c0
d2fac0e
21d332d
7619f42
dfc99e6
60d8d1b
09bbe67
d6545bb
6256802
08e7a94
2f8a62b
119eb4f
f63b0f0
8379219
ac2a912
b8926ec
6de5259
ffd23d8
439149c
56e4c37
b397072
146fd1b
0072452
8926d74
2718b9c
3717bc7
4eb0138
06f8207
dfeb051
606d3bd
29fec28
fe03f87
17ad347
a7e51b9
b2428f7
d55cb2d
75ad24f
e916fba
eab26b2
e2b7211
3e36a29
b88f96f
9a8ef7a
fffc0a5
399699f
3760e18
62b61c0
0307782
9081774
3deac39
cf96172
796be0e
9344f06
5ccb191
9ea4140
703214d
05bc685
4e176f6
a5b620f
cad12ee
aa7affb
67534d6
01e795a
80350b6
cda0e08
b1aeb46
f3c86a3
67e7e6e
a4ddfab
c175d9f
2dc2c5e
376db96
df2fa7c
0f7b5d5
e861b44
e8e54f6
3c525ca
8830618
b283ca4
6157861
4531761
28b4bd3
d479ae6
8514580
b90ffc1
ea5909b
391e151
006fa5d
369d0d6
b05b71e
d01822a
53a5fa6
c13e882
2a43520
48733cb
014b2e9
d095166
d67046c
bf20fa0
9c4b054
e61bd45
239a3b6
18c02cd
c8772a7
26817a5
650c8f2
6b2e2f6
0c83e08
ab1e30e
3f1b6dc
1f7ab62
fec35af
ed07030
c79f4ce
d1b6e8e
8f33ca1
78104d6
bb1b46d
c5d17fa
db415b8
4100da2
e0382f9
40fa13f
cd4d544
d673dd2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,9 +10,9 @@ ifdef::env-github[] | |
:tip-caption: :bulb: | ||
:note-caption: :information_source: | ||
endif::[] | ||
:repoURL: https://github.com/se-edu/addressbook-level4/tree/master | ||
:repoURL: https://github.com/CS2103JAN2018-T11-B2/main/ | ||
|
||
By: `Team SE-EDU` Since: `Jun 2016` Licence: `MIT` | ||
By: `CS2103-T11-B2` Since: `Jan 2018` Licence: `MIT` | ||
|
||
== Setting up | ||
|
||
|
@@ -798,51 +798,158 @@ Priorities: High (must have) - `* * \*`, Medium (nice to have) - `* \*`, Low (un | |
[width="59%",cols="22%,<23%,<25%,<30%",options="header",] | ||
|======================================================================= | ||
|Priority |As a ... |I want to ... |So that I can... | ||
|`* * *` |new user |see usage instructions |refer to instructions when I forget how to use the App | ||
|`* * *` |administrator |group police officers together |form teams to carry out various tasks: patrol rotations, perimeter control, cell guards | ||
|
||
|`* * *` |user |add a new person | | ||
|`* * *` |police officer |have a track record of each prisoner’s past offences | ||
Type 1 – Injuring officer | ||
Type 2 – Infighting with other inmates | ||
Type 3 – Vandalism | ||
|use the appropriate level of precaution when dealing with unruly individuals | ||
|
||
|`* * *` |user |delete a person |remove entries that I no longer need | ||
|`* * *` |police officer |keep track of each prisoner’s holding cells |ensure that there are two prisoners per cell and that certain bad prisoner combinations are avoided | ||
|
||
|`* * *` |user |find a person by name |locate details of persons without having to go through the entire list | ||
|`* * *` |administrator |assign ranks to each police officer |enforce access rights to view/edit prisoner and officer data | ||
|
||
|`* *` |user |hide <<private-contact-detail,private contact details>> by default |minimize chance of someone else seeing them by accident | ||
|`* * *` |police officer |check the length of imprisonment of prisoners I am in charge of |know when they are leaving | ||
|
||
|`* * *` |police officer |add prisoners to prison cells |the prisoners have a prison cell to stay in | ||
|
||
|`* * *` |police officer |check number of prison cells available |decide whether to take more prisoners in | ||
|
||
|`* * *` |police officer |delete a prisoner |add more prisoners to prison | ||
|
||
|`* * *` |police officer |check when I am on duty |see when I have to come to work | ||
|
||
|`* * *` |police officer |check who are in my team |coordinate with my team | ||
|
||
|`* * *` |administrator |add police officers |give access to new police officers | ||
|
||
|`* *` |police officer |assign prisoners to different recess blocks |separate those that start fights or cause trouble when together | ||
|
||
|`* *` |administrator |shuffle patrol guards around teams every day |each team is made up of different members every day, prisoners will acquaint themselves with specific guards | ||
|
||
|`* *` |administrator |divide cells into sections (A, B, C, D) and name each cell numerically (A1, A2, etc…) |refer to each cell easily when assigning prisoners to them | ||
|
||
|`* *` |police officer |check whether there are visitor appointments |inform prisoners and bring them to see their visitors | ||
|
||
|`* *` |police officer |edit details of prisoners |update information of prisoners | ||
|
||
|`* *` |police officer |transfer people to other prisons |have more empty cells for more prisoners | ||
|
||
|`*` |prisoner |know my release date |look forward to the day I can see my family/friends again | ||
|
||
|`*` |police officer |see my assigned prisoners’ social networks: friends, enemies, family, etc… |use this as reference when dealing with inmates | ||
|
||
|`*` |police officer |assign prisoners to solitary confinement |punish those that have continuously committed serious offences | ||
|
||
|`*` |cook |check dietary requirements of all people in prison |cook sufficient food | ||
|
||
|`*` |counselor |check what prisoners' crimes |understand my patients better | ||
|
||
|`*` |user with many persons in the address book |sort persons by name |locate a person easily | ||
|======================================================================= | ||
|
||
_{More to be added}_ | ||
|
||
[appendix] | ||
== 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 `AddressBook` (AB) unless specified otherwise) | ||
|
||
[discrete] | ||
=== Use case: Add a prisoner | ||
Actor: police officer (PO) | ||
|
||
*MSS* | ||
|
||
1. PO requests to add prisoner | ||
2. AB adds prisoner | ||
3. PO requests to list cells that are empty/not filled | ||
4. AB shows a list of empty/not filled cells | ||
5. PO requests to view a specific cell’s prisoner’s details | ||
6. AB shows details of prisoner in cell | ||
7. PO requests to add a prisoner to a specific cell | ||
8. AB adds prisoner to cell | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. There are no cells available for new prisoner. | ||
+ | ||
[none] | ||
** 2a1. AB shows an error message. | ||
+ | ||
Use case ends. | ||
|
||
* 5a. The given index is invalid, outside range. | ||
+ | ||
[none] | ||
** 5a1. AddressBook shows an error message. | ||
+ | ||
Use case resumes at step 4. | ||
|
||
* 5b. The given index of cell has no prisoners. | ||
+ | ||
[none] | ||
** 5b1. AddressBook shows an error message. | ||
+ | ||
Use case resumes at step 4. | ||
|
||
* 7a. The given index is invalid. | ||
+ | ||
[none] | ||
** 7a1. AddressBook shows an error message. | ||
+ | ||
Use case resumes at step 6. | ||
|
||
[discrete] | ||
=== Use case: Delete person | ||
=== Use case: Assign prisoner to a cell | ||
Actor: police officer (PO) | ||
|
||
*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. PO selects a prisoner | ||
2. PO requests a list of available cells with room available | ||
3. AB shows a list of available cells | ||
4. PO requests to add prisoner to vacant cell | ||
5. AB updates prisoner status and cell status | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. The list is empty. | ||
* 2a. The cell list is empty. | ||
+ | ||
Use case ends. | ||
|
||
* 3a. The given index is invalid. | ||
* 3a. Prisoner is already assigned to a cell. | ||
+ | ||
[none] | ||
** 3a1. AddressBook shows an error message. | ||
** 3a1. AB removes cell tag from prisoner status and removes prisoner from cell status | ||
+ | ||
Use case resumes at step 2. | ||
[discrete] | ||
=== Use case: Get the list of prisoners in a certain cell | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The rendering of this guide shows an indentation error at this point. Please try to fix that. |
||
Actor: police officer (PO) | ||
|
||
*MSS* | ||
|
||
1. PO requests a list of cells | ||
2. AB shows the list of cells | ||
3. PO requests to view the list of prisoners assigned to a specific cell | ||
4. AB shows a list of of prisoners assigned to the cell | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 3a. PO does not have access rights to view the details of the requested cell | ||
+ | ||
Use case ends. | ||
|
||
|
||
_{More to be added}_ | ||
|
||
|
@@ -852,6 +959,10 @@ _{More to be added}_ | |
. Should work on any <<mainstream-os,mainstream OS>> as long as it has Java `1.8.0_60` or higher installed. | ||
. Should be able to hold up to 1000 persons without a noticeable sluggishness in performance for typical usage. | ||
. A user with above average typing speed for regular English text (i.e. not code, not system admin commands) should be able to accomplish most of the tasks faster using commands than using the mouse. | ||
. Should work for 32-bit and 64-bit environments | ||
. System should respond within 2 seconds | ||
. Should have different levels of access for users of different ranks. | ||
. Should have a backup copy at all times in case a user accidentally deletes any information. | ||
|
||
_{More to be added}_ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This phrase should be removed is the list is exhaustively filled. |
||
|
||
|
@@ -864,6 +975,9 @@ Windows, Linux, Unix, OS-X | |
[[private-contact-detail]] Private contact detail:: | ||
A contact detail that is not meant to be shared with others | ||
|
||
[[prisoner]] Prisoner:: | ||
A person has been imprisoned for a crime. | ||
|
||
[appendix] | ||
== Product Survey | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job on correcting this as most of the teams missed it.