Vu Minh Hieu's Project Portfolio Page
Project: FlashBack
FlashBack is a desktop flashcard application. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
Given below are my contributions to the project.
-
Code contributed: RepoSense Link
- New features: Added the ability to view a specific card given the index. #52
- What is does: displays the question and answers of a specific card in the view pane.
- Justification: In the list view, the user can only see parts of the question (if the question is long) and cannot see the answer. This feature allows users to see the completed question with its answer.
- Highlights: This feature mainly involves design the UI for the view pane.
- New features: Added the ability to review the deck of flashcards. #74
- What is does: allows the user to review all the cards one-by-one with detailed question and answer. All commands in review mode only contain 1 character, so the user do not have to type long commands.
- Justification: In the main window, in order to see the question and answer of all the cards, users have to type a lot of view command, which is very time-consuming. This feature is implemented to solve this problem. In addition, users can track their progress if they remember the answer correctly. This is then reflected in
stats
command. - Highlights: This feature is quite hard to implement since it requires designing a completely new window that connected to the flashcard list that is currently displayed in the main window.
- New features: Added UI components: TextArea Command Box. #74
- What is does: allows the user to see most of their commands so that they can easily spot mistakes in their commands if any, which can help to increase User Experience.
- Justification: A command, especially
add
andedit
command tends to be long. Previously, when using TextField, all the command was in a single line, and it was impossible for user to see the whole content of their command. - Highlights: This features required the implementation of a new custom TextArea that disallows users to enter multiline commands.
- Credit: jewelsea on Github
- Enhancements to existing features:
- Contributions to the UG:
- Contributions to the DG:
- Added the User Stories section. #36, #53
- Update UML class diagrams for
UI
,Storage
andLogic
classes. #91 - Added implementation details including class diagram and sequence diagram for Review feature .#91
- Added use case for Review feature. #91
- Added instruction for manual testing for view and review feature. #104
- Added effort section for Refactor from AB3 to FlashBack, View feature, Review Mode and UI improvement. #104, #181
- Added page breaks to DG. #177
- Review contributions:
- Contribution to Team-Based Tasks:
- Changed the product name and icon.
- Actively looked for bugs in teammates’ code.
- Managed the deadlines for team members.
- Enabled assertion.
- Managed release for
FlashBack v1.2.1
andFlashBack v1.4
on Github.
- Contribution beyond project team:
- Bugs reported in PE Dry Run: Issue Tracker