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.
-
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:
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
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. |