すべての記事

フロントエンドPMが決めるバックエンドとの責任分界ベストプラクティス

フロントエンドPMが決めるバックエンドとの責任分界ベストプラクティス
フロントエンドPMシリーズ 第4回 / 全5回

フロントエンドPMが決めるバックエンドとの責任分界ベストプラクティス

フロントエンド開発が荒れる原因は、
技術力不足でも、コミュニケーション不足でもない。

責任分界が曖昧なまま進んでいることだ。

特にフロントエンドPMは、次の問いから逃げられない。

これはフロントの責任か?
それともバックエンドか?

この記事では、
フロントエンドPMが判断すべき「線の引き方」
実務ベースで整理する。


なぜ責任分界は必ず揉めるのか

理由はシンプル。

🎨 フロントエンド

「体験」を見る

⚙️ バックエンド

「正しさ」を見る

この2つは、必ず衝突する。

どちらも正しい。
だからこそ、事前に線を引いていないと、必ず炎上する。


PMが理解すべき前提:フロントとバックの役割は対等ではない

まず誤解を壊す。

フロントが軽い
バックが重い

ではない。

役割が違うだけ。

⚙️ バックエンドの役割

  • 正を持つ
  • 取り消せない判断をする
  • 業務ルールを保証する

🎨 フロントエンドの役割

  • 見せる
  • 誘導する
  • 一時的に補助する

この前提を外すと、
どんな設計も破綻する。


責任分界① 「正(マスター)」はどこにあるか

最初に決めるのはこれ。

このデータの「正」はどこか?

バックエンドが正であるもの

  • 金額
  • 在庫
  • ステータス
  • 権限

フロントが持っていいのは?

  • 表示用の加工
  • 並び替え
  • 一時的な入力状態
例外なし。フロントが正を持った瞬間、事故る。
正ではないものだけ。
「これ、ズレたら誰が責任取る?」

答えが曖昧なら、
フロントに置いてはいけない。


責任分界② バリデーションはどこまでやるか

これも揉めやすい。

場所
種類
理由
フロント
未入力チェック
文字数制限
フォーマット(メール等)
UX向上のため
バック
業務ルール
整合性チェック
権限チェック
フロントは信用しない
「フロントのバリデーションは親切、バックのバリデーションは責任」

責任分界③ エラー時の責任はどこにあるか

エラー対応は、責任分界が一番露出する場面。

PMが決めるべき3点

1. エラーの種類(業務/技術)
2. 再試行できるか
3. 利用者に何を伝えるか
やってはいけない例
  • フロントでエラーを握りつぶす
  • 「想定外」で済ませる
  • とりあえず汎用メッセージ
エラーは仕様の一部。PMが決めないと、必ず後回しになる。

責任分界④ APIは「実装の詳細」ではない

フロントエンドPMが一番意識を変えるべきポイント。

APIは、フロントとバックの契約書だ。

このAPIで何を保証しているか
失敗時、何が返るか
将来項目が増えたらどうするか

ここを決めずに「とりあえず叩く」は、
設計放棄。


PMが間に入るべきタイミング

PMが介入すべきサインは明確。

これが出たら介入

  • フロントが業務判断を持ち始めた
  • バックがUXを気にし始めた
  • 「それはそっちで」が増えた

これは衝突ではなく、
線が引かれていないサイン。

PMの仕事は、どちらかの肩を持つことじゃない。

線を引くことだ。


判断に迷ったときの一文

最後に、PMが迷ったときの判断軸を1つ。

「それは、取り消せる判断か?」
取り消せる
フロント
取り消せない
バック

これで8割の議論は終わる。


まとめ:責任分界は「技術設計」ではなく「PM設計」

バックエンド
体験
フロントエンド
API
契約
エラー
仕様

これを誰が決めるか?

フロントエンドPMだ。

フロントエンドPMシリーズ 第4回 / 全5回