Skip to content

Latest commit

 

History

History
64 lines (43 loc) · 2.89 KB

ongyichong.adoc

File metadata and controls

64 lines (43 loc) · 2.89 KB

Ong Yi Chong - Project Portfolio

PROJECT: Know-It-All


Overview

My team and I were tasked with enhancing a basic command line interface addressbook for our Software Engineering project. We chose to morph it into an desktop flashcard application called Know-It-All. This enhanced application helps students organize their digital flashcards neatly. The application also comes with a test feature; allowing users to test themselves on the flashcards created, a report feature; allowing them to view their performance for each folder and a import and export feature; which allows for the sharing of flashcards.

My role was to design and write the codes for the import and export features. The following sections illustrate these enhancements in more detail, as well as the relevant sections I have added to the user and developer guides in relation to these enhancements.

Summary of contributions

  • Major enhancement: added the ability to import/export existing or new flashcards

    • What it does: The import and export command allows users to import and export flashcards as csv files.

    • Justification: This feature improves the product significantly because users can now share their flashcards with others. The ability to import flashcards also provides a faster alternative to creating multiple flashcards in comparison to manually adding within the app iteself.

    • Highlights: Although not technically challenging, there were many considerations that went into the design of the import/export feature. One of them was deciding the formatting of csv files. whether a user should be able to export multiple card folders into a single csv. Also, since commas were used within each card field as well, there was a need to ensure that the comma separated values are actually not part of the "commas" within the card field itself.

    • Credits:

  • Code contributed: [Collated code]

  • Other contributions:

    • Enhancements to existing features:

      • Wrote additional tests for existing features to increase coverage from 78.379% to 81.079 (Pull requests #105)

    • Community:

      • PRs reviewed (with non-trivial review comments): #60, #2

Contributions to the User Guide

Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users.

Contributions to the Developer Guide

Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project.