<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Four Keys on Yossy's Notes</title><link>https://yoshihiroshu.com/tags/four-keys/</link><description>Recent content in Four Keys on Yossy's Notes</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Fri, 08 Nov 2024 12:00:00 +0900</lastBuildDate><atom:link href="https://yoshihiroshu.com/tags/four-keys/index.xml" rel="self" type="application/rss+xml"/><item><title>Four Keys 他社事例 01</title><link>https://yoshihiroshu.com/blog/four-keys-case-study-01/</link><pubDate>Fri, 08 Nov 2024 12:00:00 +0900</pubDate><guid>https://yoshihiroshu.com/blog/four-keys-case-study-01/</guid><description>&lt;div>&lt;a id="td-block-0" class="td-offset-anchor">&lt;/a>&lt;/div>
&lt;section class="row td-box td-box--white td-box--height-auto">
&lt;div class="col">
&lt;div class="container">
&lt;p>&lt;a href="https://amzn.to/4fFOPaa">エンジニア組織を強くする 開発生産性の教科書 ～事例から学ぶ、生産性向上への取り組み方～&lt;/a>を読んで、自分の言葉に直しました。&lt;/p>
&lt;h2 id="背景">背景&lt;a class="td-heading-self-link" href="#%e8%83%8c%e6%99%af" aria-label="Heading self-link">&lt;/a>&lt;/h2>&lt;p>開発生産性導入の経緯として、経営層の目線として、組織の急成長に伴い組織の生産性を可視化する必要があった。&lt;/p>
&lt;p>Four Keysを導入に伴い、それぞれのチームにおいて、以下の二つのアクションを実施した。&lt;/p>
&lt;ul>
&lt;li>Pull Request作成数を「リードタイム改善」の指標として設定(ジュニアエンジニアが多いチーム)&lt;/li>
&lt;li>リファインメントとレトロスペクティブの再設計(スクラムを導入しているチーム)&lt;/li>
&lt;/ul>
&lt;h2 id="pull-request作成数をリードタイム改善の指標として設定">Pull Request作成数を「リードタイム改善」の指標として設定&lt;a class="td-heading-self-link" href="#pull-request%e4%bd%9c%e6%88%90%e6%95%b0%e3%82%92%e3%83%aa%e3%83%bc%e3%83%89%e3%82%bf%e3%82%a4%e3%83%a0%e6%94%b9%e5%96%84%e3%81%ae%e6%8c%87%e6%a8%99%e3%81%a8%e3%81%97%e3%81%a6%e8%a8%ad%e5%ae%9a" aria-label="Heading self-link">&lt;/a>&lt;/h2>&lt;p>チームメンバーとテックリードの間でPull Request作成数に差があったことがあり、目標として設定した。&lt;/p>
&lt;h3 id="課題">課題&lt;a class="td-heading-self-link" href="#%e8%aa%b2%e9%a1%8c" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;ul>
&lt;li>Pull Requestの作成を増やすためには、単位を小さくする必要がある&lt;/li>
&lt;li>そのためには、タスクの粒度を小さくする必要があり、仕様の深い理解が必要&lt;/li>
&lt;/ul>
&lt;h3 id="取り組み">取り組み&lt;a class="td-heading-self-link" href="#%e5%8f%96%e3%82%8a%e7%b5%84%e3%81%bf" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;ul>
&lt;li>1on1において、個人における生産性のふりかえりを行う&lt;/li>
&lt;li>レトロスペクティブにおいて、チームの開発生産性の確認をする&lt;/li>
&lt;/ul>
&lt;h3 id="成果">成果&lt;a class="td-heading-self-link" href="#%e6%88%90%e6%9e%9c" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;ul>
&lt;li>Pull Requestが三ヶ月で二倍に増加し、一つ一つのPull Requestの負荷が下がりデプロイ頻度が上がった。&lt;/li>
&lt;li>見積りの精度が上がったことでスケジュールの後ろ倒しが少なくなり、心理的安全性の改善にもつながった。&lt;/li>
&lt;/ul>
&lt;h2 id="リファインメントとレトロスペクティブの再設計">リファインメントとレトロスペクティブの再設計&lt;a class="td-heading-self-link" href="#%e3%83%aa%e3%83%95%e3%82%a1%e3%82%a4%e3%83%b3%e3%83%a1%e3%83%b3%e3%83%88%e3%81%a8%e3%83%ac%e3%83%88%e3%83%ad%e3%82%b9%e3%83%9a%e3%82%af%e3%83%86%e3%82%a3%e3%83%96%e3%81%ae%e5%86%8d%e8%a8%ad%e8%a8%88" aria-label="Heading self-link">&lt;/a>&lt;/h2>&lt;p>「フロントエンド」や「ドメイン知識」の知識が属人化しており、稼働できないメンバーがいる時に開発が完全に止まってしまう課題があった。&lt;/p>
&lt;h3 id="リファインメントの見直し">リファインメントの見直し&lt;a class="td-heading-self-link" href="#%e3%83%aa%e3%83%95%e3%82%a1%e3%82%a4%e3%83%b3%e3%83%a1%e3%83%b3%e3%83%88%e3%81%ae%e8%a6%8b%e7%9b%b4%e3%81%97" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;p>全員が実装イメージをはっきり持てるようにするために、全てのチケットが無くなるまで、1h/一回のmtgを行った。&lt;/p>
&lt;ul>
&lt;li>社員、業務内容を問わず、参加できるメンバーは全員が参加&lt;/li>
&lt;li>全員がストーリーポイントの実装イメージをはっきり盛れるまで議論し、詳細化する&lt;/li>
&lt;li>ストーリーポイント付けの根拠をエンジニア全員が発表し、認識のずれを矯正&lt;/li>
&lt;/ul>
&lt;h3 id="プランニングの見直し">プランニングの見直し&lt;a class="td-heading-self-link" href="#%e3%83%97%e3%83%a9%e3%83%b3%e3%83%8b%e3%83%b3%e3%82%b0%e3%81%ae%e8%a6%8b%e7%9b%b4%e3%81%97" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;p>二つの方針に従って、プランニングの進め方を整備した。&lt;/p>
&lt;ul>
&lt;li>チケットを見るだけでメンバー誰もが、「作業内容の共通イメージ」を持てるようにする&lt;/li>
&lt;li>チケットを見るだけでメンバー誰もが、「なぜその作業を行うかの共通認識」を持てるようにする&lt;/li>
&lt;/ul>
&lt;p>具体的には、&lt;/p>
&lt;ul>
&lt;li>ストーリーチケットの作業内容を深掘りし(プランニングに参加していないメンバーでも同等の認識を得られる程度)、具体的な作業内容を細かく書く&lt;/li>
&lt;li>記載した具体的な作業内容を元に、全員の合意をもとサブチケットをきる&lt;/li>
&lt;/ul>
&lt;!-- 深掘りする粒度は、プランニングに参加していないメンバーでも同等の認識を得られる程度 -->
&lt;p>成果として、&lt;/p>
&lt;ul>
&lt;li>手が空いているメンバーはどのサブチケットも引き受けられるようになった。&lt;/li>
&lt;li>メンバーの負荷軽減につながり、知識量や技術力不足により進められなかったメンバーの開発生産性向上に繋がった。&lt;/li>
&lt;/ul>
&lt;h3 id="レトロスペクティブの見直し">レトロスペクティブの見直し&lt;a class="td-heading-self-link" href="#%e3%83%ac%e3%83%88%e3%83%ad%e3%82%b9%e3%83%9a%e3%82%af%e3%83%86%e3%82%a3%e3%83%96%e3%81%ae%e8%a6%8b%e7%9b%b4%e3%81%97" aria-label="Heading self-link">&lt;/a>&lt;/h3>&lt;p>KPTやフリーテーマを行っていたが、開発生産性の指標に焦点を当てたふりかえりへと設計し直した。&lt;/p>
&lt;p>話し合うことは、&lt;/p>
&lt;ul>
&lt;li>1日あたりのPull Request作成数の変化をスプリント間で比較すること&lt;/li>
&lt;li>スプリント内でマージまでに時間のかかったPull Requestの理由を深掘りすること&lt;/li>
&lt;/ul>
&lt;h2 id="pull-requestの目標やルール設計">Pull Requestの目標やルール設計&lt;a class="td-heading-self-link" href="#pull-request%e3%81%ae%e7%9b%ae%e6%a8%99%e3%82%84%e3%83%ab%e3%83%bc%e3%83%ab%e8%a8%ad%e8%a8%88" aria-label="Heading self-link">&lt;/a>&lt;/h2>&lt;p>一日当たりのPull Request作成数と、Pull Requestの変更行数などを具体的なルールとして設定した&lt;/p></description></item></channel></rss>