Lin Geyu's Project Portfolio Page
Project: IntelliJournal
IntelliJournal is a desktop contacts/journal management application designed for businesspersons to keep track of their contacts information as well as their meetings with them. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 15 kLoC. The project is developed based on a previous project named AddressBook Level 3.
Given below are my contributions to the project:
- New Feature: Support command alias (
alias
command)- What it does: Allow user to type faster after being familiar with the system with an alias to existing command.
- Justification: This feature improves the user experience by not forcing user to type out the full command when they are familiar with the system.
- New Feature: Support delete alias (
release
command)- What it does: Allow user to delete an alias that is set previously.
- Backend Work: Maintain model to support multiple feature that
Logic
component uses.- What it does: Support methods that logic component needs to use in
Model
interface to maintain a good abstraction.
- What it does: Support methods that logic component needs to use in
- Backend Work: Support storage for command alias
- What it does: Store the preference of user’s alias as json so that the system can keep the customized alias for users.
- Justification: This work is important because it allows user to use command alias more naturally.
-
Code contributed: RepoSense link
- Project management:
- Managed releases
v1.2.1
on GitHub - Maintain the workflow using issue tracker on Github
- Set up milestone
v1.1
-v1.4
- Managed releases
- Enhancements to existing features:
- Wrote additional tests for existing features to increase coverage.
- Community
- Do regular user testing to ensure the product quality.
- Contribute user stories to start the project.
- Report bug or design issue to teammates to ensure code quality.
- Documentation:
- User Guide:
- Added documentation for the features
alias
andrelease
(Delete alias).
- Added documentation for the features
- Developer Guide:
- Added implementation details of the
alias
feature. - Write sample use cases in appendix.
- Added implementation details of the
- User Guide: