Upgrade to Pro — share decks privately, control downloads, hide ads and more …

実践エクストリームプログラミング / Extreme Programming in Practice

実践エクストリームプログラミング / Extreme Programming in Practice

Kotaro Noguchi

June 24, 2022
Tweet

More Decks by Kotaro Noguchi

Other Decks in Programming

Transcript

  1. 自己紹介 • 野口光太郎(@enk_enk) • 株式会社ユーザベース Product Division ◦ ソフトウェアエンジニア •

    好きな ◦ 価値: シンプリシティ ◦ 原則: 人間性 ◦ IDE: IntelliJ IDEA ▪ Visual Studioではない
  2. 私たちのチーム(構成) • CTOが(組織図上の)リーダー、残り約100人がメンバー(役職なし) ◦ 「全員がリーダー」という言い方もよくする ◦ 自己組織化によるシェアド・リーダーシップ • 4つのロール ◦

    ソフトウェアエンジニア ◦ テストエンジニア ◦ データサイエンティスト ◦ SRE(s) • チーム全体として複数のB2B SaaSを開発・運用 ◦ ロールをミックスした3〜5人程度のサブチーム(以後「小チーム」)で主に活動
  3. 私たちのチーム(活動) • 全員同席(※今はオンライン) • 常時ペアプログラミング • 常時TDD(ATDD+TDD) • トランクベース開発と継続的デリバリー •

    ストーリー、週次サイクル、四半期サイクル • 運用も自分たちで行う • その他ふつうのアジャイルチームがやってそうなこと ◦ 朝会、ふりかえり……
  4. チームon1 ペアプロ ペア+ソロ ペア+ソロ ペアプロ モブプロ 個人作業 ペアプロ ペット プランニング

    プロダクト マネージャ ペアワーク 同じ部屋で ソロワーク モブプロ
  5. チームon1 ペアプロ ペア+ソロ ペア+ソロ ペアプロ 個人作業 ペアプロ ペット プランニング プロダクト

    マネージャ ペアワーク 同じ部屋で ソロワーク モブプロ モブプロ
  6. ペアプロ ペア+ソロ ペア+ソロ ペアプロ モブプロ 個人作業 ペアプロ ペット ペアワーク 同じ部屋で

    ソロワーク モブプロ プランニング プロダクト マネージャ チームon1
  7. ×4

  8. 価値からプラクティスへ - コミュニケーション • 100人でチーム全体 ◦ 「多様性」をエクストリームに: 100人分の多様性 ◦ 100人の「チーム」をフル活用する

    ◦ 話したい(聞きたい)ことがあれば、「小チーム」内の人とも「小チーム」外の人とも話す ▪ いつでも話す、すぐに話す ▪ 小チーム内の人とも小チーム外の人とも、それぞれ1日10〜20回くらいは話す ▪ 他部署(いわゆるビジネスサイド)の人ともすぐ話す • 頻繁なペア交代(a.k.a. プロミスキャスペアリング) ◦ 「冗長性」をエクストリームに: みんなが関わる ◦ 1〜1.5時間に1回ペア交代することで、小チーム(3〜5名程度のチーム)の全メンバーとコ ミュニケーションを取り続ける ※小チーム: ロールをミックスした3〜5人程度のサブチーム
  9. 価値からプラクティスへ - シンプリシティ • 1時間デプロイ ◦ 「経済性」をエクストリームに: 究極のフロー効率 ◦ ストーリーを極限まで薄くスライスする

    ▪ バーティカルスライス(顧客の言葉を使う)にはこだわる ◦ 但書: まだ1時間には至っていません😂 ▪ 目指しているところ ▪ ものにもよるが、今はだいたい「半日デプロイ」くらい
  10. 価値からプラクティスへ - フィードバック • トランクベース開発 ◦ 「ベイビーステップ」をエクストリームに: 小さく、常に統合し続ける ◦ リリース可能な状態を保ちながら全員がメインブランチにpushし続けることで、最新のコー

    ドを常にフィードバック • 継続的デリバリー ◦ 「流れ」をエクストリームに: 価値を目的地に届け続ける ◦ ストーリー(数時間〜2日目安)の完了ごとにリリースすることで、最短時間でユーザや本番 環境からのフィードバックを得る(まだ公開できない機能にはフィーチャーフラグを使用)
  11. 価値からプラクティスへ - 勇気、リスペクト • チームの自己選択 ◦ 「責任の引き受け」をエクストリームに: 「誰と、どの製品に取り組むか」自体を引き受ける ◦ チームシャッフル:

    毎月、「小チーム」を選択(移動)できる機会がある ▪ リーダーやマネージャが決めるのではなく、責任ある大人として自分たちで決める • キーボードを「奪い合う」(a.k.a. マイクロペアリング) ◦ 「自己相似性」をエクストリームに: サイクルを極限まで細かく ◦ ドライバーとナビゲータを行き来するのがいいのなら、数秒ごとに行き来すればいいじゃな い ▪ ベースはピンポンペアリング ◦ 勇気とリスペクトを両立するからこそできる
  12. 『The Agile Leader』の翻訳が出ます! • 『SCRUMMASTER THE BOOK』(翔泳社)の著者である Zuzana Šochováさんの本 •

    組織をアジャイルにしていくリーダーシップの話 • ユーザベースの有志4名で翻訳し、現在制作中 ◦ 2022年内刊行予定!