Hello! I am John Phua, a Year 2 Computer Science undergraduate student at the National University of Singapore. Over the semester, my team and I built Cow, a project management application. This portfolio will introduce you to Cow and my contributions towards its development.
Cow is a desktop task manager with project management capabilities, powered by a command-line interface. It is written in Java by a team of 5 undergraduates from the NUS School of Computing.
By entering commands, Cow allows you to efficiently:
-
Manage a list of tasks
-
Manage a list of group members across different project groups
-
Assign tasks to people
-
View the monthly workload of people through a calendar view
-
Major feature: Searching of tasks by name, date and tags
-
Purpose: Allowing you to efficiently search for tasks
-
Value to project: Task lists can get long and cluttered, this feature allows you to easily filter through your long list of tasks and retrieve what you want.
-
Highlights: This feature was built to be flexible according to your needs. You can combine different search criteria to make your search more specific. This required the design of a new class that can accept and compound different search criteria together.
-
-
Code contributions: [All code commits] [Project Dashboard View]
-
Other contributions:
-
Project management:
-
Managed releases
v1.2
-v1.3
(2 releases) on GitHub
-
-
Enhancements to existing features:
-
Implemented initial
Storage
andUI
components for tasks (Pull request #12) -
Updated and maintained the graphical user interface for the list of tasks (Pull requests #57, #90, #103)
-
Wrote task UI handlers for testing (Pull requests #91)
-
Wrote tests for my features that increased code coverage from 71% to 75% (Pull request #162)
-
-
Documentation:
-
Tools:
-
Configured Reposense to track contributions from the team.
-
-
You can see my contributions to the User Guide for Cow below. They showcase my ability to write documentation that is easy for end-users to follow and understand, while accounting for possible errors in usage. |
You can see my contributions to the Developer Guide for Cow below. They showcase my ability to communicate technical concepts to other developers and the technical depth of my contributions to the project. |