-
-
Save shunirr/2bd6a5a00b966e1e534b443790c68eda to your computer and use it in GitHub Desktop.
@startuml | |
!define SenmonName 誤認逮捕された専門学校生 | |
!define CriminalName 犯罪中学生 | |
!define RakusatsuName 落札者 | |
participant "SenmonName" as Senmon | |
participant "CriminalName" as Criminal | |
participant "女子高生ら2人" as JK_2 | |
participant "チケット販売サイト" as TicketShop | |
participant "RakusatsuName" as Rakusatsu | |
Senmon -> Criminal : チケット 8 万円で売ります | |
Senmon <- Criminal : 買います | |
Senmon -> Criminal : 「SenmonName」の口座を教える | |
Criminal -> JK_2 : チケット 4 万円で売ります | |
Criminal <- JK_2 : 買います | |
Criminal -> JK_2 : 「SenmonName」の口座を教える | |
JK_2 -> Senmon : それぞれ 4 万円入金 (計 8 万円) | |
Senmon -> Criminal : チケット送付先を教えてください | |
Criminal -> TicketShop : チケットを 6 万円で出品 | |
TicketShop <- Rakusatsu : 購入する | |
Criminal -> TicketShop : 「RakusatsuName」情報を取得 | |
Criminal <- TicketShop : 「RakusatsuName」情報を表示 | |
Senmon <- Criminal : 「RakusatsuName」の住所を教える | |
Senmon -> Rakusatsu : チケットを送付 | |
TicketShop <- Rakusatsu : チケット受け取り確認 | |
Criminal -> TicketShop : 売上出金操作 | |
Criminal <- TicketShop : 売上を「CriminalName」の口座に入金 | |
@enduml |
@tomneko ありがとうございます。反映しました。
事件説明にシーケンス図が使えるとは、目から鱗です。
良いアイデアですね。
警察署の動きも入れたらどうかな?
11行目に
TicketShop <- Rakusatsu : 6万円を入金
を挿入し、最終行を
Criminal <- TicketShop : 売上(6万円)を「CriminalName」の口座に入金
とするのは如何でしょう。
この事件、「女子高生2人」は8万円騙し取られたのに、「犯罪中学生」は6万円を手に入れているのも解りにくいところだと思うので…。
(チケットの価値を途中で2万円減じている)
というかこのシーケンス図を見て理解できました。
GithubってUML 描けるんですね。
@seec-k Rawで見ると画像のリンクを貼ってるみたいです
「チケット送付先を教えてください」は、「チケットを送付」にしたほうがいいかなと思いました。
私がここから先が分からなかったのですが、他の説明を見てチケットを送るという動作だということが分かり、全部が繋がりました。
@digitarhythm
「チケット送付先を教えてください」は、チケットを送る動作ではありません。何か勘違いされているかもしれませんが、チケットは一度も犯罪中学生の手元には送られていません。
"誤認逮捕された専門学校生" が "犯罪中学生" に「チケット送付先を教えてください」というメッセージを送ったのに対し、 "犯罪中学生" は「「落札者」の住所を教える」という返答をした、ということです。
(ちなみに 4 年前の投稿ですので、実際の事実関係が本当にこうだと保証するものではありません)
@shunirr
おお、なんと。
もう一回読み直しました。
チケットの送付は、誤認逮捕された人から、落札者ですね、理解しました。
とにかく複雑ですね…この案件は…。
https://github.blog/changelog/2022-02-28-gists-now-support-mermaid-diagrams/
Gist が Mermaid 記法をサポートしたのでこちらを思い出しました。Mermaid 版貼っておきます 🙇
sequenceDiagram
participant Senmon as 誤認逮捕された専門学校生
participant Criminal as 犯罪中学生
participant JK_2 as 女子高生ら2人
participant TicketShop as チケット販売サイト
participant Rakusatsu as 落札者
Senmon ->> Criminal : チケット 8 万円で売ります
Criminal ->> Senmon : 買います
Senmon ->> Criminal : 「誤認逮捕された専門学校生」の口座を教える
Criminal ->> JK_2 : チケット 4 万円で売ります
JK_2 ->> Criminal : 買います
Criminal ->> JK_2 : 「誤認逮捕された専門学校生」の口座を教える
JK_2 ->> Senmon : それぞれ 4 万円入金 (計 8 万円)
Senmon ->> Criminal : チケット送付先を教えてください
Criminal ->> TicketShop : チケットを 6 万円で出品
Rakusatsu ->> TicketShop : 購入する
Criminal ->> TicketShop : 「落札者」情報を取得
TicketShop ->> Criminal : 「落札者」情報を表示
Criminal ->> Senmon : 「落札者」の住所を教える
Senmon ->> Rakusatsu : チケットを送付
Rakusatsu ->> TicketShop : チケット受け取り確認
Criminal ->> TicketShop : 売上出金操作
TicketShop ->> Criminal : 売上を「犯罪中学生」の口座に入金
2行目に、
Criminal -> Senmon : 買います
が抜けてますね。