Seow Xiu Wen's Project Portfolio Page
Project: SportsPA
SportsPA is a desktop application used to manage membership and training sessions of NUS sports CCAs. 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: Added the ability to create shortcuts for commands (and supporting operations i.e. viewing and deleting created aliases).
- What it does: Allows the user to create aliases for command words. Entering the user-defined shortcut for chosen command word will execute that command.
- Justification: This feature improves user experience of the product significantly because our target users are fast typists well-versed with CLI applications. Aliasing is common in such applications, allowing our users the flexibility of defining their own command words to their preferences.
- Highlights: Implementation was challenging for this enhancement as it required changes to how commands are parsed and commands had to be tracked.
- Pull Request #124
- New Feature: Added the ability to switch GUI tabs for relevant commands.
- What it does: When users execute facility or member-related commands, the system automatically switches to that tab displaying the correct list (if it is not already on it).
- Justification: Similar to the above new feature, this improves user experience for our target users as users need not manually click on the tabs with their mouse after executing the command.
- Highlights: Changes had to be made to the result of a command execution so that the GUI will be able to use that info to respond accordingly. Updating tests was also more complicated as many of the commands already relied on the existing implementation of CommandResult, thus had to consider an alternative method (i.e. utility methods) to update tests.
- Pull Request #145
-
Code contributed: RepoSense link
- Team Tasks:
- Designed initial mockup for SportsPA v1.1
- Managed release
v1.2
-v1.2.1
andv1.4
(3 releases) on GitHub - Morphed existing product Address Book to include basic functionality supporting list of facilities (i.e
findf
,clearf
,deletef
,editf
) (Pull requests #85, #89, #97, #111) - Fixed bugs discovered from PED (Pull Requests #213, #263)
- Enhancements to existing features:
- Documentation:
- User Guide:
- Added documentation for the features
deletem
,setm
andsplit
(Pull Request #66) - Added documentation for the features
alias
,unalias
andaliases
command (Pull Request #124) - Did cosmetic and tonal tweaks to make User Guide more welcoming and visually aiding (i.e. screenshots, tips) (Pull Requests #135, #163)
- Added documentation for the features
- Developer Guide:
- User Guide:
- Community: