Kimberly's Project Portfolio Page
Project: SWEe!
SWEe! is a desktop application used for managing CS2103T learning progress mainly through flashcards. 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
- Enhancements implemented:
- Refactored
Person
toFlashcard
and updated relevant test cases #26 - Added the ability to favourite and unfavourite flashcards #73 + #92
- What it does: Allows the user to favourite and unfavourite flashcards via
fav
andunfav
command - Justification: This feature improves the product significantly especially in terms of user experience as it allows users to favourite flashcards. This allow users to better customize the flashcards, providing greater room for filtering flashcards to refine their list of flashcards, which will be especially helpful in the future when they have a lot of flashcards.
- Highlights: This enhancement involves adding new commands(
fav
andunfav
) and updating UI for favourite feature.
- What it does: Allows the user to favourite and unfavourite flashcards via
- Added the ability to find flashcards using keywords
- What it does: Allows the user to find flashcards using keywords via the
find
command - Justification: This feature improves the product significantly in terms of efficiency as it allows users to find flashcards easily.
- Highlights: This enhancement affected the existing implementation of
find
command in AB3. This is because thefind
searches for the keywords in the entire flashcard, which includesFlashcard
’sQuestion
,Answer
,Category
,Tags
andNote
as compared to the previous implementation which only looks atPerson#Name
. Hence,FindCommand
needed to be reimplemented to check for various fields. Since the flashcard can contain special characters, the implementation also includes handling of special characters while searching for matching keywords in flashcard
- What it does: Allows the user to find flashcards using keywords via the
- Refactored
- Contributions to User Guide::
- Contributions to DG::
- Refactored DG from AB3 to SWEe! #108
- Updated UML diagrams:
- Sequence Diagrams:
ArchitectureSequenceDiagram
,DeleteSequenceDiagram
,LogicSequenceDiagram
- Class Diagrams:
LogicClassDiagram
,StorageClassDiagram
,UiClassDiagram
- Activity Diagrams:
CommitActivityDiagram
- Sequence Diagrams:
- Updated UML diagrams:
- Added implementation details for
fav
andunfav
feature #77- Added UML diagrams:
FavouriteSequenceDiagram
,FavouriteUnfavouriteSequenceDiagram
and relevant state diagrams
- Added UML diagrams:
- Add Product Scope and User Stories
- Refactored DG from AB3 to SWEe! #108
- Contributions to team-based tasks::
- Maintaining the issue-tracker
- Refactoring DG from AB3 to SWEe!
- Refactor Person in AB3 to Flashcard.
- Set up hyperlinks for DG’s table of contents
- Review/Mentoring Contributions:
- Contributions beyond project team:
- Bugs reported during PE Dry Run: Issue Tracker
- Bugs reported for CS2103T-T17-1: Bugs