User Guide

Introduction (Chan Wan Ting Elizabeth)

Plan&Score is an application consisting of 2 key components:

and a sub-component:

These components aim to tackle the issue of poor planning and revision most Primary 6 students in Singapore face.

This application uses a command line interface, meaning that you operate the application by typing commands into a Command Box.

initialization

Figure 1. The graphical user interface for Plan&Score

About this User Guide (Chan Xu Hui)

This User Guide serves to provide an in-depth explanation of Plan&Score’s usage and functionalities, as well as troubleshooting steps you can take if problems are encountered.

How to use this User Guide (Andre Wong Zhi Hua)

To navigate to the contents of your desired feature, simply click on the hyperlinks provided in the contents page above.

The highlights and symbols used in this document are as follows:

information

warning

Add class A grey highlight is used to denote text to be entered into the
command line.

Quick Start (Chan Xu Hui)

  1. Ensure that you have Java 11 or above installed.
  2. Download the latest version of Plan&Score from here.
  3. Run the program by entering java -jar \[CS2113T-W12-4\]\[\ Plan\&Score\].jar in your terminal.
  4. You can exit the program by running bye.

Initialisation (Alicia Ho Shimin)

When you first open Plan&Score, you will be greeted by a welcome message as well as a prompt asking for your name. This is as shown below.

introduction

Type in your name and press ‘Enter’ to proceed.

keyname

Afterwards, you will be prompted to enter the number of recommended hours that you wish to accomplish per day. Key in your desired number of hours and press ‘Enter’ to proceed.

keyhours

This is the end of the initialisation process. You can now enjoy the rest of Plan&Score’s amazing features!

finishintro

Commands

Command Format

Category Types (Chan Wan Ting Elizabeth)

Viewing help: help (Chan Wan Ting Elizabeth)

Shows all available commands that you can use

Firstly, type help in the command line as seen below, and press ‘Enter’ to execute it.

help1

The output containing all the different commands is seen in the console.

help2 help2

Plan component of Plan&Score

It allows you to plan and track the following category types:

indexinfo

Allows you to change the number of recommended hours you would want to have per day.

Firstly, type set hours in the command line as seen below. Press ‘Enter’ to execute it.

sethours1

Afterwards, Plan&Score will prompt you to enter the number of recommended hours that you wish to accomplish per day.

sethours2

Key in your new desired number of hours and press ‘Enter’ to proceed. The output is then seen in the console as shown below.

sethours3


WARNING:

erroraddclass

sethourserror

Category: Class (Chan Wan Ting Elizabeth)

Adding a class: add class

Allows you to add a new class with a name, date and time.

Firstly, type add in the command line as seen below, followed by the category type which is the class. Afterwards, key in the description of the class as well as its start and end date and time. Press ‘Enter’ to execute it.

addclass1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

addclass2


WARNING:

erroraddclass

addclasserror


Deleting a class: delete class

Allows you to delete a class based on its index in the list.

Firstly, type ‘delete’ in the command line as seen below, followed by the category type which is the class. Afterwards, key in the corresponding index of the class you would like to delete. Press ‘Enter’ to execute it. deleteclass1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly. deleteclass2


WARNING:

erroraddclass

deleteclasserror


Category: Cca (Chen Jinran)

Adding a cca: add cca

Allow you to add a new cca with a name, date and time.

Firstly, type add in the command line as seen below, followed by the category type which is the cca. Afterwards, key in the description of the cca as well as its start and end date and time. Press ‘Enter’ to execute it.

addCca1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

addCca2


WARNING:

erroraddclass

addccaerror


Deleting a cca: delete cca

Allows you to delete a cca based on its index in the list.

Firstly, type delete in the command line as seen below, followed by the category type which is the cca. Afterwards, key in the corresponding index of the cca you would like to delete. Press ‘Enter’ to execute it.

deleteCca1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

deleteCca2


WARNING:

erroraddclass

deleteccaerror


Category: Test (Alicia Ho Shimin)

Adding a test: add test

Allows you to add a new test with a name, date and time.

Firstly, type add in the command line as seen below, followed by the category type which is the test. Afterwards, key in the description of the test as well as its start and end date and time. Press ‘Enter’ to execute it.

addtest1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

addtest2


WARNING:

erroraddclass

addtesterror


Deleting a test: delete test

Allows you to delete a test event based on its index in the list.

Firstly, type delete in the command line as seen below, followed by the category type which is the test. Afterwards, key in the corresponding index of the test you would like to delete. Press ‘Enter’ to execute it.

deletetest1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

deletetest2


WARNING:

erroraddclass

deletetesterror


Category: Tuition (Chan Xu Hui)

Adding a tuition: add tuition

Allows you to add a new test with a name, date, time, location.

Firstly, type add in the command line as seen below, followed by the category type which is the tuition. Afterwards, key in the description of the tuition, its start and end date and time as well as its location. Press ‘Enter’ to execute it.

addtuition1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

addtuition2


WARNING:

erroraddclass

addtuitionerror


Deleting a tuition: delete tuition

Allows you to delete a tuition based on its index in the list.

