Skip to content

[CS2113T-T09-1] ConTech#24

Open
marcusbory wants to merge 933 commits into
nus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113T-T09-1:master
Open

[CS2113T-T09-1] ConTech#24
marcusbory wants to merge 933 commits into
nus-cs2113-AY2122S1:masterfrom
AY2122S1-CS2113T-T09-1:master

Conversation

@marcusbory

Copy link
Copy Markdown

ConTech is a Command Line Interface (CLI) app for people in the computing industry (who prefer CLI) to manage computing-related contacts. It is optimised for CLI users so that they are able to access their contacts' information (ie Github ID, LinkedIn profile, Email, etc) quickly using commands.

Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
`Contact`.


## <a name="implementation"></a>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.

i think for each functionality, adding some sample inputs & outputs is much clear?

@Mick609 Mick609 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.

Maybe you could use more types of UML diagrams in the DG. For example, object diagrams.

Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md

![Main Parser Sequence Diagram](images/MainParserSequenceDiagram.png)

### <a name="command"></a>Command

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Sections under “Design” seems not finished. Include “Command”, “ContactList”, and “TextUi”. Please fill them in soon.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

For the Command section can consider add in the Class diagram to relate all the commands together

Comment thread docs/DeveloperGuide.md
array with the details to be edited. An `EditContactCommand` with the specified parameters will then be created and
executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Edit Sequence Diagram](images/EditContactCommandSequenceDiagram.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
This diagram is a bit too big and contains a bit too many details. It would be hard to view this in the FDF format. If all the implementation is necessary for the illustration, the loop in this diagram maybe can be placed in a separate diagram as reference.

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 the constructor for EditContactCommand have not been called ?
2021-10-28 (4)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ya, I agree with Mick. The diagram seems to be too big which causes the words inside the diagram a bit hard to see. You can try changing the maxMessageLength of this diagram. Also you can consider putting new before a Constructor() call. :)

Comment thread docs/DeveloperGuide.md Outdated
## Instructions for manual testing
## <a name="manual-test"></a>Instructions for manual testing

{Give instructions on how to do a manual product testing e.g., how to load sample data to be used for testing}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Maybe you could provide some instructions here for the manual testing?

@jushg jushg 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.

Please try to separate larger diagrams (like the EditContactCommand sequence) out if possible to improve readability
2021-10-28 (5)

@jushg jushg 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.

Can consider to include some more class and object diagrams. Remember to add in the Object Deletion for the Command objects in your sequence diagrams. Overall a very detailed Developer Guide.

Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md
array with the details to be edited. An `EditContactCommand` with the specified parameters will then be created and
executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Edit Sequence Diagram](images/EditContactCommandSequenceDiagram.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 the constructor for EditContactCommand have not been called ?
2021-10-28 (4)

Comment thread docs/DeveloperGuide.md
`parseSearchQuery` and the `getDetailFlag` methods respectively. A `SearchContactCommand` with the specified parameters
will be created and executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Search Sequence Diagram](images/SearchContactCommandSequenceDiagram.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 SearchContactCommand constructor have also not been called here

Comment thread docs/DeveloperGuide.md

![Main Parser Sequence Diagram](images/MainParserSequenceDiagram.png)

### <a name="command"></a>Command

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

For the Command section can consider add in the Class diagram to relate all the commands together

Comment thread docs/DeveloperGuide.md
![Main Parser Sequence Diagram](images/MainParserSequenceDiagram.png)

### <a name="command"></a>Command
### <a name="contact-list"></a>ContactList

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Please remember to update the "Command" and "ContactList" sections soon.
2021-10-28 (2)

@Mick609 Mick609 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.

The code looks clear and understandable. It would be better if descriptions of methods can be provided.

import java.io.IOException;

public class Storage {
private final String contactFilePath;

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[marcusbory] Maybe you should use all uppercase for constant.

}

//@@author mayankp291
public static void missingArgEditMessage() {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[mayankp291] Maybe you could name the method name as a verb. For example, printMissingArgEditMessage in this case. Similar naming issues can be seen in other methods.

//allow lowercase email ids
String emailRegex = "^([\\w-\\.]+){1,64}@([\\w&&[^_]]+){2,255}.[a-z]{2,}$";
if (!detailToParse.matches(emailRegex)) {
//LOGGER.log(Level.INFO, "Regex check for Email id failed");

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[mayankp291] If you are not using this line of code for the LOGGER anymore, please delete it.

}

//@@author ashrafjfr
public static void helpMessage() {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[ashrafjfr] Maybe you could name this method as an action. For example, printHelpMessage.

System.out.println(LINE);
}

public static void welcomeMessage() {

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[lezongmun] Maybe you could name the method as an action.

public static final String BUFFER = " ";

boolean[] hasDeletedDetail(String userInput) throws InvalidFlagException, InvalidDeleteDetailException {
boolean[] hasDeletedDetail = new boolean[7]; //all false by default

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[ng-andre] I do not really understand the design of the list of boolean variables for hasDeletedDetail. Could you please specify why the length is 7? Maybe avoid the usage of magic numbers.

Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md

@t-l-xin t-l-xin 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.

Need add more details in some parts

Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
![Sysem Architecture Sequence Diagram](images/SystemArchitectureSequence.png)


### <a name="text-ui"></a>TextUi

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Text-ui does not seem to be complete, along with Command and ContactList, maybe can try finish up the details soon

Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
array with the details to be edited. An `EditContactCommand` with the specified parameters will then be created and
executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Edit Sequence Diagram](images/EditContactCommandSequenceDiagram.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.

diagram too big

same issue: diagram too big, can consider representing the circled part to something simpler

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

One way to solve this is by putting reference frame :D

Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md Outdated
## Instructions for manual testing
## <a name="manual-test"></a>Instructions for manual testing

{Give instructions on how to do a manual product testing e.g., how to load sample data to be used for testing}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Maybe can include some manual testing instructions?

Comment thread docs/DeveloperGuide.md
`parseSearchQuery` and the `getDetailFlag` methods respectively. A `SearchContactCommand` with the specified parameters
will be created and executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Search Sequence Diagram](images/SearchContactCommandSequenceDiagram.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.

diagram too big 1

Diagram also quite big, summarise the diagram more, especially the green part

Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md Outdated
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md
Comment thread docs/DeveloperGuide.md
array with the details to be edited. An `EditContactCommand` with the specified parameters will then be created and
executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Edit Sequence Diagram](images/EditContactCommandSequenceDiagram.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.

ya, I agree with Mick. The diagram seems to be too big which causes the words inside the diagram a bit hard to see. You can try changing the maxMessageLength of this diagram. Also you can consider putting new before a Constructor() call. :)

Comment thread docs/DeveloperGuide.md
array with the details to be edited. An `EditContactCommand` with the specified parameters will then be created and
executed in `Duke`. The sequence diagram below shows how the whole process is carried out.

![Edit Sequence Diagram](images/EditContactCommandSequenceDiagram.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.

One way to solve this is by putting reference frame :D

Comment thread docs/DeveloperGuide.md
ashrafjfr and others added 30 commits November 7, 2021 23:44
Add line break to marcusbory.md
Update to UG theme and ashraf PPP
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.