Jason Qiu's Project Portfolio Page
Project: Swift+
Swift+ is a project management application designed to help software engineering (SWE) project leads in tracking their daily interactions with contacts. The user interacts with Swift+ mainly through a Command Line Interface (CLI). The application is written in Java and has about 10k LoC.
Here are my contributions to the project.
- Code contributed: RepoSense link
-
New feature: Added the ability to find tasks
- Relevant pull request(s): #58
- What it does: This feature allows users to search for tasks using keywords.
- Justification: This feature eases the process of finding tasks, since users can easily search using keywords.
-
New feature: Added
deadline
,description
, andisDone
fields for tasks- Relevant pull request(s): #103, #132
- What it does: This feature give users the option to add deadlines and descriptions to their tasks. It also allows the user to mark their tasks as completed and mark their tasks as incomplete.
- Justification: This enhancement allows users to add more information to their created tasks.
- Highlights: The main challenge while implementing this task was making the
deadline
anddescription
optional. Although Java has theOptional
class to wrap around optional values, it was difficult to decide where to add this layer of abstraction while considering the Single Level of Abstraction Principle (SLAP).
-
Enhancements to existing features:
-
Project management:
-
Documentation:
- User Guide:
- Added sections on how to use this user guide and how to get started (#193)
- Added documentation for the
find_task
command - Made cosmetic changes to header colors and spacing to match color scheme of app
- Developer Guide:
- User Guide:
- Community:
- PRs reviewed (with non-trivial review comments): #19, #20, #48, #57, #62, #83, #85, #89, #99, #128, #133, #187, #195
- Contributed to forum discussions (examples: #288, #317)
- Reported bugs and added suggestions for other teams in the class (examples: #241, #262, #272)
- Found bug in
addressbook-level3
site website: #149