Skip to content

ロール定義書

1. 概要

本プラットフォームでは、業務委託エンジニアが報酬付き Issue を取得し、AI 開発を行い MR(Merge Request)で納品するワークフローを採用する。ユーザーには以下の 3 つのロールを定義し、それぞれ明確に権限を分離する。

ロール概要
PM/マネージャープロジェクト・Issue の作成、報酬設定、予算管理、全体ダッシュボード閲覧
レビュワーMR レビュー、承認/フィードバック、報酬確定承認
業務委託エンジニアIssue 閲覧・取得・着手、MR 提出、自身の報酬履歴確認

2. ロール詳細

2.1 PM/マネージャー

プロジェクト全体を統括するロール。予算の設定・管理、Issue の作成と報酬額の決定、プロジェクト横断のダッシュボード閲覧を行う。

主な責務:

  • プロジェクトの作成・設定・アーカイブ
  • Issue の作成、報酬金額の設定・変更
  • 予算枠の設定と消化状況の管理
  • レビュワーの任命
  • 全プロジェクト横断でのダッシュボード閲覧
  • エンジニアの招待・ロール付与

2.2 レビュワー

MR のコードレビューを担当し、品質を担保するロール。レビュー結果に基づき報酬確定を承認する。

主な責務:

  • 提出された MR のコードレビュー
  • MR への承認(Approve)またはフィードバック(Request Changes)
  • 報酬確定の承認(レビュー通過後)
  • 担当プロジェクト内の Issue・MR 状況の閲覧

2.3 業務委託エンジニア

報酬付き Issue に着手し、AI を活用した開発を行い、MR で納品するロール。

主な責務:

  • 着手可能な Issue の一覧閲覧
  • Issue の取得(アサイン)・着手
  • ブランチ作成、コード実装、MR 提出
  • 自身の報酬履歴・支払いステータスの確認

3. 権限マトリクス(機能 x ロール)

凡例: O = 許可 / - = 不許可 / = 条件付き許可

3.1 プロジェクト管理

機能PM/マネージャーレビュワー業務委託エンジニア
プロジェクト作成O--
プロジェクト設定変更O--
プロジェクトアーカイブO--
プロジェクト一覧閲覧O(全件)O(担当のみ)O(参加のみ)
プロジェクト詳細閲覧OO(担当のみ)O(参加のみ)

3.2 Issue 管理

機能PM/マネージャーレビュワー業務委託エンジニア
Issue 作成O--
Issue 編集O--
Issue 削除O--
報酬金額設定・変更O--
Issue 一覧閲覧O(全件)O(担当PJ)O(着手可能のみ)
Issue 詳細閲覧OO(担当PJ)△(着手可能 + 自分が着手中)
Issue 取得(アサイン)--O
Issue 着手放棄--O(自分のもの)

3.3 MR(Merge Request)管理

機能PM/マネージャーレビュワー業務委託エンジニア
MR 提出--O
MR 一覧閲覧O(全件)O(担当PJ)O(自分のもの)
MR 詳細閲覧OO(担当PJ)O(自分のもの)
MR コードレビュー-O-
MR 承認(Approve)-O-
MR フィードバックO(コメントのみ)O-
MR マージ実行OO-

3.4 報酬・予算管理

機能PM/マネージャーレビュワー業務委託エンジニア
予算枠設定O--
予算消化状況閲覧O--
報酬確定承認-O-
報酬履歴閲覧(全体)O--
報酬履歴閲覧(自分)--O
支払いステータス閲覧O(全体)-O(自分のみ)

3.5 ユーザー・ロール管理

機能PM/マネージャーレビュワー業務委託エンジニア
ユーザー招待O--
ロール付与・変更O--
ユーザー一覧閲覧OO(担当PJ)-
自分のプロフィール編集OOO

3.6 ダッシュボード

機能PM/マネージャーレビュワー業務委託エンジニア
全体ダッシュボードO--
プロジェクト別ダッシュボードOO(担当PJ)-
個人ダッシュボードOOO

4. ロールの階層と制約

4.1 ロールの排他性

  • 1 ユーザーは 1 つのロール のみ保持する(兼任不可)
  • ロール変更は PM/マネージャーのみが実施可能
  • ロール変更時は既存のアサイン・レビュー担当を引き継ぎ処理する必要がある

4.2 ロール付与フロー

  1. PM/マネージャーがプラットフォーム上でユーザーを招待(メールアドレス指定)
  2. 招待時にロールを指定
  3. 招待されたユーザーが GitLab OAuth でログイン
  4. 初回ログイン時にプロフィール設定を完了
  5. ロールが有効化される

4.3 GitLab ロールとの対応

プラットフォームロールGitLab プロジェクトロール
PM/マネージャーOwner / Maintainer
レビュワーMaintainer
業務委託エンジニアDeveloper

GitLab 側のロールはリポジトリ操作(push、merge 等)の制御に使用し、プラットフォーム側のロールはアプリケーションレベルの権限制御に使用する。


5. 将来の拡張

  • 管理者(Admin)ロール: プラットフォーム全体の設定変更、ユーザー管理、システム設定
  • 経理ロール: 支払い処理、請求書発行、経理レポート
  • オブザーバーロール: 閲覧のみの限定的なアクセス