layout | title |
---|---|
page |
User Guide |
- Table of Contents {:toc}
Tired of opening multiple applications for your teaching needs? Proficient in typing? Look no further!
GREWZ helps university teaching assistants to maintain the information of the students in their classes by collating a list of students' personal details, as well as keeping a task book to help them keep track of their personal work.
As a teaching assistant, you can use GREWZ as an all-in-one platform to carry out your teaching duties such as:
- Marking attendance
- Updating student details
- Managing personal homework
GREWZ boasts a timeless, compartmentalised Graphical User Interface (GUI) while utilising a clean Command Line Interface (CLI) - this means that the faster you can type, the faster you can get your work done.
Hopefully our application has grown on you!
The aim of this User Guide is to provide you with all the information needed to fully utilise GREWZ. We understand the steep difficulty curve when learning Command Line Interface (CLI) programs and have tried our best to ease you in.
If you need help setting up GREWZ, jump over to Quick start to continue.
For understanding more about GREWZ features and commands, head over to Features.
To have a look at frequently asked questions, refer to FAQs
If you want the quick overview of GREWZ commands, jump over to Command Summary
Take note of the following symbols and formatting used in this document:
Symbol | Meaning |
---|---|
ℹ️ | Provides notes for the user |
❗ | Possible errors that might come from user interaction |
💡 | Provides additional information about the feature |
-
Ensure you have Java
11
or above installed in your Computer. For more details, check out the FAQs. -
Download the latest
GREWZ.jar
from here. -
Copy the file to the folder you want to use as the home folder for your GREWZ.
-
Double-click the file to start the app. The GUI similar to the one below should appear in a few seconds. Note how the app contains some sample data.
Alternatively, you can open the Command Prompt by right-clicking and clicking "Open in Terminal".
Next, run
java -jar ./GREWZ.jar
Type the command in the command box and press Enter to execute it. e.g. typing help
and pressing Enter will open the help window.
Some example commands you can try:
-
list
: Lists all students. -
add
n/John Doe i/e0778123
: Adds a student namedJohn Doe
with student IDe0778123
to the student list. -
delete
3
: Deletes the 3rd student shown in the current list. -
clear
: Deletes all students. -
exit
: Exits the app.
Refer to the Features below for details of each command.
ℹ️ Notes about the command format:
-
Words in
UPPER_CASE
are the parameters to be supplied by the user.
e.g. inadd n/NAME
,NAME
is a parameter which can be used asadd n/John Doe
. -
Items in square brackets are optional.
e.gn/NAME [t/TAG]
can be used asn/John Doe t/friend
or asn/John Doe
. -
Items with
…
after them can be used multiple times including zero times.
e.g.[t/TAG]…
can be used ast/friend
,t/friend t/family
etc. -
Parameters can be in any order.
e.g. if the command specifiesn/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable. -
If a parameter is expected only once in the command but you specified it multiple times, only the last occurrence of the parameter will be taken.
e.g. if you specifyp/12341234 p/56785678
, onlyp/56785678
will be taken. -
Extraneous parameters for commands that do not take in parameters (such as
help
,list
,exit
andclear
) will be ignored.
e.g. if the command specifieshelp 123
, it will be interpreted ashelp
.
The student features will assist you in managing student details with ease.
Adds a student to the class list.
Format: add n/NAME i/STUDENT_ID [p/PHONE_NUMBER] [e/EMAIL] [c/CLASS_GROUP] [t/TAG]…
- Fields in square bracket
[]
are optional. - The fields can be written in any order.
- Only Name and Student ID are compulsory to fill in.
- Name must only consist of alphanumeric characters and spaces, as well as special characters such as
, ' .
. - Student ID must take the format of e0XXXXXX where X is a digit from 0 to 9.
- A student can have any number of tags (including 0).
GREWZ naming convention is case-insensitive, but space-sensitive.
This means that it does not allow for students with the exact same name to be keyed into the application.
Thus trying to add a student with the name Ben
and ben
will not work.
Student ID must also be unique.
Examples:
add n/John Doe i/e0123456
add n/Betsy Crowe i/e0321456 e/betsycrowe@example.com p/1234567 t/classmate
Below is an example of how the UI will look like after executing this two commands:
Shows a list of all students in the student list.
Format: list
Add the class group to the specified student from the student list.
Format: class 1 c/CLASS
- Edits the student at the specified INDEX. The index refers to the index number shown in the displayed student list. The index must be a positive integer 1, 2, 3, …
- Existing class group will be updated to the input values.
- You can remove a student's class group by typing
c/
without specifying any value after it.
Examples:
class 1 c/CS2030S Lab 32
Edits the class group of the 1st student in the list to be CS2030S Lab 32.class 1 c/
Clears the class group of the 1st student in the list.
GREWZ allows you to upload image of your students into your application. The following steps will help you upload photos of your students into the student list.
Format: upload-pic INDEX
- Uploads a picture for the student at the specified
INDEX
. The index refers to the index number shown in the displayed student list. The index must be a positive integer 1, 2, 3, … - A window will open to allow you to select a file from your computer. The file must be of .JPG format.
- If no picture exists for the student specified, the selected picture will be assigned to the student.
- Existing picture will be updated to the input file picture.
Edits an existing student in the student list.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [c/CLASS] [i/STUDENT_ID] [t/TAG]…
- Edits the student at the specified
INDEX
. The index refers to the index number shown in the displayed student list. The index must be a positive integer 1, 2, 3, … - At least one of the optional fields must be provided.
- Existing values will be updated to the input values.
- You can clear the value in a field by typing its prefix without specifying any value after it.
- When editing tags, the existing tags of the student will be removed i.e adding of tags is not cumulative.
- You can remove all the student’s tags by typing
t/
without specifying any tags after it. - This command does not offer editing a student's profile picture. To do this, refer to upload.
Examples:
edit 1 p/91234567 e/studentEmail@example.com
Edits the phone number and email of the 1st student in the list to be91234567
andstudentEmail@example.com
respectively.edit 2 n/Jackie Chan t/
Edits the name of the 2nd student to beJackie Chan
and clears all existing tags.edit 3 p/ e/ c/
Clears the stored phone number, email and class of the 3rd student in the list.
Finds students whose student details contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]...
- The search is case-insensitive. e.g hans will match Hans
- The order of the keywords does not matter. e.g. Hans Bo will match Bo Hans
- All fields are searched -
NAME
,STUDENT_ID
,PHONE
,CLASS
,EMAIL
. - Partial words will also be matched e.g. Han will match Hans
- Students matching at least one keyword will be returned (i.e. OR search).
e.g.
find Hans Bo
will returnHans Gruber
,Bo Yang
Examples:
find Jack
returnsjack tan
andJack Lee
find alex dav
returnsWong Alex, David Lim
Deletes the specified student from the student list.
Format: delete INDEX
- Deletes the student at the specified
INDEX
. - The index refers to the index number shown in the displayed student list.
- The index must be a positive integer 1, 2, 3, …
Examples:
list
followed bydelete 2
deletes the 2nd student in the student list.find Betsy
followed bydelete 1
deletes the 1st student in the results of thefind
command.
We developed a feature to add an attendance list of a maximum of 12 lessons to help you record attendance for your students. You can mark/unmark attendance of your students. Currently, we only support one attendance list per student.
Adds an attendance list to a student in contacts.
Format: attendance add INDEX c/CLASS s/ATTENDANCE_SIZE
Examples:
attendance add 1 c/CS2030 s/10
creates an attendance list of size 10 with a class nameCS2030
for the 1st student in the shown student list.attendance add 1 c/CS2040 s/1
creates an attendance list of size 1 with a class nameCS2040
for the 1st student in the shown student list.
Expected outcome:
After using attendance add
command
Marks attendance of given student in class list. In this case, we use 0 for absent and 1 for present.
Format: attendance mark INDEX l/LESSON m/ATTENDANCE_VALUE
Examples:
attendance mark 1 l/1 m/1
marks the attendance of the 1st lesson for the 1st student in the shown student list with a 1.attendance mark 1 l/2 m/0
marks the attendance of the 2nd lesson for the 1st student in the shown student list with a 0.
Expected outcome:
After using attendance mark
command
Deletes the entire attendance list of a student in the student list.
Format: attendance delete INDEX
Examples:
attendance delete 1
deletes the attendance list for the 1st student in the shown student list.attendance delete 2
deletes the attendance list for the 2nd student in the shown student list.
Expected outcome:
After using attendance delete
command
The task feature helps you to keep track of your ToDos, Deadlines and Assignment submission.
Adds a task to the Task List. There is three different types of Task - ToDo, Deadline and Assignment.
Adds a ToDo (A type of Task) to the Task List.
Format: task t/TITLE d/DESC
- A ToDo Task should always include a title and description and should not be left blank.
- Both title and description should not be left blank.
Examples:
task t/Prepare studio slides d/Topic Environment Model
adds a ToDo Task with titlePrepare studio slides
and descriptionTopic Environment Model
to the task list.task t/Collect robot d/At MakersLab
adds a ToDo Task with titleCollect robot
and descriptionAt MakersLab
to the task list.
Expected outcome:
After adding a ToDo task
Adds a Deadline (A type of Task) to the Task List.
Format: task t/TITLE d/DESC by/YYYY-MM-DD
- A Deadline Task should always include a title, description and date and should not be left blank.
- The
by/
prefix MUST be present for the task to be a deadline. - Both title and description should not be left blank.
- A date should strictly follow the format of YYYY-MM-DD and it should be a valid date.
Examples:
task t/Prepare studio slides d/Topic Lists by/2020-12-12
adds a Deadline Task with titlePrepare studio slides
, descriptionTopic Lists
and date12 Dec 2020
to the task list.task t/Collect robot d/At MakersLab by/2019-09-10
adds a Deadline Task with titleCollect robot
, descriptionAt MakersLab
and date10 Sep 2019
to the task list.
Expected outcome:
After adding a Deadline task
Adds an Assignment (A type of Task) to the Task List.
Format: task t/TITLE d/DESCRIPTION addStu/STUDENT_1, STUDENT_2 ...
- An Assignment Task should always include a title, description that should not be left blank.
- The
addStu/
prefix MUST be present for the task to be an assignment. - The number of students input is zero or more, and each student is separated by a
,
comma, thus student names should not contain commas. - Both title and description should not be left blank.
Examples:
task t/Assignment 1 d/Midterm addStu/Adam Tan, Wong Zhu Yi
adds an Assignment Task with titleAssignment 1
, descriptionMidterm
and two studentsAdam Tan
,Wong Zhu Yi
, to the task list.task t/Mock PE d/Simulates actual PE addStu/Alvin, Simon, Theodore
adds an Assignment Task with titleMock PE
, descriptionSimulates actual PE
and three studentsAlvin
,Simon
,Theodore
, to the task list.
Expected outcome:
After adding an Assignment task
Edits an existing tasks in the task list.
Format: edit-task INDEX [t/TITLE] [d/DESCRIPTION] [by/YYYY-MM-DD] [addStu/STUDENT_1, STUDENT_2] [deleteStu/STUDENT_1, STUDENT_2]
- Edits the task at the specified
INDEX
. The index refers to the index number shown in the displayed task list. The index must be a positive integer 1, 2, 3, … - At least one of the optional fields must be provided.
- For task specific fields
by/
,addStu/
, anddeleteStu/
, can only be edited if the task is of the correct type.by/
is only accepted while editing a Deadline Task. A date should strictly follow the format of YYYY-MM-DD.addStu/
anddeleteStu/
are only accepted while editing an Assignment Task.addStu/
adds the student names to the assignment whiledeleteStu/
deletes students names if the exact name is already in the assignment task's student list.deleteStu/
is case-sensitive sodeleteStu/adam yeoh
will NOT deleteAdam Yeoh
in the assignment's student list.
- Existing values will be updated to the input values.
Examples:
edit-task 1 t/Assignment 1 d/Topics: Recursion addStu/Adam Lee, Ben Tang
Edits the title, description and adds to student list of the 1st task in the task list, provided that it is an assignment task, to beAssignment 1
,Topics: Recursion
and addsAdam Lee, Ben Tang
respectively.edit-task 2 deleteStu/Jackie Chan
Edits the student list of the 2nd task in the task list to delete the nameJackie Chan
. All other students in the student list of the task are not affected.
Removes a specified task from the Task List (Can be a ToDo, Deadline or Assignment).
Format: remove-task INDEX
- Deletes the task at the specified
INDEX
. - The index refers to the index number shown in the displayed task list.
- The index must be a positive integer 1, 2, 3, …
Examples:
remove-task 2
removes the 2nd task in the task list.remove-task 1
removes the 1st task in the task list.
Clears all entries from the student list as well as task list.
Format: clear
Allows user to quickly retrieve their previous inputs from current session by using the up and down arrow keys of your keyboard.
Format: ↑
, ↓
GREWZ data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
GREWZ data are saved as a JSON file [JAR file location]/data/addressbook.json
. Advanced users are welcome to update data directly by editing that data file.
Shows a message explaining how to access the help page.
Format: help
Exits the program.
Format: exit
Q: I don't know if I have Java 11
installed in my computer. What do I do?
A: To check your Java version, open a Command Prompt or Terminal window on your computer and type:
java -version
This will show you the exact version of Java installed on your computer, if any.
If you do not have Java 11
installed, you can download it here.
If you are still lost, try referring to this site.
Q: Do I have to retype the command every single time even if they are similar?
A: You can use our input history feature and simply use the UP ↑
and DOWN ↓
arrow keys to access your older commands.
Q: What is the difference between the different types of tasks?
A: All the three tasks essentially have a task title and description. What differentiates them is that a deadline task has date property where you can set its deadline and an assignment task has a student property where you can add a list of student who are yet to complete the assignment task. Lastly, the todo task has neither of these fields.
Q: How do I add a student if I do not have their student ID?
A: Unfortunately we need the name and student ID of the student minimally as we are using this fields to distinguish
the students in the student list. However, you could initially add a dummy student ID and tag the student profile as "incomplete".
Q: How do I add a deadline to an existing ToDo task?
A: Remove the existing ToDo task, then add the same task with your given deadline.
Q: How do I edit an existing task?
A: Use our edit task feature to edit the respective fields.
Q: How do I transfer my data into another computer?
A: Download the app in the other computer and transfer all files from the images and data folders from the existing computer into the new images and data folders in the new computer.
Q: How do I use the attendance commands?
A: Initially, each student has no attendance list. You should add an attendance list and mark different lessons that the student attends or unmark them if they are not present. At the end of the semester, you can delete the attendance list when not needed.
Action | Format | Examples |
---|---|---|
Add Student | add n/NAME i/STUDENT_ID [t/TAG] [e/EMAIL] [p/PHONE_NUMBER] [c/CLASS]… |
add n/James Ho i/e0823115 p/22224444 e/jamesho@example.com t/friend t/colleague |
List Students | list |
|
Add Class | class |
class 1 c/CS2030S Lab 32 |
Upload Picture | upload-pic INDEX |
upload-pic 1 |
Edit Student | edit INDEX [n/NAME] [i/STUDENT_ID] [p/PHONE_NUMBER] [e/EMAIL] [i/STUDENT_ID] [t/TAG]… |
edit 2 n/James Lee e/jameslee@example.com |
Find Student | find KEYWORD [MORE_KEYWORDS]... |
find James Jake |
Delete Student | delete INDEX |
delete 3 |
Add Attendance | attendance add INDEX c/CLASS s/ATTENDANCE_SIZE |
attendance add 1 c/CS2030 s/10 |
Delete Attendance | attendance delete INDEX |
attendance delete 1 |
Mark Attendance | attendance mark INDEX l/LESSON m/ATTENDANCE_VALUE |
attendance mark 1 l/1 m/1 |
Action | Format | Examples |
---|---|---|
Add Todo Task | task t/TITLE d/DESC |
task t/Work on essay d/GE module |
Add Deadline Task | task t/TITLE d/DESC by/YYYY-MM-DD |
task t/Prepare slides for studio d/Topic Environment Model by/2020-12-12 |
Add Assignment Task | task t/TITLE d/DESC addStu/STUDENT_1,STUDENT_2... |
task t/Assignment 3 d/Topic Environment Model addStu/Adam, Ben |
Edit Task | edit-task INDEX [t/TITLE] [d/DESC] [by/YYYY-MM-DD] [addStu/STUDENT_1,STUDENT_2...] [deleteStu/STUDENT_1,STUDENT_2...] |
edit-task 1 t/Mark Lab Worksheets d/CS2030S by/2022-10-30 |
Remove Task | remove-task INDEX |
remove-task 1 |
Action | Format |
---|---|
Clear | clear |
Navigating Input History | ↑ , ↓ |
Help | help |
Exit | exit |
Word | Definition |
---|---|
Command Line Interface (CLI) | A command-line interface (CLI) is a text-based user interface (UI) used to run programs, manage computer files and interact with the computer. |
Graphical user interface (GUI) | Graphical user interface (GUI) is a form of user interface that allows users to interact with electronic devices through graphical icons. |
Home Folder | A folder on your computer that stores all data related to this application. |
Parameter | Parameter is the user's input for particular field. |
Prefix | A group of characters placed before the input value. GREWZ uses prefixes like n/ , t/ and p/ . |
Teaching assistant | Teaching assistant is an individual who assists a professor with instructional responsibilities. |
JavaScript Object Notation (JSON) | JavaScript Object Notation (JSON) is used for storing and transferring data. |
Joint Photographic Experts Group (JPG) | Joint Photographic Experts Group (JPG) is an image file type and used for compression of digital images. |
User input history | User input history is the previous inputs the user has keyed in. |
Task | Task is a piece of work to be done and the category Todo, Deadline and Assignment is under. |
Todo | Todo is a task with a title and description. |
Deadline | Deadline is a task with a title, description and due date. |
Assignment | Assignment is a task with title, description and a list of students that needs to finish the task. |
Attendance List | Attendance list is a record of the student's attendance for his class. |
Case sensitivity | Case-sensitive is the ability to differentiate between capital and lower case letters while case-insensitive is treating them as the same. |
Space-sensitive | Space-sensitive is the ability to recognise extra blank spaces in words. |
Extraneous | Irrelevant or unrelated to the subject being dealt with. |
Java | Widely used programming language and it is a software platform used in distributed environment of the internet. |