-
Notifications
You must be signed in to change notification settings - Fork 110
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
[W7.7][T10-B1] AcquaiNote #70
base: master
Are you sure you want to change the base?
Changes from 25 commits
d5c276e
c8699f6
865e823
a536a2b
d004ecd
8f7ec4b
265e2fa
ea8c7de
d1e18ff
9dc41eb
ea73f3b
d79ca10
463cf95
9e2ed9b
ae823b0
937b22b
d565ce9
358947e
c6ca876
9138485
351852e
64ab6bf
47714d6
f2f428d
0f3a3b6
083aede
b8e6e67
6c8820c
5571bcc
c1ace68
f130625
0a86db5
5b3055c
29efbf8
a2679e8
055d0c9
3065fa1
2311676
e3c12b8
f4a52f5
d66d6f9
054d974
0746e70
ca022d6
a423705
75c32f0
73b3609
1a67d1c
539c3f0
0bb0164
22bb411
e34e914
11cf879
b5cdcdf
d01fd28
8409377
2772f12
30192ec
fb00e9e
c6d9e57
679d589
79c8170
095d6a0
87be695
ae12738
0120f37
13c52bd
42a8a07
2e7e048
7f3dcb9
07547de
fa426e3
e43b6ab
8060012
dba6ce9
3c4fc2a
69e73cf
c01104a
02729f7
ad30a28
813fea5
286057a
8059b85
73fd6f7
1923d0f
95b7586
4209401
3a94973
17610aa
cdfd876
c44af62
765f46d
dd181be
39d3505
c03228e
e2bea7d
95d0ff9
d34049b
0bb4f95
5635f40
e23bf7f
1eca771
a30defe
3e7d80a
f165170
9a85034
997a19a
742430e
79de445
de6e7e2
5a57a09
45cd09e
d380077
c687637
3a1ee4c
83ff68e
cafe957
66b0790
ce294d0
ffa8d3c
6ed9967
234bd87
4bb4009
298be3d
3b3140b
b4a4f21
3d7f024
d639625
0fd0432
81825ba
7c65478
7038851
113db10
87b2147
819a1eb
00d43b5
5704e3d
82285ff
f233816
e75051b
abdc83d
195c1c2
43bb9ed
9a79839
6786e46
26202e4
b7c5907
5b946e0
379b3a0
bccb45b
be257ae
0ff8a2e
7158e31
6f76247
d52e195
15b6d34
a2b765d
227ca42
8bf6fab
f722aea
b9c9cca
f900783
0a0c835
97a7125
8a7c0ab
9b16917
679294b
0a331d2
9b83e6b
48bd902
6fe70f4
f48d0cb
047a198
7b92e56
78a98fb
2fbdd84
c87613e
5e33b7a
59af94f
38b611d
fea187d
d5ba22b
3906e4b
2897709
cc4f6d6
a1f0a89
4b1d20d
f81cd4b
4a90f2a
b4560d8
4731513
293ed33
824361d
e9ac256
501f8d6
7b46a4a
a276675
121b2bb
ee1694b
9f3b72f
afe0b6a
18c3565
8ec7f9b
6507460
a141beb
3b2cbbc
957c65a
4e663ab
cc3237e
2ff6027
e1a89a7
f744711
3e4011b
ba45262
ef5a814
fc66d29
bf23e61
b514138
b58d078
69db0fe
d836583
22ae95f
90bbd1d
1e1bd27
60a65aa
597a96f
90ce45e
4cda218
85d52cb
eaab96a
ebb8220
4241a2c
b7f234b
f81a95e
2b76c29
e8967b9
c234d83
f9ebcc1
bddd037
050be77
9c73223
18416c7
8b592f4
70a3cf0
09a71db
faf6696
e16ce3a
41a8f10
91153f2
5b75d32
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,7 +10,7 @@ ifdef::env-github[] | |
:note-caption: :information_source: | ||
endif::[] | ||
ifdef::env-github,env-browser[:outfilesuffix: .adoc] | ||
:repoURL: https://github.com/se-edu/addressbook-level4/tree/master | ||
:repoURL: https://github.com/CS2103-T10-B1/addressbook-level4/tree/master | ||
|
||
By: `Team SE-EDU` Since: `Jun 2016` Licence: `MIT` | ||
|
||
|
@@ -729,8 +729,26 @@ Priorities: High (must have) - `* * \*`, Medium (nice to have) - `* \*`, Low (un | |
|
||
|`* * *` |user |find a person by name |locate details of persons without having to go through the entire list | ||
|
||
|`* * *` |user |add details to a certain contact after adding them |have more information available afterwards | ||
|
||
|`* * *` |user |be notified if I were to delete a contact |I don’t mistakenly delete a contact | ||
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 is more like a detail that should be recorded in the use case of |
||
|
||
|`* * *` |user |have a more flexible addition of contact |add contacts without address or email as compulsory elements | ||
|
||
|`* * *` |user |show list of favourite contacts |quickly find people I contact often | ||
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. Don't forget to add a user story to add contacts into favourite contacts. |
||
|
||
|`* * *` |user |be notified when entering user with same name |avoid confusion in the future | ||
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. More like a use case. |
||
|
||
|`* *` |user |hide link:#private-contact-detail[private contact details] by default |minimize chance of someone else seeing them by accident | ||
|
||
|`* *` |user |use link:#right-click-menu[right click menu] for most link:#common-commands[common commands] |no typing is required and makes my life easy | ||
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. Remember that the project defines that the user is a typist. |
||
|
||
|`* *` |user |show contact according to categories of labels |access certain group by label | ||
|
||
|`* *` |user |copy email address to clipboard |paste it into my email application’s recipients field | ||
|
||
|`* *` |user |have wrong command to be highlighted |change it immediately | ||
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. Should be in NFR. |
||
|
||
|`*` |user with many persons in the address book |sort persons by name |locate a person easily | ||
|======================================================================= | ||
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. Overall, the user stories follow the correct form. However, some are not user stories, instead they should be in use case or NFR. Please update them accordingly. Also, don't forget to define the target user. |
||
|
||
|
@@ -767,6 +785,255 @@ Use case ends. | |
+ | ||
Use case resumes at step 2. | ||
|
||
[discrete] | ||
=== Use case: Add person details | ||
|
||
*MSS* | ||
|
||
1. User requests to create a contact with more details including birthday, home call number and so on | ||
2. User types in these details | ||
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. a use case should show back and forth interaction between user and the system. Thus, it's incorrect to have consecutive user or system interactions. |
||
3. AddressBook adds a new contact with these details | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. User types with wrong format. | ||
+ | ||
[none] | ||
** 2a1. AddressBook shows an error message. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Use right click menu | ||
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. Would be better if you write the use cases for |
||
|
||
*MSS* | ||
|
||
1. User requests to delete or edit one person | ||
2. User right clicks that contact | ||
3. AddressBook displays a menu with delete and edit options | ||
4. User choose delete option | ||
5. AddressBook delete that contact | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 4a. User choose edit option. | ||
+ | ||
[none] | ||
** 4a1. AddressBook shows a dialogue for editing. | ||
** 4a2. User types in information. | ||
** 4a3. AddressBook saves these information. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Show contact according to categories of labels | ||
|
||
*MSS* | ||
|
||
1. User requests to show all persons with a specific label | ||
2. AddressBook shows a list a person | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 1a. The label does not exist. | ||
+ | ||
[none] | ||
** 1a1. AddressBook shows a empty list. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Delete confirmation | ||
|
||
*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 displays a dialogue window asking user to confirm deletion | ||
5. User confirms deletion request | ||
6. AddressBook deletes the person | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 1a. The given index is invalid. | ||
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. Does listing persons require index? |
||
+ | ||
[none] | ||
** 1a1. AddressBook shows an error message. | ||
+ | ||
Use case ends. | ||
|
||
[none] | ||
* 3a. The given index is invalid. | ||
+ | ||
[none] | ||
** 3a1. AddressBook shows an error message. | ||
+ | ||
Use case resumes at step 2. | ||
|
||
[none] | ||
* 5a. User cancels deletion. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Flexible contact addition | ||
|
||
*MSS* | ||
|
||
1. User requests to add a person | ||
2. User inputs desired details, eg: address, email, birthday, etc... | ||
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. Step 1 and 2 can be combined into |
||
3. AddressBook adds the person to the list | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. The user input is invalid. | ||
+ | ||
[none] | ||
** 2a1. AddressBook shows an error message. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Copy email address | ||
|
||
*MSS* | ||
|
||
1. User requests to list persons | ||
2. AddressBook shows a list of persons | ||
3. User requests to copy a specific person’s email address to clipboard | ||
4. AddressBook copy the person’s email address to clipboard | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. The list is empty. | ||
+ | ||
Use case ends. | ||
|
||
* 3a. The specified person’s email address is empty. | ||
+ | ||
[none] | ||
** 3a1. AddressBook shows an error message. | ||
+ | ||
Use case resumes at step 2. | ||
|
||
[discrete] | ||
=== Use case: Favourite contacts | ||
|
||
*MSS* | ||
|
||
1. User requests to list commonly contacted persons | ||
2. AddressBook saves and displays list without command | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 1a. The list is empty. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Highlight contacts with same name | ||
|
||
*MSS* | ||
|
||
1. User requests to add a person | ||
2. AddressBook notify if name entered matches any name in list | ||
3. User edit the name of contact | ||
4. AddressBook removes the notification | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Highlight invalid command | ||
|
||
*MSS* | ||
|
||
1. User inputs command | ||
2. AddressBook highlights invalid command | ||
3. User edits command | ||
4. Addressbook removes highlight | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. Command entered is valid. | ||
+ | ||
Use case ends. | ||
|
||
[discrete] | ||
=== Use case: Add photos to contacts | ||
|
||
*MSS* | ||
|
||
1. User requests to list persons | ||
2. AddressBook shows a list of persons | ||
3. User picks a person | ||
4. User requests to add a photo to contacts | ||
5. AddressBook adds photo to contact | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 2a. The list is empty. | ||
+ | ||
Use case ends. | ||
|
||
* 4a. Contact already has a photo. | ||
+ | ||
[none] | ||
** 4a1. AddressBook displays message “already has a photo”. | ||
+ | ||
** 4a2. AddressBook displays a dialogue window asking user if user wants to change the current photo. | ||
+ | ||
Use case resumes at step 5. | ||
|
||
[discrete] | ||
=== Use case: Password feature | ||
|
||
*MSS* | ||
|
||
1. User runs the application | ||
2. AddressBook displays a window asking user to input password | ||
3. User inputs password | ||
4. AddressBook displays main window | ||
+ | ||
Use case ends. | ||
|
||
*Extensions* | ||
|
||
[none] | ||
* 3a. User inputs wrong password. | ||
+ | ||
[none] | ||
** 3a1. AddressBook displays message “Wrong password”. | ||
+ | ||
Use case resumes at step 2. | ||
|
||
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. Overall, it's good that you write use cases for each user stories, but some of them shouldn't be a user stories and also some use cases are wrong. Please check them again and update it accordingly. |
||
{More to be added} | ||
|
||
[appendix] | ||
|
@@ -775,6 +1042,10 @@ Use case resumes at step 2. | |
. Should work on any link:#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 be able to sort within 1 second. | ||
. A user with average software using skills should be able to understand the user interface within 20 minutes. | ||
. A new user who is able to comprehend simple english can use the application within 20 minutes. | ||
. Should only store data locally unless user shares with other applications. | ||
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. Good, all NFRs are specific. |
||
|
||
{More to be added} | ||
|
||
|
@@ -795,6 +1066,20 @@ Private contact detail | |
A contact detail that is not meant to be shared with others | ||
.... | ||
|
||
[[right-click-menu]] | ||
Right click menu | ||
|
||
.... | ||
A drop down menu that contains various commands | ||
.... | ||
|
||
[[common-commands]] | ||
Common commands | ||
|
||
.... | ||
edit, delete | ||
.... | ||
|
||
[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.
Isn't it more like
edit
?