Hamada Masahiro - Project Portfolio Page
Hamada Masahiro - Project Portfolio Page
Overview
Our project, LifeTracker, is a calorie tracker CLI program. It allows the user to record down their daily net calorie gain, where the user can input the meals he has consumed as well as the exercises that he has done.
In doing so, the user can better manage his daily calorie gain in order to meet their particular needs.
Given below are my contributions to the project.
Summary of Contributions
Code Contributed
Commands
Our project implements a variety of command which allows the user to input and keep track of their information via the CLI. They form the backbone of our project, and it is the key to it functioning smoothly. Below are the list of commands I have worked on.
view
command: Allows the user to view their information.
- Implemented the code to allow users to view their information
update
command: Allows the user to update their information stored.
- Added methods to allow update command to handle updates to name, age and gender
help
command: Allows the user to view a help menu that gives them a quick guide on how to use the program.
- Abstracted print statements into UI
Entity
user
entity: The entity that initialises all the user’s information.
- Expanded the information that the entity holds to include age and gender
- Implemented getter and setter methods for newly added information
- Modified calculateCaloricNeeds method to factor in age and gender
Contribution to team-based tasks
- Created and implemented the
view
command to allow users to view their information - Enhanced
view
andupdate
commands to allow for better user experience
Unit Testing
- Wrote JUnit tests for the following commands:
ViewUserCommand
,UpdateUserCommand
- Wrote JUnit tests for the following entities:
User
Enhancement to existing features
- Modified
view
command to be able to take in one-liner inputs from the user to view their information- Shortens the process of user viewing their information
- Modified
update
command to allow names to be longer than one word.- Allows for freedom of choice in names for user.
- Modified
update
command to be able to take in one-liner inputs from the user to view their information- Shortens the process of user updating their information
Project Management
- Managed release
v2.0
on GitHub - Managed release
v2.0c
on GitHub
UG/DG
- Added the introduction to the UG as well as a framework of explanation for the other members to build off
- Added documentation for the
view
command andupdate
command in user guide. - Added Sequence Diagrams and explanation for
view
andupdate
command in developer guide. - Added explanation of program and user stories