diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 715e40ca5f..04f3fa222b 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -135,7 +135,7 @@ The following class diagram shows the associations between classes involved in p ![](./uml/uml-images/TransactionListDiagram.png) -The following sequence diagram shows how a remove transaction goes works: +The following sequence diagram shows how an add transaction command works: ![](./uml/uml-images/addTransactionDiagram.png) diff --git a/docs/uml/addTransaction.puml b/docs/uml/addTransaction.puml index 7ee21a4311..87e9bbe1d3 100644 --- a/docs/uml/addTransaction.puml +++ b/docs/uml/addTransaction.puml @@ -4,25 +4,29 @@ autonumber actor User -participant "TransactionManager" as TM -participant "Parser" as P +participant ":TransactionManager" as TM +participant ":Parser" as P participant "UserInterface" as UI User -> TM: processTransaction(input, account) TM -> TM: validateSyntax(input) TM -> P: parseUserInputToTransaction(input, account) activate P -P --> TM: transaction -deactivate P -TM -> TM: checkCategory(transaction) +P -> P: checkCategory(transaction) + alt Category is null - TM -> UI: listCategories() + P -> UI: listCategories() activate UI UI --> User: Display category options + User --> UI: categoryNum + UI --> P: getCategoryNum() deactivate UI - User -> TM: selectCategory(categoryNum) - TM -> TM: setCategory(transaction, categoryNum) end + +P --> TM: transaction +deactivate P + + TM -> TM: addTransaction(transaction) TM -> UI: printAddMessage(transaction, account.balance) activate UI