Introduction

Hi, my name is Teddy. At the time of this project (AY20/21 Semester 1), I was a Year 2 Computer Science undergraduate in NUS.

I am a software developer in Team StudyBananas. That’s the team that is working on this wonderful study companion app! We’re really passionate about this project, so we hope that you enjoy the product as much as we enjoy the process.

You can find out more about me via LinkedIn or GitHub

Overview

StudyBananas is a desktop study companion app that helps students centralize all their study tasks and set up focused study sessions into one place, optimized for use via a Command Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). It is written in Java and it is primarily based off of the Address Book Level 3 (AB3) application developed by the CS2103T teaching team.

Summary of Contributions

You can view my code contributions to this project on RepoSense

Enhancements Implemented

  • Major Enchancement: FLASHCARD feature and testing (backend)

    • What it does

      The FLASHCARD feature allows users to start and manage their collections of FLASHCARD. Users can create multiple FLASHCARDSET which can contain multiple FLASHCARD.

    • Justification

      Integrated with the QUIZ feature, this allows students to recap their concepts using the flashcard study technique.

    • Highlights

      Designed the different Classes that make up the FLASHCARD feature - storage, models and logic.

      The nesting of lists of lists have to be handled carefully when recording them to json files.

      Implements duplication detection for possible future FILTER function.

  • Major Enhancement: Quality Assurance

    • Justification

      I was the ‘QA’ guy in the team.

    • Highlights

      Continuously testing and managing bug reporting. Caught and recorded more than 40 bugs before the PE dry run.

Contribution to User Guide

Sections Written

Contribution to Developer Guide

Sections Written

Diagrams

Contribution to team-based tasks

  • Project Management

    • Led team meetings
    • Managed and reviwed PRs by team members before merging to team repo.
  • Team Website

    • Handle the layouting of StudyBananas User Guide