-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CS2113-W12-3] FinText #7
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall really neat! Good effort put into using visual and verbal representation!
docs/images/cs2113-storage-class.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this too complicated? Might there be a way to display the top half better?
docs/images/ExpenseClassDiagram.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could Transaction possibly be complicated/harder to read?
docs/DeveloperGuide.md
Outdated
All error handling is handled here and any errors/output would be passed to the `UI` component for printing and | ||
formatting of the output. | ||
|
||
| Command | Purpose | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clear summary for command components! Perhaps some sample inputs could be shown to demonstrate usage?
docs/images/IncomeClassDiagram.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might there be a more intuitive/clearer manner of emphasising the goal, and displaying transaction?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall I find the developer guide is very detailed and logical with sufficient images inserted. Good job and wish you all the best for the upcoming PE.
docs/DeveloperGuide.md
Outdated
### Architecture | ||
|
||
The bulk of the app's work is done by the following three components: | ||
- `UI`: The UI of the App. | ||
- `Parser`: Formats the user's input | ||
- `Command`: Command's logic and execution | ||
- `Storage`: Storage of data of the App | ||
|
||
![Architecture Diagram](./images/ArchitectureDiagram.png "Architecture Diagram") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very clear illustration of the project architecture!
### Storage component | ||
The `Storage` functionality is to load data from the storage files (`category-store.csv` , `expense-store.csv`, `goal-store.csv`, `income-store.csv`) into the application. It will also stores any data while the application is running. | ||
|
||
![Storage Class Diagram](./images/cs2113-storage-class.png "Storage Class Diagram") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The line drawn from CsvReader to OpenCSV should be straight preferrably.
### Target user profile | ||
|
||
{Describe the target user profile} | ||
Users who prefer a CLI interface over a GUI and want to better manage their finances to gauge their financial health. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps can identify a more specific target group, e.g. SOC students.
docs/DeveloperGuide.md
Outdated
| HelpCommand | Gives usage format information to the user | | ||
| ListCommand | Lists all incoming/outgoing transactions | | ||
| ExportCommand | Exports transactions data into CSV FIle. | | ||
| RemoveTransactionCommand | Deletes a transaction | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps DeleteCommand is a better name since it is more concise and suits the purpose.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, the structure closely mimics AB3 and is very neat.
|
||
### UI component | ||
|
||
![UI Sequence Diagram](./images/cs2113-ui-sequence.png "UI Sequence Diagram") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sequence diagram gave a very clear overview of how the 4 main components interact with each other
docs/DeveloperGuide.md
Outdated
## Implementation | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do rmb to add this
![Storage Class Diagram](./images/cs2113-storage-class.png "Storage Class Diagram") | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good use of class diagram to show association with openCSV
### Command component | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Neat table
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, a very comprehensive DG especially the parts on the diagram. However you may want to omit certain private methods or attributes to make the diagram less complicated. Remember to fill up other parts of the DG as well
|
||
":UI" -> User: Gets user input | ||
activate "User" #FFBBBB | ||
User --> ":UI": "userInput: String" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+ printGreeting(): String | ||
+ printBye(): String | ||
+ readUserInput(): String | ||
+ close(): void |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/diagrams/ui-class-diagram.puml
Outdated
} | ||
} | ||
|
||
Ui --> "{{abstract}}\nOutputStream" :> uses |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might want to add the multiplicity of association to outputStream and Scanner (should 1?)
activate ":Parser" #FFBBBB | ||
":Parser" --> ":Main": "p: Parser" | ||
|
||
":Main" -> ":Parser": p.parse(userInput: String) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -0,0 +1,17 @@ | |||
package seedu.duke.classes; | |||
|
|||
public class Category { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall good job on this DG. It is very detailed with clear explanation of the workings behind the classes. All the best for the PE!
docs/images/ParserSequence.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/images/cs2113-storage-class.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/images/IncomeClassDiagram.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs/images/cs2113-storage-class.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change file location for storage files
Use streams to process recurrent transactions
Fix parsing of non-negative doubles
Fix UI diagram issues
Tweak double parsing behaviour
Edit message for SummaryCommand
Update DeveloperGuide.md
Update javadocs
Update PPP
Update UserGuide and change Goal message
Add JavaDocs for test directory
Update DG on user stories
Update UserGuide and PPP
Update edit transaction
…edit Revert "Update edit transaction"
FinText is a personal finance tracker to make it easy for users to track and manage their spending, and generate daily/weekly/monthly reports to break down how they spend (e.g. spending categories, whether they spend above their income, etc.)