-
Notifications
You must be signed in to change notification settings - Fork 282
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-T14-2] eCardnomics #39
base: master
Are you sure you want to change the base?
[CS2113-T14-2] eCardnomics #39
Conversation
…into trang-UG-DG
…into trang-UG-DG
update UG and DG
…into branch-UserGuide Merge branch-UserGuide into master
docs/DeveloperGuide.md
Outdated
|
||
#### Commands | ||
|
||
![DG-Design Commands UML](./images-dg/DG-Design-Commands.png?raw=true "Commands UML 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.
Maybe you would like to break this diagram into two parts, so that it is less complicated?
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.
Changed, thanks!
docs/DeveloperGuide.md
Outdated
interacts with `GameStorage` on package-private basis; i.e., `GameEngine` and `GameStorage` have full mutual | ||
access as if they were a single class. This is one of the main intentional design decisions. | ||
|
||
![DG-Implementation-Features-Game-Mode-Architecture](./images-dg/Game-Mode-Design.png?raw=true "Game Mode |
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.
Maybe you would like to split up this digram into two parts, so that it is less complicated?
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.
Changed, thanks!
docs/DeveloperGuide.md
Outdated
|
||
The following elaborates the execution flow of Game Mode, from after a `start` command has been parsed in Normal Mode: | ||
|
||
![DG-Implementation-Features-Game-Mode-Sequence](./images-dg/Game-Mode-Sequence.png?raw=true "Game Mode UML Sequence |
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.
Maybe it would be better to simplify this diagram/ split them up into smaller parts, so that it would be easier to follow?
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.
Changed with reference frames, thanks!
Implement one-liner commands
Merge branch-UserGuide to master
Add DG for Storage class
Update Help commands
An additional feature targeted at students who wish to use add more style to their flash cards outside of the command | ||
line option to allow keep things interesting when they are revising. | ||
|
||
The `PowerPointCommand` is parsed by `NormalParser` but the "Print to PowerPoint" command can be called from both Normal |
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.
Should there be a return to PowerpointCommand after Powerpoint is created in the sequence diagram?
I believe that the box to contain the "opt" is wrong, you may refer to the notes again, it should be a sharp box with a chip of the corner.
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/DeveloperGuide.md
Outdated
|
||
#### How to **components** interact with one another | ||
![Sequence Diagram](images-dg/Sequence%20Diagram.png) | ||
The **Sequence Diagram** above shows how the components interact for a basic `create <deck name>` command where a new deck is created and added in to the `Deck List`. |
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.
The user can also modify to tags of the decks by using tag or untag command, and uses search by tag to find | ||
a group of decks he/she is interested in. | ||
|
||
![DG-Implementation-Features-TagSequence](./images-dg/Tag.png?raw=true) |
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 the DG diagrams looks engaging in a sense that the diagrams are colored. The text explanation is clear and easy to understand.
However, you can consider having different markdowns for class and methods.
docs/DeveloperGuide.md
Outdated
* `Deck List` : A complete list of all the `Deck`s in memory. | ||
* `Storage` Reads and writes data from and to a text file. | ||
|
||
#### How to **components** interact with one another |
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.
* `Storage` Reads and writes data from and to a text file. | ||
|
||
#### How to **components** interact with one another | ||
![Sequence Diagram](images-dg/Sequence%20Diagram.png) |
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.
* `Storage` Reads and writes data from and to a text file. | ||
|
||
#### How to **components** interact with one another | ||
![Sequence Diagram](images-dg/Sequence%20Diagram.png) |
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/DeveloperGuide.md
Outdated
1. The overall logic component consists of the Parser class and Command class. | ||
2. The Parser parses the user input and creates the respective Command object. | ||
3. This command will be executed by the Main class. |
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 have missed out bolding the classes here
sequence diagram showcasing this interaction, for execution of a `CreateCommand`, e.g. `create | ||
microeconomics`: | ||
|
||
![DG-Design CreateCommand Sequence UML](./images-dg/DG-Design-Sequence-Diagram.png?raw=true "CreateCommand UML |
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.
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.
Won't terminate CreateCommand here because this just shows the creation of CreateCommand, returning createCommand
object whose sole purpose of life is to have its execute()
method called, but in this sequence diagram that is essentially a snippet of the lifeline of createCommand
I cannot also include its interactions with Main class because that's out of scope here; the point is that createCommand
does exist for the whole duration shown here.
Although, I should include some textual description of the gist of what I am conveying here, thanks!
docs/DeveloperGuide.md
Outdated
and Deck Mode. | ||
|
||
The following diagram shows how the `PowerPointCommand`'s `execute()` calls the `createNewPowerPoint()` method of `PowerPoint`. | ||
![PPTX Sequence Diagram](images-dg/DG-PPTX-Sequence-Diagram.png) |
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.
`toString(boolean isQuestion, int offset)` method of a `FlashCard` | ||
object. | ||
|
||
![DG-Implementation-Features-PP-Sequence](./images-dg/PP-Sequence.png?raw=true) |
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.
The user can also modify to tags of the decks by using tag or untag command, and uses search by tag to find | ||
a group of decks he/she is interested in. | ||
|
||
![DG-Implementation-Features-TagSequence](./images-dg/Tag.png?raw=true) |
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.
A minor comment: For the sequence diagram below, would it be better if
Main
class is put on the left-most side? Because I misunderstood it first.
I believe the idea we were trying to convey is that the user does not interact directly with the Main
class, but directly with the Ui
class instead via the Ui
's readUserInput()
method.
docs/DeveloperGuide.md
Outdated
|
||
The following elaborates the execution flow of Game Mode, from after a `start` command has been parsed in Normal Mode: | ||
|
||
![DG-Implementation-Features-Game-Mode-Sequence](./images-dg/Game-Mode-Sequence.png?raw=true "Game Mode UML Sequence |
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.
Thanks for the input! Return arrows are not mandatory, so this was intentional.
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 great design and explanation of the DG, do consider and review the mistakes I pointed.
The user can also modify to tags of the decks by using tag or untag command, and uses search by tag to find | ||
a group of decks he/she is interested in. | ||
|
||
![DG-Implementation-Features-TagSequence](./images-dg/Tag.png?raw=true) |
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.
update PPP link
…into master # Conflicts: # docs/DeveloperGuide.md # docs/images-dg/Tag-feature.png
update toc dg ug
Update DG and UG
Fix pptx deck mode bug
Update DG Storage sequence diagram to have transparent background
Update DG diagram
fix white bg images
Flash Card manager for Economics students on Command Line