権限管理の都合、Group 同士をまとめたレイヤーは必要で、Organization と いうレイヤーをしぶしぶ作成した。基本は Group に全ておしつける • Group は [xxx本部 yyy部 zzzグループ] のように組織上の最小単位で作成 ◦ 階層構造ではないため、xxx本部や yyy部を表わすグループは (直所属を示す Group を除き) 作らない • ワークフロー中で承認者を見つける仕組みとして Group それぞれに Role と Role に対応する User 割り当てがある Group has many RoleAssignments, RoleAssignments belongs to Role and has User 設計にあたり - 考慮の実例
• 法務担当者: M, N, O, … • 法務部長: L • グループリーダー: A • 部長: B B部2グループ • CEO: X • CFO: Y • 法務担当者: M, N, O, … • 法務部長: L • グループリーダー: C • 部長: C 最下部の A,B,C の部分だけ違うが、共通である CEO=X, CFO=Y, …も データ上は各 Group の数だけ RoleAssignment レコードが全て存在 する。Group 1つだけ見れば承認者が分かる Group, Role, RoleAssignment のイメージ: