By: Team T16-4
Since: Sept 2018
Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Viewing help :
help
- 3.2. Setting user profile :
setup
- 3.3. Adding modules:
add
- 3.4. Deleting modules :
delete
- 3.5. Finding information on a module :
find
- 3.6. Going to a different year and semester :
goto
- 3.7. Listing modules :
list
- 3.8. Getting status update :
status
- 3.9. Suggesting modules :
suggest
- 3.10. Undoing previous command :
undo
- 3.11. Redoing the previously undone command :
redo
- 3.12. Clearing all modules :
clear
- 3.13. Exiting the program :
exit
- 3.14. Saving the data
- 3.1. Viewing help :
- 4. FAQ
- 5. Command Summary
Module Planner is for National University of Singapore (NUS) Computer Science and Computer Engineering undergraduate students who prefer to use a desktop app to keep track of past modules and list possible future modules based on the academic requirements. More importantly, Module Planner is optimized for those who prefer to work with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Module Planner can get your module planning tasks done faster than traditional GUI apps. Interested? Jump to the Section 2, “Quick Start” to get started. Enjoy!
-
Ensure you have Java version
9
or later installed in your Computer. -
Download the latest
moduleplanner.jar
here. -
Copy the file to the folder you want to use as the home folder for your Module Planner.
-
Double-click the file to start the app. The GUI should appear in a few seconds.
-
The first page you will see when Module Planner starts up.
-
The page is divided into several sections.
-
Input Box: input commands here.
-
Result Display: displays command results and other associated messages.
-
Time Period: displays the year and semester you are currently viewing.
-
Taken Modules Panel: lists modules that you put into the specified time period.
-
Suggested Modules Panel: lists modules that suggested to you for that time period.
-
Multipurpose Panel: displays results for the
Find
andStatus
commands.
-
-
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
setup
m/Computer Science
: set your major to be Computer Science in Module Planner to get tailored module suggestion for Computer Science student. -
suggest
y/1 s/1
: suggest modules you can take in first year, semester 1. -
add
y/1 s/1 c/CS1231 c/MA1521
: adds modules CS1231 and MA1521 to the year 1 semester 1 modules list. -
delete
c/CS1231
: deletes module CS1231 from the Module Planner. -
exit
: exits the app
-
-
Refer to Section 3, “Features” for details of each command.
Command Format
-
Words in
UPPER_CASE
are the parameters that you can supply, e.g. insuggest y/YEAR s/SEMESTER
,YEAR
andSEMESTER
are parameters which can be used assuggest y/1 s/1
. -
Items in square brackets are optional e.g
setup … [f/FOCUS_AREA]
can be used assetup … f/software engineering
or assetup …
. -
Items with
…
after them can be used multiple times including zero times e.g.MODULE_CODE…
can be used asCS1231
,CS1231 MA1521
etc.
Initialises your profile with your major and optionally your focus areas so that Module Planner can
give you module suggestions that are more relevant to you.
Format: setup m/MAJOR [f/FOCUS_AREA]…
-
The major and focus areas should be spelt out in full.
-
The major and focus areas are case insensitive. e.g.
Computer Science
is the same ascOmpUter scienCe
. -
This feature currently only supports majors and focus areas listed below. Support for other majors and focus areas will come beyond v2.0.
-
Major:
-
Computer Science
-
Computer Engineering
-
-
Focus area:
-
Algorithms and Theory
-
Artificial Intelligence
-
Software Engineering
-
-
-
Default user profile is set to
Computer Science
major with no focus area.
Examples:
-
setup m/Computer Engineering
-
setup m/Computer Science f/Software Engineering
Adds the specified modules to the list of modules that you have taken or want to take for the specified year and semester.
Format: add y/YEAR s/SEMESTER c/MODULE_CODE…
Examples:
-
add y/1 s/1 c/MA1101R
-
add y/1 s/1 c/CS1231 c/CS1101S
An observable change can be seen in the Taken Modules Panel after successfully adding a module, like shown below:
Before:
After:
ℹ️
|
From the input list of modules, a subset of it which will be added to the planner are modules that does not fall under any of the following criterias: 1. Modules not offered by NUS 2. Modules not in the planner 3. Modules which one of its preclusions exist in the planner 4. Two or more modules equivalent (preclusions) to each other 5. Modules which prerequisites are not fulfilled in the previous semesters |
Deletes the specified modules from list of current or future modules for the specified year and semester.
Format: delete c/MODULE_CODE…
Examples:
-
delete c/CS1010
-
delete c/CS1231 c/MA1521
Consider a module planner stocked with the modules CS1010 and CS1231 in year 1 semester 1, and the modules CS2030
and CS2040 in year 1 semester 2. If delete c/CS1010
is executed, CS1010 is removed, as well as the modules CS2030
and CS2040 in year 1 semester 2 since they have CS1010 as a prerequisite.
You can see the change in the Taken Modules Panel in the before and after images.
Before |
After |
Retrieves the information of the specified module.
Format: find c/MODULE_CODE
Example:
-
find c/CS1010
You should see the module information for CS1010 in the Multipurpose Panel.
Changes the view to the specified year and semester.
Format: goto y/YEAR s/SEMESTER
Example:
-
goto y/1 s/1
The change can be seen in Taken Modules Panel in the before and after images.
Before |
After |
If a valid year is supplied, shows a list of all modules that you have added to that year. If no year is supplied, shows a list of all modules that you have added to every year.
Format: list [y/YEAR]
💡
|
|
ℹ️
|
|
Examples:
-
list y/1
Lists all modules taken in year 1, both semester 1 and 2 (if they exist). -
list
Lists all modules taken in every year, from year 1 semester 1 to year 4 semester 2 (if they exist).
Shows how many core and general education module credits that you have taken and how many credits that you need to take.
Format: status
You could see the status displayed on MultiPurpose Panel as shown below:
If a valid year and semester are supplied, suggests a list of modules that you are available to take in the specified year and semester, based on modules that you have added. A module is available for you if:
-
You have fulfilled (added to ModulePlanner) all the prerequisites of the module in the semester(s) prior to the one you specified.
-
You have not fulfilled (added to ModulePlanner) any preclusions to the module in any semester (including semester(s) after the one you specified).
-
You have not fulfilled (added to ModulePlanner) the module in any semester (including semester(s) after the one you specified).
The list of modules is sorted, with core modules being on top, followed by general education modules and unrestricted electives modules.
Format: suggest y/YEAR s/SEMESTER
💡
|
|
ℹ️
|
|
Examples:
-
suggest y/1 s/1
-
suggest y/4 s/2
Restores Module Planner to the state before the previous undoable command was executed.
Format: undo
ℹ️
|
Undoable commands: those commands that modify the Module Planner’s content ( |
Examples:
-
delete c/CS1010
list
undo
(reverses thedelete c/CS1010
command) -
goto y/1 s/1
list
undo
Theundo
command fails as there are no undoable commands executed previously. -
delete c/CS1010
clear
undo
(reverses theclear
command)
undo
(reverses thedelete c/CS1010
command)
Reverses the most recent undo
command.
Format: redo
Examples:
-
delete c/CS1010
undo
(reverses thedelete c/CS1010
command)
redo
(reapplies thedelete c/CS1010
command) -
delete c/CS1010
redo
Theredo
command fails as there are noundo
commands executed previously. -
delete c/CS1010
clear
undo
(reverses theclear
command)
undo
(reverses thedelete c/CS1010
command)
redo
(reapplies thedelete c/CS1010
command)
redo
(reapplies theclear
command)
Clears all modules added into Module Planner and the module suggestion.
Format: clear
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous Module Planner folder.
-
Add
add y/YEAR s/SEMESTER c/MODULE_CODE…
e.g.add y/1 s/1 c/CS1231 c/CS1101S
-
Clear :
clear
-
Delete :
delete c/MODULE_CODE…
e.g.delete c/CS1231 c/MA1521
-
Find :
find c/MODULE_CODE
e.g.find c/CS1O10
-
Goto :
goto y/YEAR s/SEMESTER
e.g.goto y/1 s/1
-
List :
list [y/YEAR]
e.g.list y/1
-
Setup :
setup m/MAJOR [f/FOCUS_AREA]
e.g.setup m/computer science f/machine learning
-
Status :
status
-
Suggest :
suggest y/YEAR s/SEMESTER
e.g.suggest y/1 s/1
-
Help :
help
-
History :
history
-
Undo :
undo
-
Redo :
redo
-
Exit :
exit