Skip to content

Commit ee982a9

Browse files
Merge pull request #197 from demitycho/UG-DG-docs-1.5
Final
2 parents 4ab1cae + b0cef8d commit ee982a9

File tree

4 files changed

+130
-26
lines changed

4 files changed

+130
-26
lines changed

docs/DeveloperGuide.adoc

Lines changed: 118 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -416,7 +416,9 @@ Certain properties of the application can be controlled (e.g App name, logging l
416416
// tag::dataencryption[]
417417
=== [Proposed] Data Encryption
418418

419-
_{Explain here how the data encryption feature will be implemented}_
419+
A password must be implemented, used as secret key. Using `Java Cryptography Extension (JCE)` library, we can encrypt text in the xml files. +
420+
First we save as XML files, then we encrypt the text data in the XML to encrypted text, storing it somewhere, then deleting the XML file. +
421+
The reverse process is decrypting the encrypted data to XML, then reading data from there.
420422

421423
// end::dataencryption[]
422424

@@ -1313,15 +1315,15 @@ Priorities: High (must have) - `* * *`, Medium (nice to have) - `* *`, Low (unli
13131315
[appendix]
13141316
== Use Cases
13151317

1316-
(For all use cases below, the *System* is the `Scheduler` and the *Actor* is the `user`, unless specified otherwise)
1318+
(For all use cases below, the *System* is `Codeducator` and the *Actor* is the `user`, unless specified otherwise)
13171319

13181320
[discrete]
13191321
=== Use case: Delete student
13201322

13211323
*MSS*
13221324

13231325
1. User requests to list students
1324-
2. Schedule shows a list of students
1326+
2. Codeducator shows a list of students
13251327
3. User requests to delete a specific student in the list
13261328
4. Schedule deletes the student
13271329
+
@@ -1337,37 +1339,36 @@ Use case ends.
13371339
* 3a. The given index is invalid.
13381340
+
13391341
[none]
1340-
** 3a1. AddressBook shows an error message.
1342+
** 3a1. Codeducator shows an error message.
13411343
+
13421344
Use case resumes at step 2.
13431345

13441346
[discrete]
1345-
=== Use case: Delete student
1347+
=== Use case: Adding a lesson
13461348

13471349
*MSS*
13481350

1349-
1. User requests to add a lesson
1350-
2. Scheduler shows a list of free slots
1351-
3. User requests to add a lesson to a slot
1352-
4. Scheduler adds that lesson to that slot
1351+
. Schedule panel shows lessons and timeslots
1352+
. User requests to add a lesson
1353+
. Codeducator adds that lesson to that slot
13531354
+
13541355
Use case ends.
13551356

13561357
*Extensions*
13571358

13581359
[none]
1359-
* 2a. The timetable is empty.
1360+
* 2a. The schedule is empty.
13601361
+
13611362
Use case ends.
13621363
[none]
1363-
* 2b. The timetable is full.
1364+
* 2b. The schedule is full. (Any attempt to add lessons will result in clashes)
13641365
+
1365-
** 3b1. Scheduler shows an error message.
1366+
** 3b1. Codeducator shows an error message.
13661367

1367-
* 3a. The given index is invalid.
1368+
* 3a. The given student index is invalid.
13681369
+
13691370
[none]
1370-
** 3a1. Scheduler shows an error message.
1371+
** 3a1. Codeducator shows an error message.
13711372
+
13721373
Use case resumes at step 2.
13731374

@@ -1489,6 +1490,106 @@ Use case resumes at step 3.
14891490
+
14901491
Use case ends.
14911492

1493+
[discrete]
1494+
=== Use case: Deleting a lesson
1495+
1496+
*MSS*
1497+
1498+
. Schedule panel shows lessons and timeslots.
1499+
. User requests to delete a lesson identified by index.
1500+
. Codeducator deletes that lesson from that slot.
1501+
+
1502+
Use case ends.
1503+
1504+
*Extensions*
1505+
1506+
[none]
1507+
* 2a. The schedule is empty.
1508+
+
1509+
Use case ends.
1510+
[none]
1511+
+
1512+
* 2b. The given lesson index is invalid.
1513+
** 2b1. Codeducator shows an error message.
1514+
+
1515+
Use case resumes at step 2.
1516+
1517+
[discrete]
1518+
=== Use case: Logging in
1519+
1520+
*MSS*
1521+
1522+
. User requests to log in to Google Accounts.
1523+
. A window opens in user's default browser.
1524+
. User logs in to Google Accounts.
1525+
. User authorizes Codeducator.
1526+
. Codeducator shows login success message
1527+
+
1528+
Use case ends.
1529+
1530+
*Extensions*
1531+
1532+
[none]
1533+
* 3a. User enters wrong password too many times.
1534+
** 3a1. Codeducator goes into timeout after 45 seconds.
1535+
+
1536+
Use case ends.
1537+
[none]
1538+
+
1539+
* 3b. User closes his browser window.
1540+
** 3b1. Codeducator goes into timeout after 45 seconds.
1541+
+
1542+
* 4a. User does not authorise Codeducator.
1543+
** 4a1. Codeducator shows authentication denied error.
1544+
+
1545+
Use case ends.
1546+
1547+
[discrete]
1548+
=== Use case: Logging out
1549+
1550+
*MSS*
1551+
1552+
. User requests to log out of Google accounts in Codeducator
1553+
. Codeducator shows logout success message
1554+
+
1555+
Use case ends.
1556+
1557+
*Extensions*
1558+
1559+
[none]
1560+
* 1a. User was not logged in
1561+
** 1a1. Codeducator goes into timeout after 45 seconds.
1562+
+
1563+
Use case ends.
1564+
[none]
1565+
+
1566+
* 3a. User closes his browser window
1567+
** 3a1. Codeducator goes into timeout after 45 seconds.
1568+
+
1569+
* 4a. User does not authorise Codeducator
1570+
** 4a1. Codeducator shows authentication denied error
1571+
+
1572+
Use case ends.
1573+
1574+
[discrete]
1575+
=== Use case: Syncing data
1576+
1577+
*MSS*
1578+
1579+
. User requests to sync data with Google services.
1580+
. Codeducator uploads data through network connection.
1581+
. Codeducator shows data sync success
1582+
+
1583+
Use case ends.
1584+
1585+
*Extensions*
1586+
1587+
[none]
1588+
* 2a. User's internet get cut
1589+
** 2a1. Codeducator goes into timeout after losing connection.
1590+
+
1591+
Use case ends.
1592+
14921593
[discrete]
14931594
=== Use case: Show a student's dashboard
14941595

@@ -1641,8 +1742,6 @@ Use case resumes at step 2.
16411742
+
16421743
Use case resumes at step 2.
16431744

1644-
1645-
16461745
[appendix]
16471746
== Non Functional Requirements
16481747

@@ -1652,8 +1751,7 @@ Use case resumes at step 2.
16521751
. Should receive feedback after executing commands.
16531752
. Should have correct error handling and not crash from unexpected behavior.
16541753
. Should have its functions and commands easily understood and readable for first time users.
1655-
1656-
_{More to be added}_
1754+
. Should be able to sync with any Google account ending with @gmail.com
16571755

16581756
[appendix]
16591757
== Glossary
@@ -1686,8 +1784,6 @@ These instructions only provide a starting point for testers to work on; testers
16861784
.. Re-launch the app by double-clicking the jar file. +
16871785
Expected: The most recent window size and location is retained.
16881786

1689-
_{ more test cases ... }_
1690-
16911787
=== Deleting a student
16921788

16931789
. Deleting a student while all students are listed
@@ -1700,15 +1796,14 @@ _{ more test cases ... }_
17001796
.. Other incorrect delete commands to try: `delete`, `delete x` (where x is larger than the list size) _{give more}_ +
17011797
Expected: Similar to previous.
17021798

1703-
_{ more test cases ... }_
17041799

17051800
=== Saving data
17061801

17071802
. Dealing with missing/corrupted data files
17081803

1709-
.. _{explain how to simulate a missing/corrupted file and the expected behavior}_
1804+
.. Delete the contents of /data. +
1805+
Expected: Codeducator will start off with sample contacts and empty schedule, empty dashboards, empty moreinfo pages
17101806

1711-
_{ more test cases ... }_
17121807

17131808
//tag::favTest[]
17141809
=== Adding a student to favourites

docs/UserGuide.adoc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -706,7 +706,8 @@ Currently, Google Calendar will create a recurring weekly event per lesson, repe
706706

707707
[WARNING]
708708
====
709-
. You must first be logged in to sync your data
709+
. You must first be logged in to sync your data.
710+
. A stable internet connection is required to fully upload data. If cut, there is a high probability that it won't fully upload. Please try syncing again.
710711
. Do not change the name of the Students label. Codeducator will not be able to delete those contacts in future syncs.
711712
. Likewise, do not change the name of the Calendar "Student Lessons" as it will be similarly used for future syncs
712713
====
@@ -1167,7 +1168,7 @@ image::editMiscCommand.png[width 400]
11671168
image::editPictureSuccess.png[][width:400]
11681169

11691170
[start=3]
1170-
. By calling the `moreInfo` command (found in the section above), you will be able to view the student's profile page with the updated allergies information as shown below:
1171+
= . By calling the `moreInfo` command (found in the section above), you will be able to view the student's profile page with the updated allergies information as shown below:
11711172

11721173
.The profile page of the selected student is shown with the newly updated allergies information!
11731174
image::editMiscSuccess.png[width:600]
@@ -1186,6 +1187,8 @@ image::editMiscSuccess.png[width:600]
11861187

11871188
==== Find students by their miscellaneous information `[coming in v2.0]`
11881189

1190+
==== Full pull and push data using sync
1191+
11891192
//tag::NLP[]
11901193
== Interacting using free-form English
11911194

docs/team/demitycho.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,20 @@ Both add up to around 3k lines of code.
6464
I wrote extensive documentation on my parts in my user and developer guides, but excluded them to fit within the page limit.
6565
|===
6666

67+
Start of extract from [User Guide]
68+
6769
== Scheduling component
6870
include::../UserGuide.adoc[tag=schedule]
6971

72+
End of extract from [User Guide]
73+
7074
And more (Deleting lessons, syncing with Google)...
7175

7276
== Contributions to the Developer Guide
7377

7478
|===
7579
|_Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project._
7680
|===
77-
81+
Start of extract from [Developer Guide]
7882
include::../DeveloperGuide.adoc[tag=schedule]
83+
End of extract from [Developer Guide]

src/main/java/seedu/address/external/GContactsService.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ public void synchronize(ReadOnlyAddressBook addressBook)
109109
new GroupMembershipInfo(false, studentGroupEntry.getId()));
110110

111111
logger.info(String.format("Contact created for: %s", student.getName()));
112+
myService.insert(postUrl, toBeInserted);
112113
}
113114
logger.info("Successfully updated Google Contacts");
114115

0 commit comments

Comments
 (0)