Skip to content
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

Branch documentation #227

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 24 additions & 3 deletions docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -266,16 +266,22 @@ The following sequence diagram shows how the view operation works:

<puml src="diagrams/ViewSequenceDiagram.puml" alt="ViewSequenceDiagram"></puml>

<box type="info" seamless>

**Note:** The lifeline for `ViewCommand` and `ViewCommandParser` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline reaches the end of diagram.

</box>
User should see the UI as shown below after entering `view 1` (The command shown in Command Box is re-inputted for the sake of clarity. After entering the command, command should be cleared)
![View](images/viewState.png)

Step 3. The user can then read or process the information stored for the viewed person.

<box type="info" seamless>

**Note:** The view command can be most effectively used with `search` and `list`. Since the view index is dependent on the Index on the filtered list shown, the user can view the profile after filtering for specific properties in a person using `search` and sorting them using `list`.

</box>

Alternatives considered

Alternative 1 (Chosen):
Expand Down Expand Up @@ -316,7 +322,7 @@ Finally, the `execute()` method of the `CreateTagCommand` creates a `Tag` object

The following activity diagram summarize what happens when a user attempts to execute the `create` command.

<puml src="diagrams/CreateTagActivityDiagram.puml" />
<puml src="diagrams/CreateTagActivityDiagram.puml" alt="CreateTagActivityDiagram"/></puml>

### Search feature

Expand Down Expand Up @@ -346,8 +352,14 @@ Step 1. The user launches the application.
Step 2. The user executes `search t/intern` command to filter candidates whose status are offered.

The following sequence diagram shows how the search operation works:
<box type="info" seamless>

**Note:** The lifeline for `FindCommand` and `FindCommandParser` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline reaches the end of diagram.
**Note:**
* The lifeline for `FindCommand` and `FindCommandParser` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline reaches the end of diagram.
* The `parse` method of `FindCommandParsers` also creates objects of the `NameContainsKeywordPredicate`, `StatusContainsKeywordPredicate` and `TagContainsKeywordPredicate` but these
were instantiations not included in the sequence diagram below for the sake of brevity. However, do note that the `n`, `s`, `t` arguments in `getPredicatesList(n, s, t)` in the sequence
diagram below refer to instances of `NameContainsKeywordPredicate`, `StatusContainstKeywordPredicate` and `TagContainsKeywordPredicate` respectively.
</box>

<puml src="diagrams/SearchSequenceDiagram.puml" alt="SearchSequenceDiagram" width/>

Expand All @@ -359,9 +371,11 @@ The following activity diagram shows summarizes what happens when a user attempt

<puml src="diagrams/SearchActivityDiagram.puml" />

<box type="info" seamless>

**Note:** The current implementation of search allows users to search by any of the categories individually or by different combinations of the categories e.g. `search n/alex bernice st/offered t/intern`
It also allows users to specify more than one search parameter for each category e.g. `search n/alex bernice`

</box>
## Delete feature

### Implementation
Expand Down Expand Up @@ -398,8 +412,12 @@ Step 2. The user executes `delete st/interviewed t/developer` command to delete

The following sequence diagram shows how the search operation works:

<box type="info" seamless>

**Note:** The lifeline for `DeleteCommand` and `DeleteCommandParser` should end at the destroy marker (X) but due to a limitation of PlantUML, the lifeline reaches the end of diagram.

</box>

<puml src="diagrams/DeleteSequenceDiagram.puml" alt="DeleteSequenceDiagram" />

Step 3. Assuming Bernice is the applicant matching the requirements, the user should see the UI below upon entering `delete st/interviewed t/developer`.
Expand All @@ -410,8 +428,11 @@ The following activity diagram shows summarizes what happens when a user attempt

<puml src="diagrams/DeleteActivityDiagram.puml" />

<box type="info" seamless>

**Note:** The current implementation of delete by tags & status allows users to search by any of the categories individually or by different combinations of the categories.
It also allows users to specify more than one delete parameter for each category e.g. `delete t/intern manager`
</box>

### Set feature

Expand Down
2 changes: 1 addition & 1 deletion docs/UserGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -734,7 +734,7 @@ An example of the `create` command being successfully executed:

3. View your newly created tags using the `listT` command.

![listT-create](images/listT-create.png)
![listT-create](images/listT-create-success.png)

Failed to create tags? Here are some possible reasons why

Expand Down
19 changes: 19 additions & 0 deletions docs/diagrams/CreateTagActivityDiagram.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
@startuml
'https://plantuml.com/activity-diagram-beta
|User|
skin rose
skinparam ActivityFontSize 15
skinparam ArrowFontSize 12
start
:Start JABPro;
:User enters create command;

if () then ([Command successfully executed])
|JABPro|
:Create tag and
add to global tag list;
else ([Command fails to execute])
:Show error message;
endif
stop
@enduml
6 changes: 3 additions & 3 deletions docs/diagrams/DeleteActivityDiagram.puml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ skinparam ActivityFontSize 15
skinparam ArrowFontSize 12
start
:Start JABPro;
:User enters command;
:User enters delete command;

if () then ([Command successfully executed])
|JABPro|
:Create tag and
add to global tag list;
:Display list without
the deleted applicant(s);
else ([Command fails to execute])
:Show error message;
endif
Expand Down
23 changes: 0 additions & 23 deletions docs/diagrams/SearchSequenceDiagram.puml
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,12 @@
!include style.puml
skinparam ArrowFontStyle plain

scale 2.0

box Logic LOGIC_COLOR_T1
participant ":LogicManager" as LogicManager LOGIC_COLOR
participant ":AddressBookParser" as AddressBookParser LOGIC_COLOR
participant ":FindCommandParser" as FindCommandParser LOGIC_COLOR
participant "f:FindCommand" as FindCommand LOGIC_COLOR
participant ":CommandResult" as CommandResult LOGIC_COLOR
participant "n:NameContainsKeywordPredicate" as NameContainsKeywordPredicate LOGIC_COLOR
participant "s:StatusContainsKeywordPredicate" as StatusContainsKeywordPredicate LOGIC_COLOR
participant "t:TagContainsKeywordPredicate" as TagContainsKeywordPredicate LOGIC_COLOR

end box

box Model MODEL_COLOR_T1
Expand All @@ -36,23 +30,6 @@ deactivate FindCommandParser
AddressBookParser -> FindCommandParser : parse("search st/offered")
activate FindCommandParser

create NameContainsKeywordPredicate
FindCommandParser -> NameContainsKeywordPredicate
activate NameContainsKeywordPredicate
NameContainsKeywordPredicate --> FindCommandParser : n
deactivate NameContainsKeywordPredicate

create StatusContainsKeywordPredicate
FindCommandParser -> StatusContainsKeywordPredicate
activate StatusContainsKeywordPredicate
StatusContainsKeywordPredicate --> FindCommandParser : s
deactivate StatusContainsKeywordPredicate

create TagContainsKeywordPredicate
FindCommandParser -> TagContainsKeywordPredicate
activate TagContainsKeywordPredicate
TagContainsKeywordPredicate --> FindCommandParser : t
deactivate TagContainsKeywordPredicate

FindCommandParser -> FindCommandParser: getPredicatesList(n, s, t)
activate FindCommandParser
Expand Down
Binary file added docs/images/listT-create-success.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading