📖

初対面のチームのために「完成」の定義を作ってみた

2021/01/11に公開

はじめに

私は某メーカー系のDX推進の部署で、事業部のシステムを構築する仕事をしています。
今回、新チームの立ち上げにあたって、「完成」の定義をまとめたので共有したいと思います。
今後運用していく中で修正していく可能性もありますが、その場合は随時更新を行っていこうと思います。

なぜ「完成」の定義が必要か

私の部署ではスクラム開発をしているわけではないですが、アジャイル的に開発を行っています。
新規プロジェクトでは、転職や社外メンバー、アジャイル開発をしたことないメンバー等、バックグラウンドが異なるメンバーが集まったので、「完成」の定義を作っていたほうが(特に最初の数スプリントで)仕事が進めやすそうだなーと考え、作成しました。

チーム構成と担当範囲

  • PO 1名
    • 事業部と調整し、各PBIの優先順位、仕様を決める
  • デザインチーム 2名(稼働はそれぞれ、2日/週、2.5日/週)
    • 画面イメージを作る
    • CSSの実装はしない
  • 開発チーム 3名(リーダーの私含む)
    • 設計、開発、運用を担う
    • 技術スタックはReact, Next.js, TypeScript
    • デザインチームのツール(zeplin)が自動出力するCSSを活用しつつ、デザインを適用する

作業の流れ

チーム内のスプリントのタイムボックスは一週間です。
事業部との打ち合わせを月二の頻度で行い、ステージング環境でデモを行い、本番リリースしてよいか確認します。
PBIは以下の流れで進んでいきます。

  1. POにより仕様作成(※仕様は後工程でお客様、チームメンバーと議論する中で随時変更させていく。)
  2. デザインチームによりデザインイメージ作成
  3. POによるレビュー(デザインチームの完成の定義の一部)
  4. スプリントレビューでチーム全体で確認
  5. 開発チームよる開発
  6. 開発チーム内で相互レビュー(開発チームの完成の定義の一部)
  7. スプリントレビューでチームメンバー全員で確認
  8. 事業部レビューでPO、開発チームリーダーが説明

「完成」の定義

プロダクトバックログの「完成」の定義

役割ごとに「完成」の条件も異なると考えたので、分けて記述したいと思います。

PO編

  • JiraにPBIが作成されており、以下の項目が
    • 「私が [ペルソナ] なら、[希望] を実行することで [目標] を達成したい」の構造になっていること
    • ユーザーから見た振る舞いも記載されていること
    • 例:検索機能の場合
      • 「製品名」「製品の説明」を検索対象とする
      • 検索結果画面は「製品名」で昇順になっていること
      • 検索結果画面はXX件表示されること。もし、XX件ある場合はページネーションが表示されること

デザインチーム編

  • 画面のデザインが作成され、POのレビューが通っていること

上記を満たしている場合、以下の作業を行います。

  • zeplinを使用して開発チームにデザイン、CSSが共有できていること

開発チーム編

  • PBIごとにfeatureブランチが作成されていること
  • featureブランチの実装はPBIの仕様が満たせていること
    • 仕様とは、JIRAのPBIに書かれた機能、デザインのこと
  • 単体テストが書かれているこ
  • 自動テストが通っていること
  • eslint, prettierのチェックでエラーが出ていないこと
  • 開発チーム内の相互レビューが通っていること

上記を満たしている場合、以下の作業を行います。

  • developブランチにマージすること
  • developブランチの自動ビルド&デプロイが正常に通り、ローカル環境とステージング環境で同様の挙動が実現できていること

スプリントの「完成」の定義

週一のスプリントを完了するための「完成」の定義です。

  • 全てのストーリーの「完成」の定義が満たされていること
  • 全てのバグが解決しているか、対応の期限を決めていること
  • POのレビューが通っていること(スプリントレビューで実施)
  • 上記レビューで問題があった場合は、Jiraに新しいPBIが作成し、レビューが通らなかった課題とリンク付けを行うこと

製品リリースの「完成」の定義

月二の事業部レビューを完了するための「完成」の定義です。

  • 全てのスプリントの「完成」の定義が満たされていること
  • ステージング環境を動かしながら事業部と打ち合わせをし、事業部の責任者からのチェックで問題がないこと(事業部レビューで実施)
  • 上記レビューで問題があった場合は、Jiraに新しいPBIが作成し、レビューが通らなかった課題とリンク付けを行うこと

Discussion