View on GitHub

tp

PlanNUS helps NUS undergraduates plan their academic journey in NUS. It is optimized for CLI users as commands can be typed in faster by undergraduates.

Khenus Tan - Project Portfolio Page

Overview

PlanNUS is a CLI-based project which aims to provide a centralised solution for NUS student to plan their Academic Journey. It provides important applications such as Academic Planner and CAP Calculator to assist students.

Summary of Contributions

3. Design

3.1. Architecture

Architecture diagram of PlanNUS

The Architecture Diagram given above explains the high-level design of PlanNUS. Below is a quick overview of each component.


3.2. Overview

3.2.1. PlanNus

PlanNus class contains the main and run method, which is responsible for


3.2.2. Global, Ui, Parser, Storage, Apps


3.3. Project Structure

Each package in the PlanNUS as given above follows the following file structure where applicable:

The interaction within each package should ideally be as shown below.

Architecture diagram for ideal project structure in PlanNUS

Note that while this is the ideal case, packages such as global, parser and ui might not strictly follow this structure due to these package serving a different function altogether (Refer to the sections below for more details.)


3.4. Life cycle of PlanNUS

The sequence diagram below shows how different packages and classes interact with each other throughout the whole life cycle of PlanNUS.

Sequence diagram for lifecycle of PlanNUS