Firstly, type delete in the command line as seen below, followed by the category type which is the tuition. Afterwards, key in the corresponding index of the tuition you would like to delete. Press ‘Enter’ to execute it.

deletetuition1

The output is seen in the console. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

deletetuition2


WARNING:

erroraddclass

deletetuitionerror


Listing out schedule: list event <today/[date]/week/nextweek> (Andre Wong Zhi Hua)

Allows you to list out the entire schedule for classes, ccas and tests. You can also choose to list today’s schedule, the schedule for the week or the schedule for a specific date.

List event: list event

Firstly, to list out all events, type ‘list event’ in the command line, as seen below. Press ‘Enter’ to execute it.

listevent1

The output is seen in the console. The list is arranged by their respective categories. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

listevent2


List event today: list event today (Alicia Ho Shimin)

Secondly, to list out all events today, type list event today in the command line, as seen below. Press ‘Enter’ to execute it.

listeventtoday1

The output is seen in the console. The list is arranged by their respective categories. The date and time is converted to a more readable form, enabling you to read it more pleasantly. The index of the event is corresponding to its index in the entire list.

listeventtoday2


List event week: list event week (Chan Xu Hui)

Thirdly, to list out all events in the current week, type list event week in the command line, as seen below. Press ‘Enter’ to execute it.

listeventweek1

The output is seen in the console. It is displayed in a calendar format for easier readability. The events are listed according to time. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

listeventweek2


List event next week: list event nextweek (Chan Xu Hui)

Fourthly, to list out all events in the next week, type list event nextweek in the command line, as seen below. Press ‘Enter’ to execute it.

listeventnextweek1

The output is seen in the console. It is displayed in a calendar format for easier readability. The events are listed according to time. The date and time is converted to a more readable form, enabling you to read it more pleasantly.

listeventnextweek2


List event date: list event [desired date] (Alicia Ho Shimin)

Lastly, to list out all events on a particular date, type list event [desired date] in the command line, as seen below. Press ‘Enter’ to execute it.

listeventdate1

The output is seen in the console. The list is arranged by their respective categories. The date and time is converted to a more readable form, enabling you to read it more pleasantly. The index of the event is corresponding to its index in the entire list.

listeventdate2


Finding events: find event (Andre Wong Zhi Hua)

Allows you to look for classes, ccas and tests and tuitions that match your given keyphrase.

In the case when you have many events in your schedule and you need to find a specific event to check the date. You can use the find event command to look for the event you want by entering keywords related to it.

Let’s say we need to find out when my vocabulary test is on. We can first type find event vocabulary into the command box, and press ‘Enter’ to execute it.

find1

The output can then be seen in the console.

find2

And we can find the date we are looking for as pointed out by the yellow arrow below.

find3

findnote


Score component of Plan&Score

Enables the following category type: quiz

The quiz feature enables you to spend the extra time resulting from your productive scheduling to hone your Mathematics for your upcoming PSLE.

Taking a Quiz: quiz (Chan Wan Ting Elizabeth)

Taking a Mathematics quiz with any number of questions you want, ranging from just 1 question to the total number of questions in the quiz list.

First, enter quiz, followed by the number of questions you would like to take in your quiz. For example, you could enter quiz 1 to attempt a quiz with 1 question.

The following output would then be displayed.
quiz1

Adding a Quiz Question: add quiz (Andre Wong Zhi Hua)

Allows you to add a Mathematics multiple-choice quiz question to the quiz list.

Note that the /e (explanation) is an optional parameter. You can add a quiz question with or without an explanation.

First, enter add quiz, follow by /q.

Then, enter the question you would like to add.

Next, enter /o1, followed by the answer option you would like to enter. Repeat this for the rest of the three options.

Now, enter /a, followed by the number corresponding to the correct answer option.

Lastly, enter /e, followed by the explanation to the solution of the question. This last part is optional.

An example of such a command would be: add quiz /q What is 26+5? /o1 28 /o2 31 /o3 38 /o4 41 /a 2 /exp Adding 5 to 26 gives us 31..

The corresponding output would then be displayed as shown below.
quizadded

Deleting a Quiz Question: delete quiz (Chen Jinran)

Allows you to delete a quiz question from the quiz list.

Simply enter delete quiz, followed by the index number corresponding to the quiz question you would like to delete in your quiz list.

For example, you could enter delete quiz 1.

You would expect to see this output.
deletequiz1

Listing out All Quiz Questions: list quiz (Andre Wong Zhi Hua)

Allows you to list out all the questions in the quiz list.

All you have to enter is list quiz for this command.

This output should then be seen.
listquiz

Finding a quiz: find quiz (Chen Jinran)

Look for quizzes that match the given keyword(s) that you want.

Note that searches are case-insensitive and user can provide multiple words to compare with

The format for this command is find quiz, followed by the keyword(s) you would like to search for in your list of quiz questions.

For example, you could enter find quiz 26.

Then, you would expect to see this in your output.
findquiz

Searching for former incorrect quiz questions: quiz record (Chen Jinran)

Allows you to list out the incorrect quizzes in your last quiz attempt.

Simply enter quiz record.

