[CS2113-F10-2] BadMaths#46
Conversation
wuzhzn
left a comment
There was a problem hiding this comment.
Perhaps more diagrams (class/architectural/sequence can be added to show the overall flow of the code. There can also be more details given in the scope, user stories, glossary and such if it is not included
| 1. This is step 1. | ||
| 2. This is step 2. | ||
|
|
||
|  |
There was a problem hiding this comment.
Is this format of the sequence diagram correct? Should there be colon in the class such as :Notes?
| ## Product Scope | ||
| ### Target user profile | ||
|
|
||
| {Describe the target user profile} |
haoyangw
left a comment
There was a problem hiding this comment.
Very clear and detailed explanation given for your features! Would be good to read about why you implemented your logic this way, but great work nonetheless!! :)
| Quadratic -> Quadratic: findA() | ||
| activate Quadratic #FFBBBB | ||
| deactivate Quadratic | ||
| Quadratic -> Quadratic: findB() | ||
| activate Quadratic #FFBBBB | ||
| deactivate Quadratic | ||
| Quadratic -> Quadratic: findC() | ||
| activate Quadratic #FFBBBB | ||
| deactivate Quadratic | ||
| Quadratic -> Quadratic: quadraticFormula() | ||
| activate Quadratic #FFBBBB |
There was a problem hiding this comment.
Perhaps you can adjust the method call arrows for findA(), findB(), findC() and quadraticFormula() such that they point to the start of the corresponding activation bars, like what they arrow for printAnswer() does
| deactivate UI | ||
| end opt | ||
| deactivate Quadratic | ||
| Quadratic -> Command |
There was a problem hiding this comment.
I believe in this case, the arrow should be a dashed arrow since it represents a method return. Also, you should try to connect the method return arrow to exactly the end of the activation bar for Quadratic
| deactivate Parser | ||
| alt inputCommand is null | ||
| activate Command | ||
| BadMaths -> Command : Command(command, toDo); |
There was a problem hiding this comment.
Perhaps this method invocation arrow should be connected to the constructor activation bar instead rather than a regular method activation bar. Maybe try adding create Command to display the constructor activation bar earlier in the PUML file?
| Command -> Quadratic : Quadratic(toDo) | ||
| activate Quadratic | ||
| deactivate Quadratic | ||
| alt "Bye" |
There was a problem hiding this comment.
Maybe you can phrase it more like a condition, e.g. command is "Bye", so that it's clearer what this "Bye" is referring to
| activate Quadratic | ||
| deactivate Quadratic | ||
| alt "Bye" | ||
| else "Graph" |
There was a problem hiding this comment.
Similar comment as for the "Bye" condition above
| {list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well} | ||
|
|
||
|
|
||
| ## Design & implementation |
There was a problem hiding this comment.
Concise and clear explanation of what your features does in this section! Consider explaining why you implemented your feature logic this way, maybe even describing some alternative implementations you considered but ultimately dropped, which would strengthen the appeal of your features to a developer.
| activate TrigoGraphAnalyser | ||
| deactivate TrigoGraphAnalyser | ||
|
|
||
| TrigoGraph -> TrigoGraph |
There was a problem hiding this comment.
I think this arrow should be a dashed arrow instead since it's a method return
| TrigoGraph -> TrigoGraph | ||
| deactivate TrigoGraph | ||
|
|
||
| TrigoGraph -->> TrigoGraphVisualiser: TrigoGraphVisualiser(amplitude,phase,frequency,verticalShift,trig) |
There was a problem hiding this comment.
I think this should be a solid arrow since it's a method call
| activate Ui | ||
| deactivate Ui | ||
|
|
||
| TrigoGraph -> TrigoGraph |
There was a problem hiding this comment.
I think this should be a dashed arrow since it's a method return
|
|
||
| #### TrigoGraph class: | ||
|  | ||
| Step 2. Constructor for the TrigoGraph class takes in `2*sin(2*x+5)-1` and assigns it to `trigoEqn` of type String. When `startGraphAnalysis()` |
There was a problem hiding this comment.
I think you need to insert another newline before Step 2. because the Step 2. line currently begins beside the UML diagram
SSzeWen
left a comment
There was a problem hiding this comment.
Overall, table of contents and format look great, maybe more could be put into the the return arrow back for sequence diagrams.
| Step 5. If any exceptions are caught in the above steps, `printQuadraticFormulaError` would be called from UI to show an error message | ||
| to the user. | ||
|
|
||
|  |
There was a problem hiding this comment.
DG for the line quadraticFormula(), I think it would be better to include the variables to become something like
quadraticFormula(a,b,c)
| Step 5. If any exceptions are caught in the above steps, `printQuadraticFormulaError` would be called from UI to show an error message | ||
| to the user. | ||
|
|
||
|  |
There was a problem hiding this comment.
Would it be better to also add return statements, such as the variables names the functions are returning for such as the findA(), findB(), and findC() fuctions
| which will be stored in a list, and to display a list of all notes | ||
| stored by users. This functionality is achieved through the `Store.` and `List.` commands. | ||
|
|
||
|  |
There was a problem hiding this comment.
I think getCommand and getToDo for the DG at the top, the arrow should be the other way round cause it is badmaths that is calling parser's function, and the calls should have a separate activation bar
| which will be stored in a list, and to display a list of all notes | ||
| stored by users. This functionality is achieved through the `Store.` and `List.` commands. | ||
|
|
||
|  |
There was a problem hiding this comment.
for trigoGraph(), Calculator() and Quadratic(), they are constructors which make a new object, would it be better to show it in the Sequence Diagram by linking it straight to the bar instead of those objects already existing?
Implement JUnit Test for CommandHistory.java
update imports for NotesFileWriterTest
Added PPP
Reflect tp review for the matrix part
Implement DeleteTest.java
Reflect tp review for the matrix part
Update draft PPP
Added Store Sequence Diagram
add header comment
Seq diagram rectify
Add Sequence Diagram for Store
Rectify UI output command for Invalid Number Entered
Update UserGuide.md
Refine Seungjun's PPP
Fix format
handle indentation problem
Update DG
Add JavaDoc comments for the matrix part
change main README.md to BadMaths version
BadMaths is a quick lookup tool for trigonometry graphs and basic matrix operations that aims to help students save time when doing maths assignments.