-
Notifications
You must be signed in to change notification settings - Fork 109
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
[T7][F11-C4] #96
base: master
Are you sure you want to change the base?
[T7][F11-C4] #96
Changes from 14 commits
2131dba
9f4b698
d4e1086
9270a04
698f358
9acec7e
4068cac
86968f3
8ae38b0
dfc67cc
f1f7921
56f91ab
9917db5
f21c35c
b9306ca
31da7ea
849f765
d4e0515
5221b51
d00451d
c612e64
2f7646f
3e40273
833cc40
a74d79b
ee1302f
ddcd798
1ef944f
e5b8311
572e4ad
bf655b8
b58b0d3
21c7717
11c83e4
7a624b6
7ddee01
061bb2b
1bf3f8d
43613c5
f3a0302
402d63c
c488220
468f955
c17baed
d467c48
5c24a05
5ba5412
d9b30eb
e66211c
526fea3
f75986a
2da2d6e
4d96ff2
72ebdea
3241225
7dc31f3
8bb6a7d
0744a56
55fbf43
3e4e5c1
4f6a882
b267787
af2cf5a
6a28113
439a015
446b3ab
ed821e0
af26e92
8aa53f3
f039d41
36cb628
48d9fd6
44992f9
e78f1c2
af6e6a3
996f809
1a5b9c6
b51caaa
3962aaf
a62da4d
e1a67b5
cf35f42
f00ffb4
8d01027
5912ae6
8480b9d
999f236
994b5e8
8e08b93
ce0f972
e29def2
591e0bd
5889ed2
449c37c
ad05bfa
dcf6031
317508f
2b1fa14
53cce1c
57d38fd
4f26fe7
62a39c2
d25f97c
b50d2a9
56d496a
c64f851
ecbffbf
a515d2d
cbe5ed3
90f1338
25e7945
6e06daf
47e330d
0b8bd1f
b71ba7f
705961b
f64bc0b
fc1a0bf
02caec4
b29ff3d
9f96716
ab5977e
405b56d
febaff5
543cdda
ba16534
907779e
51bd718
2b50850
3c886c7
7e45cc8
804b179
e3b1ca6
7f95324
cd8aaea
731b5d4
de99651
e553ccf
6f48262
9b2ffa9
b4ee1bd
be8b474
8f39f3c
035bd12
418ed9b
b87342b
04bc84f
54ac42b
b31e801
034ec1c
811949c
ab3ff43
d8eda01
86916bb
0537856
3dde6d8
c147d9c
4f2bb0e
6c580fe
59475b2
d1b2630
046dfbe
4d235b6
db38029
8af9442
0f944e0
7cc7cba
e1697a0
423e6d9
aebf568
88b7cae
657c594
20eb464
3548e8b
6aeafc0
30c973a
e914dbc
3946c69
54c6153
f857c7b
d8d87a9
2d7f6ec
6e479dd
1e38a7b
df3cc7f
af41ef1
0fb07ef
3af13c3
38e3ea3
63ada45
feffb9a
48b2e4f
3ea7049
fef31b9
53f26fd
2b74ca4
1486527
97d25d2
ffaeec8
33413df
fb934cf
5506e94
7992b8a
e021a7d
a2e6d64
48b331d
ede4e95
fd00d11
592c4ae
fc33f5a
4d76c69
afe942d
9b3d0ae
d9fa182
7b16c21
fff8517
ffb47ab
a7790fb
d976904
f7c9bfd
09afcc1
0ce1724
94984fb
842bc52
7496dd9
2382f20
c3d7d71
cdd4eee
6b423ff
9cfecca
daefd18
0223393
4b94b52
47aeb08
543f1ba
d7089e7
3108317
f6c402a
5713bee
b76c5cc
d6be7e6
d2b3fef
ed0bffe
3f1d50d
720b1d5
89b4585
0f96cac
2b0d541
3e9d233
26a6412
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 |
---|---|---|
@@ -0,0 +1,12 @@ | ||
{ | ||
"1.0": { | ||
"project_path": ":", | ||
"project_dir": "C:\\Users\\Ming Yi\\Documents\\CS2103\\main", | ||
"connection_project_dir": "C:\\Users\\Ming Yi\\Documents\\CS2103\\main", | ||
"connection_gradle_user_home": null, | ||
"connection_gradle_distribution": "GRADLE_DISTRIBUTION(WRAPPER)", | ||
"connection_java_home": null, | ||
"connection_jvm_arguments": "", | ||
"connection_arguments": "" | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
{ | ||
"appTitle" : "Daily Planner", | ||
"logLevel" : "INFO", | ||
"userPrefsFilePath" : "preferences.json", | ||
"addressBookFilePath" : "data/addressbook.xml", | ||
"addressBookName" : "MyDailyPlanner" | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,52 +1,32 @@ | ||
# About Us | ||
|
||
We are a team based in the [School of Computing, National University of Singapore](http://www.comp.nus.edu.sg). | ||
We are a team of 3 Year 2 NUS students from SoC. | ||
|
||
## Project Team | ||
|
||
#### [Damith C. Rajapakse](http://www.comp.nus.edu.sg/~damithch) <br> | ||
<img src="images/DamithRajapakse.jpg" width="150"><br> | ||
**Role**: Project Advisor | ||
#### [Praveer Tewari] (http://github.com/praveer922) <br> | ||
<img src="images/PraveerTewari.jpg" width="150"><br> | ||
**Role**: Team lead, in charge of Model component | ||
|
||
----- | ||
|
||
#### [Joshua Lee](http://github.com/lejolly) | ||
<img src="images/JoshuaLee.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: UI | ||
#### [Teo Ming Yi](http://github.com/myteo) | ||
<img src="images/MingYi.jpg" width="150"><br> | ||
Role: Testing, Integration, in charge of Logic component | ||
|
||
----- | ||
|
||
#### [Leow Yijin](http://github.com/yijinl) | ||
<img src="images/LeowYijin.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: Data | ||
#### [Zhuang Yufeng](http://github.com/rainwindy) | ||
<img src="images/Yufeng.jpg" width="150"><br> | ||
Role: Code quality, Scheduling and Tracking, in charge of UI component | ||
|
||
----- | ||
|
||
#### [Martin Choo](http://github.com/m133225) | ||
<img src="images/MartinChoo.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: Dev Ops | ||
#### [Muthu Kumar Chandrasekaran] (https://github.com/cmkumar87) | ||
<img src="images/MuthuKumar.JPG" width="150"><br> | ||
Role: Mentor | ||
|
||
----- | ||
|
||
#### [Thien Nguyen](https://github.com/ndt93) | ||
Role: Developer <br> | ||
Responsibilities: Threading | ||
|
||
----- | ||
|
||
#### [You Liang](http://github.com/yl-coder) | ||
<img src="images/YouLiang.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: UI | ||
|
||
----- | ||
|
||
# Contributors | ||
|
||
We welcome contributions. See [Contact Us](ContactUs.md) page for more info. | ||
|
||
* [Akshay Narayan](https://github.com/se-edu/addressbook-level4/pulls?q=is%3Apr+author%3Aokkhoy) | ||
* [Sam Yong](https://github.com/se-edu/addressbook-level4/pulls?q=is%3Apr+author%3Amauris) |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,7 +9,7 @@ | |
* [Appendix B: Use Cases](#appendix-b--use-cases) | ||
* [Appendix C: Non Functional Requirements](#appendix-c--non-functional-requirements) | ||
* [Appendix D: Glossary](#appendix-d--glossary) | ||
* [Appendix E : Product Survey](#appendix-e-product-survey) | ||
* [Appendix E: Product Survey](#appendix-e--product-survey) | ||
|
||
|
||
## Setting up | ||
|
@@ -273,26 +273,90 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (un | |
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 | ||
`* * *` | user | add a new person | | ||
`* * *` | user | delete a person | remove 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](#private-contact-detail) by default | 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 | ||
`* * *` | user | add new task | find out tasks are urgently due | ||
`* * *` | user | set deadlines | be reminded of my due dates for my respective tasks | ||
`* * *` | user | delete a task | remove entries that are completed | ||
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. You may simply want to mark tasks that were completed instead of deleting them. You could also add a low priority enhancement that allows you to view the completed tasks datewise. |
||
`* * *` | user | find a task by name | search for a task without having to go through the entire list | ||
`* * *` | user | edit a task and its particulars | update instantly if there are any changes in the task | ||
`* *` | user | view the tasks | take a quick glance or have my tasks presented according to my needs and preference | ||
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. narrow the scope of this feature. for e.g., view tasks that are due today or the next 3 days or by priority if the user is setting one. Right now you seem to want to cover everything which is too much for the first few phases of development. |
||
`* *` | user | set recurring tasks | save the hassle of contstantly updating my regular activities | ||
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. feature spec not clear. I think you mean 'Set recurring tasks as Favourites' |
||
`*` | advanced user | use shortcuts | key in my commands quicker and easier | ||
|
||
{More to be added} | ||
|
||
## Appendix B : Use Cases | ||
|
||
(For all use cases below, the **System** is the `AddressBook` and the **Actor** is the `user`, unless specified otherwise) | ||
|
||
#### Use case: Delete person | ||
#### Use case: Add task | ||
|
||
**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 <br> | ||
1. User requests to add task | ||
2. Task Manager adds task and displays the new list of tasks | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
1a. Required information for task missing | ||
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. Have you identified what are the mandatory fields to add a task? You should know this by now. |
||
|
||
>1a1. Task Manager shows an error message<br> | ||
Use case resumes back to step 1 | ||
|
||
1b. Timeslot for task is already filled | ||
>1b1. Task manager informs user that timeslot is already filled <br> | ||
Use case resumes at step 1 | ||
|
||
|
||
#### Use case: Delete task | ||
|
||
**MSS** | ||
|
||
1. User requests to view tsks for specific time period | ||
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. fix typo. tsks --> tasks. |
||
2. Task Manager displays all tasks during time period | ||
3. User requests to delete a specific task in the list | ||
4. Task Manager asks for confirmation on task to delete | ||
5. Task Manager deletes the task | ||
Use case ends | ||
|
||
**Extensions** | ||
|
||
2a. The list is empty | ||
>Use case ends | ||
|
||
3a. Given index is invalid | ||
>3b1. Task manager shows error message <br> | ||
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. Not clear. What do you mean by index? Neither the user story nor MSS mention any index! |
||
Use case resumes at step 2 | ||
|
||
4a. If deleting a recurring task | ||
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 an advanced feature. Don't push it in the basic delete. |
||
|
||
>4a1. Task manager prompts user to choose between deleting task on that specific day or delete all recurring tasks | ||
> | ||
>4a2. User enters choice | ||
> | ||
>4a3. Task manager deletes accordingly<br> | ||
User case ends | ||
|
||
#### Use case: View task | ||
|
||
**MSS** | ||
|
||
1. User requests to view tasks for specific time period and a certain format | ||
2. Task Manager displays all tasks during time period in that format | ||
|
||
Use case ends | ||
|
||
|
||
#### Use case: Edit task | ||
|
||
**MSS** | ||
|
||
1. User requests to list tasks for a specific time period | ||
2. Task Manager displays all tasks during time period | ||
3. User requests to edit a specific task in the list | ||
4. Task Manager asks for confirmation on task to be edited | ||
5. User confirms the changes | ||
6. Task manager makes the edits <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
@@ -303,17 +367,30 @@ Use case ends. | |
|
||
3a. The given index is invalid | ||
|
||
> 3a1. AddressBook shows an error message <br> | ||
Use case resumes at step 2 | ||
> 3a1. Task Manager shows an error message <br> | ||
> Use case resumes at step 2 | ||
|
||
{More to be added} | ||
4a. If editing a recurring task | ||
|
||
> 4a1. Task manager prompts user to choose between editing task on that specific day or deleting all the recurring tasks | ||
> | ||
> 4a2. User enters choice | ||
> | ||
> 4a3. Task manager edits task accordingly | ||
|
||
> Use case ends | ||
|
||
|
||
|
||
<br> | ||
|
||
## Appendix C : Non Functional Requirements | ||
|
||
1. Should work on any [mainstream OS](#mainstream-os) as long as it has Java `1.8.0_60` or higher installed. | ||
2. Should be able to hold up to 1000 persons. | ||
3. Should come with automated unit tests and open source code. | ||
4. Should favor DOS style commands over Unix-style commands. | ||
5. Task input should not be more than 200 characters to be concise | ||
|
||
{More to be added} | ||
|
||
|
@@ -329,5 +406,22 @@ Use case ends. | |
|
||
## Appendix E : Product Survey | ||
|
||
{TODO: Add a summary of competing products} | ||
| | Wunderlist | Google | Todoist | | ||
|---|---|---|---| | ||
| Strengths | <ul><li>Elegant and simple</li><li>CLI input but graphical display</li><li>Add notes and timestamps to tasks</li><li>Ability to create email with list of tasks automatically</li><li>Organize tasks in different ‘lists’</li></ul> | <ul><li>Quick add feature to minimize use of mouse</li><li>Ability to allocate tasks to specific timeslots</li><li>Ability to view free timeslots</li><li>Ability to set reminders</li></ul> | <ul><li>CLI input but graphical display</li><li>Keyboard shortcuts to minimize use of mouse</li><li>Ability to set deadlines and reminders for tasks</li><li>Ability to set priorities for tasks to decide which task to do next</li></ul> | | ||
| Unnecessary features | <ul><li>Cross-platform functionality</li><li>Syncs between devices</li><li>Collaboration with others</li></ul> | <ul><li>Collaboration with others</li></ul> |<ul><li>Cross-platform functionality</li><li>Collaboration with others</li></ul> | | ||
| Weaknesses |<ul><li>No way to allocate tasks to a specific timeslot</li><li>No way to view free timeslots</li></ul>|<ul><li>Does not provide a desktop software for easy summoning using keyboard shortcuts</li><li>No easy way to “block” multiple timeslots when the exact timing of a task is uncertain and release the blocked slots when the time is finalized</li><li>Not good with capturing tasks that need to be done before a specific date/time, or after a specific date/time, and items without specific times</li><li>No support for offline access</li></ul>|<ul><li>No way to allocate tasks to a specific timeslot</li><li>No way to view free timeslots</li></ul>| | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
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.
why is deadlines a separate feature? User can optionally add a deadline when creating a task.