EXERCISE 90分

演習:データガバナンスフレームワークを設計しよう

田中VPoE「ガバナンス概要、品質フレームワーク、プライバシー、コンプライアンスを学んだ。NetShop社のデータガバナンスフレームワーク全体を設計しよう。」

あなた「ポリシー定義から組織体制、技術実装まで包括的な設計ですね。」

田中VPoE「そうだ。経営層にも理解できるレベルの設計書を目指してくれ。」

ミッション概要

NetShop社のデータガバナンスフレームワーク全体を設計します。ポリシー策定、組織体制設計、技術的な実装計画を含みます。

前提条件

  • Step 4の各レッスン(ガバナンス概要、品質フレームワーク、プライバシー、コンプライアンス)を修了していること

Mission 1: データ分類とポリシー策定(30分)

NetShop社が保有するデータを分類し、各データに対するガバナンスポリシーを策定してください。

要件

  1. 全データ資産のインベントリ作成(最低10テーブル)
  2. 各テーブルの機密レベル分類
  3. アクセスポリシーと保持ポリシーの定義
解答例
テーブル機密レベルData Ownerアクセス権限保持期間
customersL3営業部長DS/Eng: 読取, BIチーム: マスキング読取退会後1年
ordersL2営業部長DS/Eng: 読取, BIチーム: 読取7年
payment_infoL4CFO決済チームのみ7年
productsL1商品部長全社読取無期限
customer_behaviorL2マーケ部長DS/マーケ: 読取1年
employee_dataL3人事部長人事チームのみ退職後3年
mart_daily_kpiL2DS Lead管理職以上: 読取3年
mart_customer_360L3DS LeadDS/営業: 読取(マスキング付き)1年
raw_web_logsL2Eng LeadEngチーム: 読取90日
ml_featuresL2DS LeadDSチーム: 読み書き1年

アクセスポリシー:

ロールL1L2L3L4
Data Admin全アクセス全アクセス全アクセス全アクセス
Data Engineer読み書き読み書き読取(マスキング付き)アクセス不可
Data Analyst読取読取マスキング読取アクセス不可
Business User読取ダッシュボードのみアクセス不可アクセス不可

Mission 2: データ契約の作成(30分)

NetShop社の主要テーブルに対するデータ契約を作成してください。

要件

  1. ordersテーブルとcustomersテーブルのデータ契約
  2. スキーマ定義、品質SLO、利用者を含む
  3. 違反時の対応手順
解答例
# data_contracts/orders.yml
contract:
  name: "orders"
  version: "1.0"
  owner:
    team: "sales-engineering"
    contact: "sales-eng@netshop.co.jp"
  description: "NetShop注文データ。全チャネルの注文を含む。"

schema:
  columns:
    - name: order_id
      type: string
      required: true
      unique: true
      description: "注文の一意識別子"
    - name: customer_id
      type: integer
      required: true
      description: "顧客ID(customersテーブルへの外部キー)"
    - name: total_amount
      type: numeric
      required: true
      constraints:
        min: 0
        max: 10000000
    - name: status
      type: string
      required: true
      allowed_values: [created, paid, shipped, delivered, cancelled]
    - name: order_date
      type: date
      required: true

quality_slo:
  freshness: "2 hours"
  completeness: "99.9%"
  accuracy: "99.5%"
  uniqueness: "100% (order_id)"

consumers:
  - team: "ds-team"
    use_case: "離脱予測・需要予測"
    access_level: "full"
  - team: "bi-team"
    use_case: "売上ダッシュボード"
    access_level: "read"
  - team: "marketing"
    use_case: "キャンペーン効果測定"
    access_level: "aggregated"

violation_handling:
  freshness_violation: "Slack通知 → 1時間以内に原因調査開始"
  quality_violation: "パイプライン停止 → Data Ownerに即時エスカレーション"
  schema_change: "事前にconsumer全チームに通知(最低1週間前)"

Mission 3: コンプライアンス対応計画(30分)

個人情報保護法とGDPRへの対応計画を策定してください。

要件

  1. 個人情報のデータマッピング
  2. データ主体の権利行使への対応フロー
  3. インシデント対応計画
解答例

個人情報データマッピング:

個人情報保存先暗号化マスキング削除可能
氏名customers, ordersAES-256部分マスクYes
メールアドレスcustomersAES-256ドメイン以外マスクYes
住所customersAES-256市区町村以降マスクYes
電話番号customersAES-256末尾4桁以外マスクYes
クレジットカードpayment_infoPCI DSS準拠末尾4桁のみ表示Yes
購入履歴ordersなしなし匿名化可能
閲覧履歴customer_behaviorなしなしYes

権利行使対応フロー:

1. リクエスト受付(カスタマーサポート)
2. 本人確認(身分証明書 + アカウント情報)
3. 対応判定(法的保持義務の確認)
4. 技術的対応
   - 削除: DataDeletionService実行
   - 開示: DataExportService実行
5. 完了通知(30日以内に回答)
6. 監査ログ記録

インシデント対応計画:

フェーズ対応期限
検知セキュリティチームへ即時報告即時
初動影響範囲特定、漏洩データの特定24時間以内
報告個人情報保護委員会へ報告72時間以内
通知影響を受ける本人へ通知速やかに
再発防止原因分析、対策実施2週間以内

達成度チェック

  • 全データ資産のインベントリと機密レベル分類を作成できた
  • ロールベースのアクセスポリシーを設計できた
  • 主要テーブルのデータ契約を作成できた
  • 個人情報のデータマッピングを作成できた
  • 権利行使対応フローとインシデント対応計画を策定できた

推定所要時間:90分