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
PersontoFlashcardand 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
favandunfavcommand - 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(
favandunfav) 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
findcommand - 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
findcommand in AB3. This is because thefindsearches for the keywords in the entire flashcard, which includesFlashcard’sQuestion,Answer,Category,TagsandNoteas compared to the previous implementation which only looks atPerson#Name. Hence,FindCommandneeded 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
favandunfavfeature #77- Added UML diagrams:
FavouriteSequenceDiagram,FavouriteUnfavouriteSequenceDiagramand 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