You should see the full list of questions you have answered wrongly in your previous quiz attempt, as shown below.
quizrecord

Contact component of Plan&Score

Adding a contact add contact (Chen Jinran)

Allows you to add a teacher’s contact details to the contact list.

Firstly, type add in the command line as seen below, followed by the category type which is the contact. Afterwards, key in the description of the contact. Press ‘Enter’ to execute it.

add_contact_command

The output is seen in the console.

add_contact

WARNING:

erroraddclass

add_contact_wrongly

Deleting a contact delete contact (Chen Jinran)

Allows you to delete a contact from the contact list.

Firstly, type delete in the command line as seen below, followed by the category type which is the contact. Afterwards, key in the corresponding index of the contact you would like to delete. Press ‘Enter’ to execute it.

delete_contact_command

The output is seen in the console.

delete_contact

WARNING:

erroraddclass

delete_contact_wrongly

Listing out contacts list contact (Chen Jinran)

Allows you to list out all the contacts in the contact list

To list out all contacts, type list contact in the command line, as seen below. Press Enter to execute it.

list_contact_command

The output is seen in the console.

list_contact

Finding a contact find contact (Andre Wong Zhi Hua)

Look for contacts that match the given keywords you want.

In the case when you have many contacts in your list and you need to find a specific contact, you can use the find contact command to look for the contact you want by entering keywords related to it.

Let’s say we need to find out the contact of our math teacher. We can type find contact math into the command box, and press ‘Enter’ to execute it.

find_contact_command

The output can then be seen in the console.

find_contact

findnote

Exits Program: bye (Alicia Ho Shimin)

Exits the program once you have finished using it.

Type the command and press ‘Enter’ to execute it.

bye1

The output is shown in the console. It contains a simple goodbye message.

bye2

Saving Data (Chan Xu Hui)

Plan&Score saves all your data automatically after every command. There is no need to save manually. However, if your storage file is detected to be unreadable, Plan&Score will offer to reset itself to its default settings, wiping all data stored in the text file.

factoryreset


FAQ

Q: How do I transfer my data to another computer?

A: We recommend you to transfer the entire folder containing [CS2113T-W12-4][ Plan&Score].jar and the data directory. Then, follow instructions given in our Quick Start section to set up Plan&Score.

Troubleshooting (Chan Xu Hui)

Q: Plan&Score is unable to start, and I do not want to lose my data through factory resetting. How can I fix this?

A: Your data files might have been corrupted. To fix this, you can attempt the following steps:

We recommend adult supervision for this process.

  1. Locate the data directory. It should be in the same directory as where Plan&Score is located.
  2. Open the events.txt file.
  3. Check if any of the data are violating our decoding formats:
    • For class/cca/test, the format should be: [IDENTIFIER]|[true/false]|[DESCRIPTION]|[DATE IN YYYY-MM-DD HHMM]|[DATE IN YYYY-MM-DD HHMM]
    • For tuition, the format should be: [IDENTIFIER]|[true/false]|[DESCRIPTION]|[DATE IN YYYY-MM-DD HHMM]|[DATE IN YYYY-MM-DD HHMM]|location
  4. Edit the file to the correct formats shown above
  5. Launch Plan&Score
  6. Confirm that Plan&Score runs without any error

In the unfortunate event where the error persists, please reset Plan&Score to factory settings. We recommend keeping a duplicate of the contents in events.txt to assist with the re-adding of events.

  1. Ensure you have duplicated events.txt
  2. Delete events.txt
  3. Launch Plan&Score
  4. Confirm that Plan&Score runs without any error
  5. events.txt should appear in the data directory
  6. Copy any unaffected events from the duplicated file in Step 1
  7. Re-add affected events through the command line interface

Command Summary (Team)

Action Format Examples
help help  
add event add [class/cca/test] /n [description] /s [start-date-time] /e [end date-time], add [tuition] /n [description] /s [start-date-time] /e [end-date-time] /l [location] add class /n Math /s 2020-09-06 1300 /e 2020-09-06 1400, add tuition /n Math /s 2020-09-06 1300 /e 2020-09-06 1400 /l home
add quiz add quiz /q [question] /o1 [option 1] /o2 [option 2] /o3 [option 3] /o4 [option 4] /a [option answer] /e (explanation) add quiz /q 1 + 1 = ? /o1 1 /o2 2 /o3 3 /o4 4 /a 2 /exp no explanation needed
add contact add contact /s [subject] /n [name of contact person] /p [phone number] /e [email address] add contact /s math /n thomas /p 91779977 /e thomas@gmail.com
delete event delete [class/cca/test/tuition] [item number] delete class 1, delete test 1, delete cca 1
delete quiz delete quiz [item number] delete quiz 1
delete contact delete contact [item number] delete contact 1
list event list event (<date/today/week>) list event 2020-09-06
list quiz list quiz  
list contact list contact  
Find event find event [keyword(s)] find event English
Find quiz find quiz [keyword(s)] find quiz 2 + 2 = 4
Find contact find contact [keyword(s)] find contact jonny@gmail.com
quiz quiz [no of questions] quiz 15
display quiz record quiz record  
set hours set hours  
bye bye