Skip to content

[CS2113T-F14-2] Fitbot#50

Open
tryyang2001 wants to merge 887 commits intonus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113T-F14-2:master
Open

[CS2113T-F14-2] Fitbot#50
tryyang2001 wants to merge 887 commits intonus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113T-F14-2:master

Conversation

@tryyang2001
Copy link
Copy Markdown

Fitbot is a desktop app that helps university students who are looking to keep track of their fitness and health with the speed and convenience of command-line based tools, especially in times of online school.

Copy link
Copy Markdown

@tngjunwei tngjunwei left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, the developer's guide is very well written. The explanations provided makes it very easy to understand. The minor issues only lie with the diagrams. Keep it up!

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +55 to +58
Interaction between the classes could be shown by the uml sequence diagram below.

<p align="center" width="100%">
<img width="100%" src="images/Architecture.png" alt="Architecture Sequence Diagram"/>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There seems to be a operation invocation missing.
image

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +62 to +65
-When there is an input, the Ui class will retrieve the information from the user.
-Once the Main class receives the input, it creates a new Parser class to parse the commands.
-Depends on the method, in this case add food command, main class will execute the command class(not shown)
based on the command the parser detects.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Slight markdown format bug - need to insert space between dash and the starting word

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +168 to +171

<p align="center" width="100%">
<img width="100%" src="images/LogicSequenceDiagram.png" alt="Logic Sequence Diagram"/>
</p>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this has the same issue as above - missing method invocation.
image

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same issue.
image

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +217 to +218
![Add Food Item Sequence Diagram](images/AddFoodItemSequenceDiagram.png)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps you can replace the alt frame with an opt frame instead? This way, you won't repeat the constructor call.

image

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure! The sequence diagram has been updated! Thanks for pointing this out :D

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +310 to +331
#### **_dependency_**
In UML diagram, dependency is a directed relationship which is used to show that some elements or a set of elements requires,
needs or depends on other model elements for specification or implementation.
#### **_superclass_**
A class from which other classes inherit its code. The class that inherits its code will be able to access some/all
functionalities from the superclass.
#### **_subclass_**
A class that inherits code from the other classes. Such class will be able to access some/all functionalities from its superclass,
but not vice versa.
#### **_abstract class_**
A class that cannot be created using constructor. Usually such class is a superclass, and it does not give meaningful
value if one tries to construct it.
#### **_self invocation_**
In UML sequence diagram, a method that does a calling to another of its own methods is called self-invocation.
#### **_singly linked list_**
A linear data structure that behaves like an array except that the elements inside linked list is not store at a contiguous
location. In Java, linked list can be implemented using `ArrayList` in `Collection`.
#### **_priority queue_**
An abstract data type similar to a regular queue or stack data structure in which elements in priority queue are ordered
and have "priority" associated with each element. The priority can be defined by the coder. In the case of `FoodList`, the
priority will be defined as earlier date and time will have higher priority.
(more coming in the future...)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is a developer guide, maybe it won't be necessary to include a glossary for these technical terms?

I think this section is more for clarifying the meaning of certain potentially ambiguous terms.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK! We will consider this suggestion :) Thank you!

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +70 to +74
### Data Component (Profile)

<p align="center" width="100%">
<img width="90%" src="images/ProfileClassDiagram.png" alt="Architecture Sequence Diagram"/>
</p>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps you can list down the objects aggregated in Profile instead? There seems to be a lot of objects, and I am not sure how a class diagram will help here.

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +175 to +180
### Storage component

<p align="center" width="100%">
<img width="90%" src="images/StorageManagerClassDiagram.png" alt="Architecture Sequence Diagram"/>
</p>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar to the Data component section, perhaps you could list down the interfaces StorageManager implements, etc?

@tryyang2001 tryyang2001 changed the title [CS2113-F14-2] Fitbot [CS2113T-F14-2] Fitbot Oct 29, 2021
e0550472@u.nus.edu and others added 28 commits October 30, 2021 18:14
refactor isValid method
move getActualIndex to ItemList and implement code inheritance there
implement isValid method in Food and Exercise
Make profile even more OOP
…ect is deleted

update manual testing section (add in instructions for view and delete)
…on, changed \n to LS update userguide accordingly.

Repeat user message on invalid input to prevent raging users.
Update DG and Item Bank and Item Class Diagram
…into v2.1

# Conflicts:
#	src/test/java/seedu/duke/food/FoodListTest.java
# Conflicts:
#	src/test/java/seedu/duke/food/FoodListTest.java
* master:
  delete outdated junit test in FoodListTest
  update input code example in Add Exercise command
  add explanation for why the lifeline does not end even though the object is deleted update manual testing section (add in instructions for view and delete)
  update puml diagram add Interface to the class diagram
  Minor change to accessibility in code
  Add enum class for activity levels
  Add ProfileUtils class to make profile more OOP
  fix spacing for javaDoc in itemlist line 172 to pass check
  implement isValid method in Food and Exercise refactor isValid method move getActualIndex to ItemList and implement code inheritance there
  Update data integrity of food and exercise
  Fix formatting error in delete command
Developer guide updates to Storage and Profile
weidak and others added 30 commits November 8, 2021 22:21
Fix typo and formatting issue in DG
Update UG and fix bugs for release
add default calorieGoal if calorieGoal is not initialised
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants