2021/9/29開催の「緊急Ques」での発表スライドとなります。
イベントURL https://ques.connpass.com/event/258439/
© Kakaku.com Inc. All Rights Reserved. 1マトリクス型組織の導⼊後の変化を定量的に捉える株式会社カカクコム ⾷べログシステム本部ウェブ開発部 プロダクトチーム マネージャー関⼾ 康介株式会社カカクコム ⾷べログシステム本部技術部 Developer Productivityチームhagevvashi2022年09⽉29⽇(⽊)
View Slide
© Kakaku.com Inc. All Rights Reserved. 2⾃⼰紹介関⼾ 康介(せきど こうすけ)株式会社カカクコム ⾷べログシステム本部ウェブ開発部 プロダクトチーム マネージャーユーザー向け⾷べログメディア領域の開発担当エンジニアが企画やデザイナーなど他職種と関わっていく中で、多様な価値観に触れて個⼈として成⻑したり、常に変化していくチームづくりをしています。
© Kakaku.com Inc. All Rights Reserved. 3発表背景今回ご紹介したいのは、⾷べログの開発プロセスの品質を定量的に分析した話になりますその分析した結果を事業の成果につなげるためにも、QAエンジニアだけではなく、開発エンジニアも⼀緒に取り組みました
© Kakaku.com Inc. All Rights Reserved. 4QA観点での本発表の位置づけプロセス品質内部品質外部品質利⽤時品質詳しくは下記を参照https://www.juse.or.jp/sqip/squbok/file/squbok_rev2016_1.pdfプロセス品質:各開発⼯程のプロセス実⾏状況の品質内部品質:開発中の仕様書などの中間成果物の品質外部品質:ソフトウェア実⾏時の振る舞いの品質利⽤時品質:顧客がソフトウェアを利⽤するときの品質品質モデル JISX0129-1影響 影響 影響依存 依存 依存
© Kakaku.com Inc. All Rights Reserved. 5発表背景開発プロセスの品質を定量的に分析するにあたって、QAエンジニアと開発エンジニアで分析のWhy,What,Howについて考えました
© Kakaku.com Inc. All Rights Reserved. 6本⽇の発表内容Why:開発プロセスを改善して事業の成果につなげることWhat:今までの開発プロセス改善の取り組みとその成果→開発エンジニアより具体的な事例として、マトリクス型組織導⼊後の開発プロセス改善の取り組みについてご紹介しますHow:開発プロセスの具体的な形である開発チケットやプルリクエストのデータを集計して傾向を捉える→QAエンジニアより傾向を捉えるために⽤いた指標と分析結果をご紹介します
© Kakaku.com Inc. All Rights Reserved. 7本⽇の主題マトリクス型組織を導⼊して、開発プロセス改善に取り組んできたが、改善による変化を定量的に捉えられるか?
© Kakaku.com Inc. All Rights Reserved. 8マトリクス型組織の導⼊と開発プロセス改善の取り組み
© Kakaku.com Inc. All Rights Reserved. 9マトリクス型組織導⼊の背景組織のサイロ化による部⾨間のコミュニケーションコストの増⼤詳しくは下記を参照https://qiita.com/tkyowa/items/c0eab592d5bc356eefd6→「社内受託」のような状態を解消したい
© Kakaku.com Inc. All Rights Reserved. 10⾷べログにおけるマトリクス型組織職能横断で構成される複数のクロスファンクショナルチームがそれぞれミッションとKPIを持ち、ミッション達成(=事業の成果につなげる)に向けた開発のライフサイクル全体に責任を持つ詳しくは下記を参照https://qiita.com/tkyowa/items/c0eab592d5bc356eefd6
© Kakaku.com Inc. All Rights Reserved. 11依頼型の案件開発から職種⼀体型へ導⼊前 導⼊後案件開発の依頼企画エンジニアデザイナー企画 エンジニア デザイナー案件アイデア出し・要件定義・案件進⾏・リリース確認・クローズ
© Kakaku.com Inc. All Rights Reserved. 12開発プロセス改善の取り組み組織の形だけを変えても変化の実感は得られない事業の成果につなげることを⽬指して、開発プロセス改善に取り組んでいく
© Kakaku.com Inc. All Rights Reserved. 13開発プロセス改善で⽬指したこと変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す
© Kakaku.com Inc. All Rights Reserved. 14開発プロセス改善で⽬指したこと変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す
© Kakaku.com Inc. All Rights Reserved. 15リリース数を増やす2020年10⽉マトリクス型組織の導⼊2021年10⽉リリース数をチーム⽬標に設定効率的に成果を上げる⽅法を模索綿密な計画にもとづく機能改修から⼩さく⾼速にPDCAを回す開発プロセスへ各職種が⼀体となって開発プロセスを⾒直す⽂化リリース数の増加につながりはじめた
© Kakaku.com Inc. All Rights Reserved. 16リリース数を増やす上での課題機能改修のコンフリクト→リリース数を増やす上でのボトルネックとなる
© Kakaku.com Inc. All Rights Reserved.17機能改修のコンフリクトを防ぐSEOチームアプリUI/UXチーム機能軸レストランチームレストラン検索機能チーム:機能1:1ユーザー通知機能ユーザーチーム プレミアム会員チームミッション軸チーム:機能N:Nレストラン検索機能ユーザー通知機能機能改修はチームで完結できる各チームで様々な機能を改修するため、コンフリクトが発⽣しやすい機能軸で主管チームを整理し、主管チームへのレビューを運⽤することで、リリース数を増やすことを可能にする
© Kakaku.com Inc. All Rights Reserved. 18開発プロセス改善で⽬指したこと変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す
© Kakaku.com Inc. All Rights Reserved. 19リリース数を増やす2020年10⽉マトリクス型組織の導⼊2021年10⽉リリース数をチーム⽬標に設定効率的に成果を上げる⽅法を模索綿密な計画にもとづく機能改修から⼩さく⾼速にPDCAを回す開発プロセスへ各職種が⼀体となって開発プロセスを⾒直す⽂化リリース数の増加につながりはじめた
© Kakaku.com Inc. All Rights Reserved. 20⼩さく⾼速にPDCAを回す⼤きな機能改修よりも⼩さなユーザー体験の改善を繰り返すコスパよく効果を出していくために、リリースサイズを⼩さくするABテストを活⽤する素早くフィードバックを得るために、リリースサイズを⼩さくする
© Kakaku.com Inc. All Rights Reserved. 21開発プロセス改善で⽬指したこと変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す
© Kakaku.com Inc. All Rights Reserved. 22リリース数の増加による課題障害数増加の懸念→リリース数が増えるに伴って障害数が増えることは避けたい
© Kakaku.com Inc. All Rights Reserved. 23障害数の増加を防ぐマトリクス型組織で希薄になりがちなエンジニア間での共通認識の構築システム品質のバラつきを抑えて、障害数の増加を防ぐエンジニアが関わっていなかった要件定義の早い段階での参画⾮機能要件上のリスクを早期に検知して障害数の増加を防ぐ
© Kakaku.com Inc. All Rights Reserved. 24開発プロセス改善で⽬指したこと変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す
© Kakaku.com Inc. All Rights Reserved. 25開発プロセス改善の取り組み組織の形だけを変えても変化の実感は得られない事業の成果につなげることを⽬指して、開発プロセス改善に取り組んでいく
© Kakaku.com Inc. All Rights Reserved. 26まとめ• リリース数の増加や効果を⾒ながらの検証、職種を超えた⼀体感など、マトリクス型組織の導⼊による変化は実感できている• 事業の成果につなげるというゴールに向けては、開発プロセスを指標で捉えることがさらなる変化の機会となることを期待している→hagevvashiさんの発表に続きます!
© Kakaku.com Inc. All Rights Reserved. 27改善による変化を定量的に捉える
© Kakaku.com Inc. All Rights Reserved. 28⾃⼰紹介@hagevvashi 所属株式会社カカクコム⾷べログシステム本部 技術部Developer ProductivityチームQAユニット発表実績「⾷べログのソフトウェアテスト⾃動化デザインパターン」https://speakerdeck.com/hagevvashi/software-test-automation-patterns-at-tabelog-dot-com
© Kakaku.com Inc. All Rights Reserved. 29おさらい問い 取り組み
© Kakaku.com Inc. All Rights Reserved. 30取り組みを定量的に捉える変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指すPRマージ数実装・レビュー・テストの合計⽇数(開発チケットより)PRリバート率リリース数 ✖ 障害率 = 障害数PoCとして関⼾さん所属のプロジェクトで定量的に捉える活動を開始
© Kakaku.com Inc. All Rights Reserved. 31取り組みを定量的に捉える - リリース数変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指すPRマージ数
© Kakaku.com Inc. All Rights Reserved. 32取り組みを定量的に捉える - リリース数 - 結果分析の⽬的結果• 改善活動により、リリース数は1.28倍に増加• Four Key Metricsの分類ではEliteに所属評価指標実測値 年毎のリリース数【計測⽅法】PRマージ数業界標準【Four key metrics】Deployment frequency【基準】Elite: 245以上(※), High: 12以上年毎のリリース数• 改善活動によりリリース数が増えたことの確認件数推測1.28倍※(平⽇5⽇✖52週)➖祝⽇15⽇=245⽇
© Kakaku.com Inc. All Rights Reserved. 33取り組みを定量的に捉える - リリースサイズ変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指す実装・レビュー・テストの合計⽇数(開発チケットより)
© Kakaku.com Inc. All Rights Reserved. 34取り組みを定量的に捉える - リリースサイズ - 結果分析の⽬的• リリースサイズが⼩さくなったことの確認結果評価指標実測値 リリースサイズ【計測⽅法】実装・レビュー・テストの合計⽇数(開発チケットより)の中央値業界標準【Four key metrics】なし【基準】なしリリースサイズが1/2以下に縮⼩されたリリースサイズ⽇1/2以下
© Kakaku.com Inc. All Rights Reserved. 35取り組みを定量的に捉える - 障害率変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数事業の成果につなげることを⽬指すリリース数 ✖ 障害率 = 障害数PRリバート率
© Kakaku.com Inc. All Rights Reserved. 36取り組みを定量的に捉える - PRリバート率 - 結果分析の⽬的• 障害率を考える上での参考として、PRリバート率が業界標準でのEliteの中を推移していることを確認• PRリバート率が下がったことを確認結果• Eliteの中を推移している• 2022年のPRリバート率が2021年に⽐べ減少した評価指標【計測⽅法】PRリバート率業界標準【Four key metrics】Change failure rate【基準】Elite: 0%-15%, High: 16%-30%PRリバート率
© Kakaku.com Inc. All Rights Reserved. 37おさらい• リリース数の増加や効果を⾒ながらの検証、職種を超えた⼀体感など、マトリクス型組織の導⼊による変化は実感できている• 事業の成果につなげるというゴールに向けては、開発プロセスを指標で捉えることがさらなる変化の機会となることを期待している
© Kakaku.com Inc. All Rights Reserved. 38ここまでのまとめ変化を⽬指す 取り組みの継続リリースサイズ⼩さくする(数ヶ⽉→1週間程度)リリース数リリースサイズを⼩さくして増やす障害数1.28倍の増加 PRリバート率はEliteの中を推移1/2以下へ短縮→ 変化の実感を定量的に⽰せた
© Kakaku.com Inc. All Rights Reserved. 39さらなる変化の機会• リリース数の増加や効果を⾒ながらの検証、職種を超えた⼀体感など、マトリクス型組織の導⼊による変化は実感できている• 事業の成果につなげるというゴールに向けては、開発プロセスを指標で捉えることがさらなる変化の機会となることを期待している
© Kakaku.com Inc. All Rights Reserved. 40さらなる変化の機会 - 結果実測値 テストからリリースまでのリードタイム【計測⽅法】テスト・デプロイ待ち・デプロイ中の合計⽇数(開発チケットより)の中央値業界標準【Four key metrics】Lead time for changes【基準】Elite: 1時間以内, High: 1⽇~1週間分析の⽬的• 今までに挙げたもの以外にも指標を探索し、開発プロセスにおける改善の可能性を探す評価指標結果• Highの中を推移• Eliteへの改善の可能性ありテストからリリースまでのリードタイム⽇
© Kakaku.com Inc. All Rights Reserved. 41さらなる変化の機会 - まとめ事業の成果につなげるというゴールに向けては、開発プロセスを指標で捉えることがさらなる変化の機会となることを期待している→ テストからリリースまでのリードタイムがHighからEliteへの改善の可能性があることが分かった絶賛テスト⾃動化取り組み中
© Kakaku.com Inc. All Rights Reserved. 42本⽇の主題マトリクス型組織を導⼊して、開発プロセス改善に取り組んできたが、改善による変化を定量的に捉えられるか?
© Kakaku.com Inc. All Rights Reserved. 43全体を通した学び開発プロセス改善による変化を定量的に捉える試みを実現することができたその過程で下記の学びを得ることができた• データ分析上の学び• 試みの実現を推進する上での学び
© Kakaku.com Inc. All Rights Reserved. 44データ分析上の学び - 初めてのデータ分析への挑戦ヒストグラム(テストからリリースまでのリードタイム)外れ値⽇中央値: 0.9平均値: 5.8←外れ値に引っ張られている学び初⼼者は安易に平均値を使いがちだが、QC7つ道具等を使い適切な統計量を選ぶことが⼤切分かったこと平均よりも中央値の⽅が外れ値に対して頑健である困ったこと平均値を使うと外れ値がノイズとなってしまう件数
© Kakaku.com Inc. All Rights Reserved. 45試みの実現を推進する上での学び開発プロセス改善開発エンジニア QAエンジニアデータ分析開発エンジニア & QAエンジニア開発チケット、PRデータ組織のサイロ化は案件開発に限った話ではない...チームを超えた共有事業の成果につなげる開発チケット、PRデータ実現に向けた第⼀歩実現のイメージが持ちづらい...開発プロセス改善データ分析チーム間定例での情報交換事業の成果につなげる
© Kakaku.com Inc. All Rights Reserved. 46まとめ・マトリクス型組織の導⼊後、リリース数、リリースサイズ、障害数についての開発プロセス改善の取り組みがあった・改善による変化について、時系列や業界標準という観点でデータを参照し、定量的に捉らえることができた・開発プロセス改善による変化を定量的に捉える試みでは、チームを超えた共有が実現に向けた第⼀歩となった