Ng Yu Fei - Project Portfolio Page
Overview
SecureNUS, a Command Line Interface (CLI) based password manager for students in National University of
Singapore (NUS) to store and refer to their passwords in a jiffy.
The application offers various functionalities such as creating, removing, displaying, finding, storing, and
retrieving passwords, as well as modifying password information.
Summary of Contributions
- New Feature: Adding, Utilising of 2nd level secrets
- These include: Crypto wallet, Credit Card, WiFi
- What it does: Allows the user to create more different types secrets
- Justification: This allows the user to create secrets with more variety that are typically used commonly in the
daily life of a student
- Highlights: This was challenging as it forced a lot more checking on everyone’s parts to ensure all the operations
- New Feature: Operation Cancel
- What it does: Cancel an Operation that requires multi line of input
- Justification: This allows the user to stop creating a secret mid way, for example, because they input things wrong
or they did not want to save this password anymore
- Highlights: This was challenging as I had to make sure it worked for all operations that require multi line input.
However, this idea actually came up from User Acceptance Testing when I asked a friend to review the application.
Among many other suggestions, this was chosen as it was critical to them yet somethings that could be adapted quickly.
- Code Contributed: Reposense Link
- Project Management:
- Managed releases v1.0 and v2.1
- Tested and made ready for release
- Split the work required into different releases
- Allocated roles to everyone
- Enhancement to other features:
- More structure for Parsing commands,
- More extensive checks for all commands before allowing the application use them
- Set data structures for our secrets
- Creating the architecture of the application
- QA Tests for all commands to ensure they work as per intended
- Standardised the UI of the entire application
- Documentation:
- User Guide
- Did the first full draft of UG (Pull Requests)
- Help with final checks of UG
- Developers’ Guide
- All of the class diagrams
- High level flow of each section and Architecture diagrams
- Final checks
- Contribution to team based tasks:
- Setting up the GitHub team org/repo
- Necessary general code enhancements
- Setting up tools e.g., GitHub, Gradle, text-ui-tests
- Setting up gitflow and structure for all members
- Maintaining the issue tracker
- Release management
- Community:
- PRs Reviewed: #187, #171,
#54 and more…
- Reported Bugs (other than via telegram): #92,
#160, #84 and many more…
- Created the important development structures for my team including the inheritance structure of Commands and Data
structures
- Tools:
- Ensured the working of (UI) system with scanner