Skip to content

Latest commit

 

History

History
396 lines (273 loc) · 12.1 KB

UserGuide.adoc

File metadata and controls

396 lines (273 loc) · 12.1 KB

Module Planner - User Guide

1. Introduction

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!

2. Quick Start

  1. Ensure you have Java version 9 or later installed in your Computer.

  2. Download the latest moduleplanner.jar here.

  3. Copy the file to the folder you want to use as the home folder for your Module Planner.

  4. Double-click the file to start the app. The GUI should appear in a few seconds.

  5. The first page you will see when Module Planner starts up.

    onstartup
    Figure 1. On start up
  6. The page is divided into several sections.

    UiLabelled
    Figure 2. The labelled page
    1. Input Box: input commands here.

    2. Result Display: displays command results and other associated messages.

    3. Time Period: displays the year and semester you are currently viewing.

    4. Taken Modules Panel: lists modules that you put into the specified time period.

    5. Suggested Modules Panel: lists modules that suggested to you for that time period.

    6. Multipurpose Panel: displays results for the Find and Status commands.

  1. 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.

  2. Some example commands you can try:

    • setupm/Computer Science : set your major to be Computer Science in Module Planner to get tailored module suggestion for Computer Science student.

    • suggesty/1 s/1 : suggest modules you can take in first year, semester 1.

    • addy/1 s/1 c/CS1231 c/MA1521 : adds modules CS1231 and MA1521 to the year 1 semester 1 modules list.

    • deletec/CS1231 : deletes module CS1231 from the Module Planner.

    • exit : exits the app

  3. Refer to Section 3, “Features” for details of each command.

3. Features

Command Format

  • Words in UPPER_CASE are the parameters that you can supply, e.g. in suggest y/YEAR s/SEMESTER, YEAR and SEMESTER are parameters which can be used as suggest y/1 s/1.

  • Items in square brackets are optional e.g setup …​ [f/FOCUS_AREA] can be used as setup …​ f/software engineering or as setup …​.

  • Items with …​ after them can be used multiple times including zero times e.g. MODULE_CODE…​ can be used as   (i.e. 0 times), CS1231, CS1231 MA1521 etc.

Fields restrictions

MAJOR

Supported majors are listed in setup

FOCUS_AREA

Supported focus areas are listed in setup

MODULE_CODE

Must be a valid NUS module code in Academic Year 18/19.

YEAR

Should only be integer from 1 to 4 inclusive.

SEMESTER

Should only be integer from 1 to 2 inclusive.

3.1. Viewing help : help

Open this user guide in a new window.

Format: help

3.2. Setting user profile : setup

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 as cOmpUter 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

3.3. Adding modules: add

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:

AddBefore

After:

AddAfter
ℹ️
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

3.4. Deleting modules : delete

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

DeleteBefore

DeleteAfter

3.5. Finding information on a module : find

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.

find

3.6. Going to a different year and semester : goto

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

GoToBefore

GoToAfter

3.7. Listing modules : list

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]

💡
  • The list of modules will be automatically updated upon adding or deleting module(s).

ℹ️
  • If a valid year is supplied but no modules have been added to the specified year, will show an empty list.

  • If no year is supplied and no modules have been added to any year, will show an empty list.

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).

3.8. Getting status update : status

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:

StatusIllustration

3.9. Suggesting modules : suggest

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

💡
  • The list of suggested modules will be automatically updated upon adding or deleting module(s).

ℹ️
  • This feature currently only supports Computer Science major. If user profile is set to other major through setup command, this feature will only give you generic module suggestion sorted in a lexicographical order.

  • The list of suggested modules will not be automatically updated after changing major through setup. You have to re-execute suggest to update the list.

  • Support for other majors will come in v2.0.

Examples:

  • suggest y/1 s/1

  • suggest y/4 s/2

3.10. Undoing previous command : undo

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 (add, delete, and clear).

Examples:

  • delete c/CS1010
    list
    undo (reverses the delete c/CS1010 command)

  • goto y/1 s/1
    list
    undo
    The undo command fails as there are no undoable commands executed previously.

  • delete c/CS1010
    clear
    undo (reverses the clear command)
    undo (reverses the delete c/CS1010 command)

3.11. Redoing the previously undone command : redo

Reverses the most recent undo command.
Format: redo

Examples:

  • delete c/CS1010
    undo (reverses the delete c/CS1010 command)
    redo (reapplies the delete c/CS1010 command)

  • delete c/CS1010
    redo
    The redo command fails as there are no undo commands executed previously.

  • delete c/CS1010
    clear
    undo (reverses the clear command)
    undo (reverses the delete c/CS1010 command)
    redo (reapplies the delete c/CS1010 command)
    redo (reapplies the clear command)

3.12. Clearing all modules : clear

Clears all modules added into Module Planner and the module suggestion.
Format: clear

3.13. Exiting the program : exit

Format: exit

3.14. Saving the data

Module Planner data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.

4. FAQ

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.

5. Command Summary

  • 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