UMLを練習する、シーケンス図-3
簡単な業務フロー図
こんな流れがあったとして、これに手を加えてみる。
のつづき
ここまで作った
修正があるときのopt
作成者の成長にあわせてalt/else
事務処理を同時にするpar
@startuml title:業務フロー participant 作成者 as A participant 先輩 as B participant 上司 as C participant 関係部署 as D participant 事務 as E alt 新人の場合 A -> B:草案を提出 B -> A:内容を確認して返却 break 指摘あり A -> B:修正して提出 end else 経験者の場合 A -> C:最終原案を提出 C -> A:内容を確認して返却 end A -> C:承認を申請 C -> A:承認して返却 A -> E:承認済原本を提出 par E -> E:保管 else E -> D:複写を配布 end @enduml
依頼があったときに対応するよね
仕事って、ずっとかかわることはなく、連絡があったら動く、ってことが多い。
四六時中だとシンドイからね。
この場合は、activate/deactivate 構文になる。
@startuml title:業務フロー participant 作成者 as A participant 先輩 as B participant 上司 as C participant 関係部署 as D participant 事務 as E activate A alt 新人の場合 A -> B:草案を提出 activate B B -> A:内容を確認して返却 opt 指摘あり A -> B:修正して提出 end deactivate B else 経験者の場合 A -> C:最終原案を提出 activate C C -> A:内容を確認して返却 deactivate C end A -> C:承認を申請 activate C C -> A:承認して返却 deactivate C A -> E:承認済原本を提出 deactivate A activate E par E -> E:保管 else E -> D:複写を配布 end deactivate E @enduml
部署割りとか、入れる?
複数の登場人物がいて、複数の部署があると、部内処理か、部署間処理かわかるようにすると、わかりやすいときがある。
この場合は、box/end box構文になる。
@startuml title:業務フロー box 部署A participant 作成者 as A participant 先輩 as B participant 上司 as C end box box 部署B participant 関係部署 as D end box box 事務部 participant 事務 as E end box activate A alt 新人の場合 A -> B:草案を提出 activate B B -> A:内容を確認して返却 opt 指摘あり A -> B:修正して提出 end deactivate B else 経験者の場合 A -> C:最終原案を提出 activate C C -> A:内容を確認して返却 deactivate C end A -> C:承認を申請 activate C C -> A:承認して返却 deactivate C A -> E:承認済原本を提出 deactivate A activate E par E -> E:保管 else E -> D:複写を配布 end deactivate E @enduml
とか。