Lim Yu Xiang(@yuxianglim) - Project Portfolio Page
Content
- Overview
- Code Contributed
- Enhancements implemented
- Contributions to documentation
- Contributions to the DG
- Contributions to team based tasks
- Contributions to the User Guide
Overview
Diet Manager is an personalized chat-bot application used for managing an individual’s diet.
Diet Manager is capable of tracking daily food intake and providing recommendations based on a user’s specified health data and weight goal.
Code Contributed
__Diet Manager__:
Link to code on tP Code Dashboard
__here__.
Enhancements implemented
- Created the CheckWeightProgress class which allows users to check their past weight records from the beginning till present.
-
The enhancement to this function is the ability to show the difference in weight of the user from the initial record to present and output message from the message bank in relative to the progress.
-
There might be further enhancement such as showing the % gain or loss in weight of the user.
-
-
Created/ updated set-weight and update-weight(removed) to allow user to store their weight in an Arraylist that is tied to their profile.
-
Added(Not yet done) Calculate BMI function of the user and comparing it to the BMI database to check if user is in healthy or unhealthy range.
-
Added delete weight functions to enable user to delete the stored weight based on the index of the weight stored.
- Added help functions to enable user to check for help while using the program.
- There was some slight hiccup in the process as gradle test allows for only 120 character per line. However i wished to implement a full table with sample inputs for user as it is more intuitive when using the program.
- Also added the help table to show at the launch of the program as this will be more user-friendly to all users as they do not have to refer to the user guide that often.
- Below is the original table which contains the sample input for user
No. Functions: Descriptions: Example: 1 set-profile NAME AGE GENDER HEIGHT WEIGHT WEIGHTGOALset user’s profile data (eg. set-profile John 20 male 180 80 75 ) 2 profileView user profile details (eg. profile) 3 record-meal DATE TIME_PERIOD /FOOD_NAME -- CALORIERecord meal info (eg. record-meal Monday morning /prata – 10.0 /milk – 6.00 ) 4 check-meal DATE TIME_PERIODCheck meals eaten (eg. check-meal Monday morning ) 5 calculate DATECalculate Calorie intake for the day (eg.calculate Monday) 6 calculate DATE1->DATE2Calculate Calorie intake from DATE1 to DATE2 (eg. calculate Monday->Wednesday ) 7 list-foodList all foods recorded in the database (eg. list-food ) 8 addf FOOD_NAME --CALORIESAdd a new food into database (eg. addf beef noodles – 7.0 ) 9 delf FOOD_NAMEDelete a food from the database (eg. delf beef noodles ) 10 new-recipe MAXIMUM_FOOD_TYPES ACTIVITY_LEVELRandomly recommend recipe from database (eg. new-recipe 2 low ) 11 show-recipeShow the recipe recommended for user (eg. show-recipe ) 12 set-weightUpdate user’s weight changes (eg. set-weight 70 ) 13 check-weight-progress NAMECheck user’s weight progress (eg. check-weight-progress John ) 14 delete-weightDelete user’s weight from progress (eg. delete-weight 2 ) 15 helpShow the help function table (eg. help ) 16 exitExit application (eg. exit )
Contributions to documentation
I contributed to the User Guide under the section of check weight progress.
- Provided an introduction to the features of the method
- Provided the format of using the command
- Provided the 3 different sample output that will be shown to user based on weight difference
I contributed to the User Guide under the section of set-weight.
- Provided an introduction to the features of the method
- Provided the format of using the command
- Provided the sample output that will be shown to user upon set-weight command
I contributed to the User Guide under the section of delete-weight.
- Provided an introduction to the features of the method
- Provided the format of using the command
- Provided the different sample output that will be shown to user when user deletes the weight stored based on index
I contributed to the User Guide under the section of help.
- Provided an introduction to the features of the method
- Provided the format of using the command
- Provided the sample output which contains the help table that will be shown to user when the help command is entered
I also contributed to the User Guide under the section of command summary
- Updated the table of functions available currently available
Contributions to the DG
I contributed to the Developer Guide under the section of user-stories component
- Provided the table to the user stories
Contributions to team based tasks
I have contributed to my team based tasks in:
- initial brainstorming for type of program and user stories
- implementing enhancements for my team project such as
- Weight editing
- Deletion of weight
- Weight Tracking
- Help functions
- Streamlined some of the print line process
- BMI calculations
- BMI table
- Reviewing codes written my by group mates prior to approval.
- Resolving some bugs regarding weight functions.
- My entire team helped during the setting up of project repo by going through the steps together.
- Opening some issues in github for implementation of functions or enhancements.
- Updating the user guide
- Update some minor parts of developer guide and proofread it
Contributions to the User Guide
- Added functions guides such as
- set-weight
- delete-weight
- check-weight-progress
- help
- check-bmi
- Updated list of summary of commands
- Updated content table