Ashley’s Project Portfolio Page
Project: CCBOT
CCBOT is a desktop application for managing your job application details. While it has a GUI, most of the user interactions happen using a CLI (Command Line Interface).
Given below are my contributions to the project.
- New Feature: Added an additional component, programming language, which is saved in the addressbook.
- What it does: Allow users to input programming languages that are being used in the job that they applied for.
- Justification: This feature improves the product significantly because a user can recognise which specific technical skill is required for that particular role.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- New Feature: Allows users to filter by company name.
- What it does: Allows users to find a contact based on the company name.
- Justification: This feature improves the product significantly because users can easily find the person based on the company that they applied for.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation was not too challenging. It required changes to existing commands.
- New Feature: Added the ability to filter by programming language.
- What it does: Allow users to filter contacts based on programming language.
- Justification: This feature improves the product significantly because a user can easily find contacts of the jobs that they applied for in which require the specific programming language.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- New Feature: Added the ability to delete by tag command.
- What it does: Allows users to delete contacts based on the tags given to each contact.
- Justification: This feature improves the product significantly because users can easily delete the contacts of everyone who has the same tag.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- Project management:
- Managed releases v1.2 - v1.4 (4 releases) on GitHub
- Enhancements to existing features:
- Documentation:
- User Guide:
- Added documentation for the features find (filter by name and company name), filter programming language and delete by tag (Pull Request #89)
- Developer Guide:
- Added implementation details for delete by tag feature. (Pull Request #191)
- Added implementation details for find feature. (Pull Request #191)
- Added planned enhancement 6. (Pull Request #196)
- Added planned enhancement 7. (Pull Request #193)
- Update UML diagram. (Pull Request #56)
- Add Sequence diagram for delete tag command. (Pull Request #181)
- User Guide: