Skip to content

[CS2113-T14-1] TheGreatDetective#41

Open
serenakemono wants to merge 659 commits into
nus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113-T14-1:master
Open

[CS2113-T14-1] TheGreatDetective#41
serenakemono wants to merge 659 commits into
nus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113-T14-1:master

Conversation

@serenakemono

Copy link
Copy Markdown

TheGreatDetective gives curious and adventurous players a chance to solve murder mysteries.

@APZH APZH left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Week 11 Tutorial

Comment thread docs/DeveloperGuide.md
=======
The class diagram below shows how the parser interacts with the other classes

![Parser class diagram design](./ParserClassDiagram.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.

Should the an abstract class be defined with "<>" or "{}"?
image

Comment thread docs/DeveloperGuide.md
Here’s a (partial) class diagram of the `Command` component:


![(partial class) diagram of Command component](./Command_Class_Diagram.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.

Do the inclusion of icons for the 'Duke', 'Command', 'XYZCommand' class follow the class diagram UML standard as discussed in class?

image

Comment thread docs/DeveloperGuide.md
The plot of the game was adopted from one of the games available in the Mini Program in WeChat called Ju Ben Sha. The original story was in Chinese and was translated to English with the help of Google Translate.

## Design & implementation
## Design

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

May want to increase the font size of your sequence diagrams as it is abit difficult to read.

Comment thread docs/DeveloperGuide.md Outdated
- Print messages to terminal depending on the scene.
- Print corresponding output to terminal according to input command.

[UML diagram for Ui](./UiUML.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.

The link to the UML diagram is broken.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image
Is there supposed to be an image here? As the image link is broken and would it be better if you just include the image in the DG itself instead of having a link for it?

Comment thread docs/DeveloperGuide.md
The Sequence Diagram [below](./next_command_sequence_diagram.png) illustrates within the `Command` component for the `execute(ui,investigation,sceneList)` method call of the `NextCommand` class.


![Sequence diagram for execute(ui,investigation,sceneList) method call of NextCommand](./next_command_sequence_diagram.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.

image
The diagram has many components that are difficult to make out as the font is too small and some of the text is blurry.

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 agree with @titustortoiseturtle1999, but nice job on colouring the different sections to allow us to differentiate the different sections.

Comment thread docs/DeveloperGuide.md
The Sequence Diagram [below](./next_command_sequence_diagram.png) illustrates within the `Command` component for the `execute(ui,investigation,sceneList)` method call of the `NextCommand` class.


![Sequence diagram for execute(ui,investigation,sceneList) method call of NextCommand](./next_command_sequence_diagram.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.

image
For sequence diagrams, I think there should be a block for each method. eg. When execute(ui, investigation, sceneList) is called should be the start of a block.

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 activations bars are optional, but as some of your other diagrams included it, you may want to standardize it.

Comment thread docs/DeveloperGuide.md
* [Suspect Component](#Suspect-component)
* [Implementation](#Implementation)

{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.}

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 feel that there could be a section here to cover the target user and the value proposition of the product, as well as maybe a brief overview of what it does.

Comment thread docs/DeveloperGuide.md Outdated
Then read the file and store the information into array list using ```ArrayList<String> content = file.readFile()```.
Eventually, edit the content and rewrite to data file using ```file.rewriteFile(content)```

###Taking Notes For Specified Scene

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This paragraph feels a little wordy, and the length makes it disinteresting to the reader. You could consider reformatting it into something more digestible.

Comment thread docs/DeveloperGuide.md Outdated
## Design

### Architecture
![High Level Architectural design](./main_architecture.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.

image

You may want to change the return arrows to dotted arrows by using <..

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 also add a : to all your class names, like :Duke or :Ui.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image
I think the returning arrows should be dotted instead of a solid line

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 add a : to the name of the classes too.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Is this diagram needed here? As it is repeated again below at line 53.

Comment thread docs/DeveloperGuide.md Outdated
Given below is a quick overview of main components and how they interact with each other.

{Describe the value proposition: what problem does it solve?}
###Main components of the architecture

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

You may want to add a space after your ### to allow GitHub pages to render properly

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image
Adding a space after ### would allow GitHub to render the header correctly.

Comment thread docs/DeveloperGuide.md
The Sequence Diagram [below](./next_command_sequence_diagram.png) illustrates within the `Command` component for the `execute(ui,investigation,sceneList)` method call of the `NextCommand` class.


![Sequence diagram for execute(ui,investigation,sceneList) method call of NextCommand](./next_command_sequence_diagram.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.

I think activations bars are optional, but as some of your other diagrams included it, you may want to standardize it.

Comment thread docs/DeveloperGuide.md
The Sequence Diagram [below](./next_command_sequence_diagram.png) illustrates within the `Command` component for the `execute(ui,investigation,sceneList)` method call of the `NextCommand` class.


![Sequence diagram for execute(ui,investigation,sceneList) method call of NextCommand](./next_command_sequence_diagram.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.

I agree with @titustortoiseturtle1999, but nice job on colouring the different sections to allow us to differentiate the different sections.

@RemusTeo RemusTeo left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Noticed some errors with the headers, as well as some potential mistakes in the sequence diagrams.

Comment thread docs/DeveloperGuide.md Outdated
Given below is a quick overview of main components and how they interact with each other.

{Describe the value proposition: what problem does it solve?}
###Main components of the architecture

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image

Need to add a space between ### and Main, or else markdown will not generate header

Comment thread docs/DeveloperGuide.md

The Sequence Diagram below shows how the components interact with each other for the scenario where the user issues the command `/next`.

![High Level Sequence Diagram for main architecture](./main_architecture.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.

Is this image supposed to be here or in line 23? Because I notice that it is the same exact image main_architecture.png.

Comment thread docs/DeveloperGuide.md

**How the architecture components interact with each other**

The Sequence Diagram below shows how the components interact with each other for the scenario where the user issues the command `/next`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image

If the image is a sequence diagram shouldn't there be activation bars?
Also note the returning arrows, I think it should be dotted lines as well.

Comment thread docs/DeveloperGuide.md Outdated
Then read the file and store the information into array list using ```ArrayList<String> content = file.readFile()```.
Eventually, edit the content and rewrite to data file using ```file.rewriteFile(content)```

###Taking Notes For Specified Scene

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image

Need to add space between ### and Taking, or else markdown will not generate header.

Comment thread docs/DeveloperGuide.md
* The first investigation scene has a `SuspectList` containing one name, "Father",
and four clues within its corresponding `Suspect` class.

![](Suspect.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.

image

Since there is a method call for new Suspect(), does this mean that it should be using a constructor box?

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 agree with @RemusTeo. A constructor box should be added here as well.

@markuslyq markuslyq left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Few rendering errors and a few errors with some of the sequence diagrams as well.

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +7 to +18
## Content Page
* [Architecture](#Architecture)
* [Main Components of the Architecture](#Main-components-of-the-architecture)
* [Parser Component](#Parser-component)
* [Note Component](#Note-component)
* [UI Component](#UI-component)
* [Command Component](#Command-component)
* [Investigation Component](#Investigation-component)
* [Scene Component](#Scene-component)
* [Storage Component](#Storage-component)
* [Suspect Component](#Suspect-component)
* [Implementation](#Implementation)

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 add the appropriate links to correct the navigation as currently, it does not navigate to the correct sub-header.

Comment thread docs/DeveloperGuide.md Outdated
## Design

### Architecture
![High Level Architectural design](./main_architecture.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.

image
I think the returning arrows should be dotted instead of a solid line

Comment thread docs/DeveloperGuide.md Outdated
## Design

### Architecture
![High Level Architectural design](./main_architecture.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 add a : to the name of the classes too.

Comment thread docs/DeveloperGuide.md Outdated
## Design

### Architecture
![High Level Architectural design](./main_architecture.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.

Is this diagram needed here? As it is repeated again below at line 53.

Comment thread docs/DeveloperGuide.md Outdated
Given below is a quick overview of main components and how they interact with each other.

{Describe the value proposition: what problem does it solve?}
###Main components of the architecture

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image
Adding a space after ### would allow GitHub to render the header correctly.

Comment thread docs/DeveloperGuide.md Outdated
`Parser` component for the `getCommandFromUser("/next")` API call.

![Parser design](./ParserUML.png)
The class diagram below shows how the parser interacts with the other classes

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

image
I think a line indentation would make it neater.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

If Parser is calling new NextCommand() shouldn't the arrow go to the :NextCommand box, with a constructor below?

Comment thread docs/DeveloperGuide.md Outdated
- Print messages to terminal depending on the scene.
- Print corresponding output to terminal according to input command.

[UML diagram for Ui](./UiUML.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.

image
Is there supposed to be an image here? As the image link is broken and would it be better if you just include the image in the DG itself instead of having a link for it?

Comment thread docs/DeveloperGuide.md
* The first investigation scene has a `SuspectList` containing one name, "Father",
and four clues within its corresponding `Suspect` class.

![](Suspect.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.

I agree with @RemusTeo. A constructor box should be added here as well.

Comment thread docs/DeveloperGuide.md
See below for example.
- The introduction scene shows the introductory message to the user.
- The investigation scene asks the user either investigate a suspect or look into a clue.
![](Scene.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.

image
The image here is rather blurry and it makes the words unreadable.

Comment thread docs/DeveloperGuide.md Outdated
Comment on lines +209 to +212
At first ```Storage file = new Storage("name.txt")```, initialise the ```Storage``` class type with the name of the file.
Then ```file.checkPath()``` will check for existing data file and creates a new data file if the path ```./Data/name.txt```is invalid.
Then read the file and store the information into array list using ```ArrayList<String> content = file.readFile()```.
Eventually, edit the content and rewrite to data file using ```file.rewriteFile(content)```

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 a diagram can be included here to allow visualisation of how the storage component works.

@LS-Young LS-Young left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Screenshot 2021-10-29 113233
Maybe this diagram is a bit messy?

@LS-Young LS-Young left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Screenshot 2021-10-29 113233
Is this diagram a bit messy?

@LS-Young LS-Young left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Screenshot 2021-10-29 113659
Is coloring helpful for the division of the sections?

@LS-Young LS-Young left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Screenshot 2021-10-29 113948
Is suspectName, suspect, name, image, description and clueToAdd necessary here?

@LS-Young LS-Young left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Screenshot 2021-10-29 114211
Should this diagram be divided into two, so that it can be easier to read?

MaifengNg and others added 30 commits November 7, 2021 22:16
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.