Design Documents » 履歴 » リビジョン 4
リビジョン 3 (みぞ @mizo0203, 2018/07/07 14:05) → リビジョン 4/7 (みぞ @mizo0203, 2018/07/07 16:13)
# 設計資料
## シーケンス図
{{plantuml(png)
title しりとりアプリ起動/終了シーケンス
hide footbox
actor ユーザー as User
participant "Google Home" as G_Home
participant Dialogflow
participant "Google App Engine" as G_App_Engine
User -> G_Home : <<Voice>>\n『しりとりアプリ』を起動して
activate G_Home
G_Home -> Dialogflow : <<Event>>\nGoogle Assistant Welcome
activate Dialogflow
Dialogflow -> G_App_Engine : Google Assistant Welcome
activate G_App_Engine
alt 前回のプレイデータがある
Dialogflow <-- G_App_Engine : はじめからプレイしますか?\nつづきからプレイしますか?
deactivate G_App_Engine
G_Home <-- Dialogflow : はじめからプレイしますか?\nつづきからプレイしますか?
User <-- G_Home : <<Voice>>\nはじめからプレイしますか?\nつづきからプレイしますか?
alt はじめからプレイする
User -> G_Home : <<Voice>>\nはじめからプレイする
G_Home -> Dialogflow : はじめからプレイする
Dialogflow -> G_App_Engine : はじめからプレイする
activate G_App_Engine
deactivate G_App_Engine
else つづきからプレイする
User -> G_Home : <<Voice>>\nつづきからプレイする
G_Home -> Dialogflow : つづきからプレイする
Dialogflow -> G_App_Engine : つづきからプレイする
activate G_App_Engine
deactivate G_App_Engine
end
else 前回のプレイデータがない
G_App_Engine -> G_App_Engine : はじめからプレイする
activate G_App_Engine
deactivate G_App_Engine
end
ref over User, G_Home, Dialogflow, G_App_Engine
しりとりシーケンス(未作成)
end ref
User -> G_Home : <<Voice>>\n終了
G_Home -> Dialogflow : 終了
Dialogflow -> G_App_Engine : 終了
}}
## ユースケース図
{{plantuml(png)
left to right direction
actor : ユーザー: as User
actor :Google Home: as G_Home
package "しりとりアプリ" {
(しりとりを開始する) <|-- (はじめから)
(しりとりを開始する) <|-- (つづきから)
User -- (しりとりアプリを起動する)
(しりとりアプリを起動する) -- G_Home
User -- (はじめから)
User -- (つづきから)
(単語を言う) <|-- (有効な単語を言う)
(単語を言う) <|-- (無効な単語を言う)
(無効な単語を言う) <|-- (既出の単語を言う)
(無効な単語を言う) <|-- ('ん'終わりの単語を言う)
(無効な単語を言う) <|-- (存在しない単語を言う)
User -- (有効な単語を言う)
(有効な単語を言う) -- G_Home
User -- ('ん'終わりの単語を言う) (既出の単語を言う)
('ん'終わりの単語を言う) (既出の単語を言う) -- G_Home
User -- (既出の単語を言う) ('ん'終わりの単語を言う)
('ん'終わりの単語を言う) -- G_Home
User -- (存在しない単語を言う)
User -- (しりとりアプリを終了する)
(勝利宣言する) -- G_Home
note "ユーザーが'ん'終わりの単語を言った場合\nユーザーが 60 秒以上経過しても単語を言わなかった場合" as G_Home_Win
(勝利宣言する) .. G_Home_Win
(降参する) -- G_Home
note "Googe Home が'ん'終わりの単語を言った場合" as G_Home_Lose
(降参する) .. G_Home_Lose
(再度、単語を聞き取る) -- G_Home
note "ユーザーが既出の単語を言った場合\nユーザーが存在しない単語を言った場合" as Pardon
(再度、単語を聞き取る) .. Pardon
}
}}