-
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][T15-C2] #92
base: master
Are you sure you want to change the base?
[T7][T15-C2] #92
Changes from all commits
7d04b7d
642174f
5f45509
02bdccc
8ce1abf
024a20d
444c0ef
eae735b
6b7b222
cb94a00
dfd2727
6b00295
cc35287
179a84a
9704129
e2a7ef7
f198008
69ca49c
2d2bd96
df6ddd7
795a551
c9e8b7f
75601b7
78ea50a
6834519
94e7cfe
854ec2e
59ed0a2
a8d5418
55dc86f
636ab21
b76ebde
e0048fa
faf1d02
15ea173
663d716
edb9e48
ef32da2
e82cde1
07c59ea
2de4260
16ecd4b
9949524
38b66e6
c8859fc
a9d74ae
e2f1033
2eea875
2d2aa36
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 |
---|---|---|
@@ -1,52 +1,50 @@ | ||
|
||
|
||
# About Us | ||
|
||
We are a team based in the [School of Computing, National University of Singapore](http://www.comp.nus.edu.sg). | ||
|
||
## Project Team | ||
|
||
#### [Damith C. Rajapakse](http://www.comp.nus.edu.sg/~damithch) <br> | ||
<img src="images/DamithRajapakse.jpg" width="150"><br> | ||
**Role**: Project Advisor | ||
#### [Ang Kiang Siang](https://docs.google.com/document/u/1/d/1O3HF7qsh6KVeLesPmcQ0nPxSqhrkJxvS-OA_g-k-two/pub?embedded=true) <br> | ||
<img src="images/angkiangsiang.png" width="150"><br> | ||
Role: Project Mentor<br> | ||
|
||
----- | ||
|
||
#### [Joshua Lee](http://github.com/lejolly) | ||
<img src="images/JoshuaLee.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: UI | ||
|
||
#### [Chankyu Oh](github.com/chankyuoh) <br> | ||
<img src="images/profilePicture.jpg" width="150"><br> | ||
Role: Code Quality Manager <br> | ||
Responsibilities: Look after code quality, ensures adherence to coding standards, etc. | ||
Deliverables and deadlines: Ensure project deliverables are done on time and in the right format. | ||
|
||
----- | ||
|
||
#### [Leow Yijin](http://github.com/yijinl) | ||
<img src="images/LeowYijin.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: Data | ||
#### [Leow Zheng Yu](http://github.com/zhengyu92) | ||
<img src="images/ZhengYu.jpg" width="150"><br> | ||
Role: Integration Manager <br> | ||
Responsibilities: In charge of versioning of the code, maintaining the code repository, integrating various parts of the software to create a whole. | ||
|
||
----- | ||
|
||
#### [Martin Choo](http://github.com/m133225) | ||
<img src="images/MartinChoo.jpg" width="150"><br> | ||
Role: Developer <br> | ||
Responsibilities: Dev Ops | ||
#### [Niveetha](http://github.com/niveetha) | ||
<img src="images/PD1.jpg" width="150"><br> | ||
Role: Team Lead<br> | ||
Responsibilities: Responsible for overall project coordination. | ||
|
||
----- | ||
|
||
#### [Thien Nguyen](https://github.com/ndt93) | ||
Role: Developer <br> | ||
Responsibilities: Threading | ||
|
||
----- | ||
#### [Henderson](http://github.com/takukou) | ||
<img src="images/hendersenlam.jpg" width="150"><br> | ||
Role: Testing Manager <br> | ||
Responsibilities: Ensures the testing of the project is done properly and on time. | ||
|
||
#### [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 |
---|---|---|
|
@@ -256,26 +256,106 @@ 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 an event, a task and a floating task | so that I can record tasks that need to be done some day | ||
`* * *` | user | list all items | view all entries and dates that are due sorted by date and time and know what needs to be done next | ||
`* * *` | user | edit an item | update entries that are outdated | ||
`* * *` | user | delete an item | remove entries that I no longer need | ||
`* * *` | user | undo an operation | have read-consistency and data changes should not be visible to queries that started running before committing them | ||
`* * *` | advanced user | use flexible commands | type a command faster | ||
`* * *` | user | find an item by name | locate details of item without having to go through the entire list | ||
`* * *` | user | track items | keep track of items that have been completed/uncompleted to filter items based on completion | ||
`* * *` | user | path items | save my files on shared folders for accessibility on other devices | ||
`* *` | user | clear all items | clear all my list in the scheduler | ||
`*` | user | exit the program | exit the program conveniently | ||
|
||
{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) | ||
(For all use cases below, the **System** is the `Scheduler` and the **Actor** is the `user`, unless specified otherwise) | ||
|
||
#### Use case: Delete person | ||
#### Use case: Open Help documentation | ||
|
||
**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 for help documentation | ||
2. Scheduler opens window displaying all program commands and its functionality <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
#### Use case: Add item | ||
|
||
**MSS** | ||
|
||
1. User calls the add function | ||
2. Scheduler displays added item <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
2a. The user adds an events | ||
|
||
> 2a1. Scheduler displays item as a calendar <br> | ||
|
||
2b. The user adds a task with a deadline | ||
|
||
> 2b1. Scheduler displays item in a list with a date <br> | ||
|
||
2c. The user adds a task | ||
|
||
> 2c1. Scheduler displays item in a list <br> | ||
|
||
> Use case ends | ||
|
||
#### Use case: List items | ||
|
||
**MSS** | ||
|
||
1. User calls the list function | ||
2. Scheduler displays all items as a list <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
2a. The list is empty | ||
|
||
> 2a1. Scheduler displays empty list <br> | ||
|
||
#### Use case: Edit items | ||
|
||
**MSS** | ||
|
||
1. User requests to list items or find item | ||
2. Scheduler shows a list of items or the item | ||
3. User calls the edit function | ||
4. User types in index of item and inputs new values for the item | ||
5. Scheduler displays updated list of items <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. Is displaying the list of items necessary? Or just the details of the updated item will be better. |
||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
4a. The item is an event | ||
|
||
> 4a1. The function requires an input “'NAME OF EVENT' 'START DATE AND TIME' 'END DATE AND TIME'" <br> | ||
|
||
4b. The item is a task with a deadline | ||
|
||
> 4b1. The function requires an input “'NAME OF TASK' 'DEADLINE'” <br> | ||
|
||
4c. The item is a floating task | ||
|
||
> 4c1. The function requires an input “'NAME OF TASK'” <br> | ||
|
||
#### Use case: Delete item | ||
|
||
**MSS** | ||
|
||
1. User requests to list items or find item | ||
2. Scheduler shows a list of items or the item | ||
3. User requests to delete a specific item in the list based on the index | ||
4. Scheduler deletes the item | ||
5. Scheduler displays updated list of items <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
@@ -284,19 +364,101 @@ Use case ends. | |
|
||
> Use case ends | ||
|
||
3a. The given index is invalid | ||
5a. The list is empty | ||
|
||
> 3a1. AddressBook shows an error message <br> | ||
Use case resumes at step 2 | ||
> Use case ends | ||
|
||
{More to be added} | ||
#### Use case: Undo action | ||
|
||
**MSS** | ||
|
||
1. User requests to undo most recently executed action | ||
2. System reverts back to previous state in history | ||
3. Scheduler displays updated list <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
1a. The scheduler is new and no previous actions were executed | ||
|
||
> Use case ends | ||
|
||
#### Use case: Find item | ||
|
||
**MSS** | ||
|
||
1. User calls the find function | ||
2. Scheduler displays the items that are word related with no case sensitive | ||
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. Seems ambiguous here. What is word related? |
||
<br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
2a. The list is empty | ||
|
||
> 2a1. Scheduler displays empty list <br> | ||
|
||
#### Use case: Track items | ||
|
||
**MSS** | ||
|
||
1. User calls the track function | ||
2. Scheduler displays the items which are done and yet to be done <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
2a. The list is empty | ||
|
||
> 2a1. Scheduler displays empty list <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. More thinking through is required for this function. What does it mean by tracking items which are done and which are yet to be done? You can consider functions to allow the user to mark a task to be completed. And how should a user list completed/uncompleted task? |
||
#### Use case: Path item | ||
|
||
**MSS** | ||
|
||
1. User calls the path function | ||
2. Scheduler creates a folder in specified path <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
2a. The folder does not exist | ||
|
||
> 2a1. Scheduler will create a folder <br> | ||
|
||
#### Use case: Clear items | ||
|
||
**MSS** | ||
|
||
1. User requests to clear items | ||
2. Scheduler deletes all items | ||
3. Scheduler displays empty list <br> | ||
Use case ends. | ||
|
||
**Extensions** | ||
|
||
1a. The list is empty | ||
|
||
> Use case ends | ||
|
||
#### Use case: Exit | ||
|
||
**MSS** | ||
|
||
1. User requests to exit program | ||
2. Scheduler exits program <br> | ||
Use case ends. | ||
|
||
## 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. Synchronization capability to other task management sites (ex: Google calendar) | ||
6. Back-up data that can be used to recover if original copy gets deleted | ||
7. Able to migrate all items into .txt file | ||
|
||
|
||
{More to be added} | ||
|
||
|
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.
Check out the handbook on some possible roles and responsibilities other than developer. :)