Skip to content

Latest commit

 

History

History
103 lines (75 loc) · 4.93 KB

jylee-git.adoc

File metadata and controls

103 lines (75 loc) · 4.93 KB

Lee Jin Yao - Project Portfolio

PROJECT: Bank Address Book


Overview

Bank Address Book (BankAB) is a business process management and workflow application platform, whereby its users are all the employees in a banking environment. This platform supports the basic daily routine of each employee such as:

  • Checking working schedule

  • Applying for leave application

  • Checking in and out during working hours

The managers and administrators will have higher priority access level of BankAB such as changing the priority level of the employee and approve or reject leave requests.

Summary of contributions

  • Major enhancement 1: implemented user account with corresponding APIs and commands.

    • What it does: This allows all users to have a unique account to login and perform functions that are essential for work purpose.

    • Justification: This feature is a core component of the product as certain functions (such as leave application), require user authentication.

    • Highlights: This enhancement is challenging as we need to modify a major portion of existing source codes and test codes, owing to the fact that the newly added NRIC parameter is unique and other existing fields, which are initially unique, are now not. In addition, many functions that are developed by my team is dependent on this feature. This results in the pressure on me to deliver this feature at the shortest time possible.

  • Major enhancement 2: implemented priority access level with corresponding APIs and commands.

    • What it does: All user accounts will have a priority level, which will allow/restrict them to functions that require an elevated user to do so.

    • Justification: This feature is also a core component and complements the implementation of user accounts, as some features (e.g.: Approving of leaves), require someone of a senior rank to do so. This will prevent users from potentially abusing company resources and product functions.

  • Code contributed: Code Dashboard

  • Minor enhancement: added a reset command to reset the Bank Address Book to the original state at first start

  • Other contributions:

    • Project management:

      • Set up the organization and project repo on Github

      • Managed vetting through and approving individual pull requests

      • Deployed website for our project: Website

    • Enhancements to existing features:

      • Added a field that shows the user who is logged in at the status footer of the UI

      • Made significant changes to priority level ranking following the feedback received from the first practical exam: #134

    • Documentation:

      • Re-arranged summary of commands in the user guide to make them more organized: #89

      • Added appendices A and B in the user guide that summarizes the prefixes and corresponding data types, and also various priority levels and its corresponding privileges: #60, #89

      • Updated documentations as the project progresses: #60, #68, #89, #96, #136, #144

    • Community:

      • PRs reviewed (with non-trivial review comments): #26, #92

      • Reported bugs and suggestions for other teams in the class: 1, 2, 3

Contributions to the User Guide

Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users.

Contributions to the Developer Guide

Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project.