Wu Zeying's Project Portfolio Page
Project: DSAce (AddressBook Level 3)
DSAce is a desktop definition book application used for teaching Data Structures and Algorithms principles. 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.
- New Feature: Priority
- What it does: Allows users to assign priority of the flashcards. Users can sort the flashcards by priority.
- Justification: This feature allows users to see which concept should be of their priority. Hence, easing their process of revision.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands such add and edit.
- New Feature: Added enter quiz and leave quiz command
- What it does: Allows users to enter quiz and leave quiz interface
- Justification: This feature allows users to enter a separate interface where flashcards are removed, quiz questions are shown and interface color scheme changes.
-
Bug fix: Disabled invalid user input for all single word such as
Clear
.Clear xx
is not supported now. (Pull requests #160) - Code contributed: RepoSense link
- Enhancements to existing features:
- Updated the GUI of priority (Pull requests #66)
- Connect quiz interface with logic and model
- Enhance readability of exception alerts so that the users are more aware of the error.
- Documentation:
- Developer Guide:
- Added the
enter quiz
command sequence diagram.
- Added the
- User Guide:
- Create an overall structure of User Guide.
- Developer Guide:
- Test cases:
- Added test cases for command and parser classes, such as
Clear
Command test and its parser.
- Added test cases for command and parser classes, such as
- Community:
- Reported bugs and suggestions for other teams in the class(https://github.com/zeying99/ped/issues/1#issue-732883559)