CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
by
teamLab
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
CI/CD「健康診断」のススメ。 現場でのボトルネック特定から、 健康診断を通じた組織的な改善手法 鵜沼慶伍 チームラボ株式会社 スマートフォンチーム 1
Slide 2
Slide 2 text
2 プロフィール 出身:沖縄県 名護市 大学:琉球大学 工学部工学科 知能情報コース (元高専生) 趣味:スマブラ、服屋巡り 鵜沼 慶伍 スマートフォンチーム 2年目(2024年度 4月 新卒入社)
Slide 3
Slide 3 text
3 会社紹介
Slide 4
Slide 4 text
4 会社紹介 社員数 61人 累計ダウンロード数 1.6億DL 平均ストア評価 4.4点
Slide 5
Slide 5 text
5 本題
Slide 6
Slide 6 text
6 CI/CD 導入していますか?
Slide 7
Slide 7 text
7 CI/CD 導入していますか? ● 自動テストによる品質の担保 ● 自動デプロイによる開発の効率化 CI/CDの導入によって得られるもの
Slide 8
Slide 8 text
8 一度設定すると追加の作業は不要と思っていませんか? CI/CDを信頼しすぎてはいないでしょうか?
Slide 9
Slide 9 text
9 CI/CD 導入していますか? 参画したプロジェクトでもすでに導入済み 少し気になることが、、、 ● 実行時間が遅い ● 自動テストが失敗することがある ただ、CIは成功しているからOK! プロジェクトの現状
Slide 10
Slide 10 text
10 CI/CD 導入していますか? ● 実行時間が遅い ○ 配布作業に待ちが発生する ● 自動テストが失敗することがある ○ その度に確認、再実行と効率が悪い プロジェクトの現状
Slide 11
Slide 11 text
11 CI/CDでみるべきポイント
Slide 12
Slide 12 text
12 CI/CDでみるべきポイント ワークフローの実行時間 ワークフローの実行回数 / スループット 平均修復時間(Mean Time To Recovery) 成功率 ※ワークフロー:CD/CDで自動化されたプロセスの流れ
Slide 13
Slide 13 text
13 CI/CDでみるべきポイント ワークフローが完了するまでにかかる時間 テストの実行時間が長い →フィードバックを受けるまでに時間がかかり作業が中断 デプロイの時間が長い →他のタスクの待ちが発生 ワークフローの実行時間
Slide 14
Slide 14 text
14 CI/CDでみるべきポイント スループット:1日あたりに実行されるワークフローの数 ワークフローの実行回数が少ない →開発が効率化できていない →手作業になっている箇所がある ワークフローの実行回数 / スループット
Slide 15
Slide 15 text
15 CI/CDでみるべきポイント ワークフローが失敗したときに次のワークフローが 正常に実行されるまでにかかった時間 MTTRが長い → 失敗を確認できていない → 失敗を放置している → 復旧するのに時間のかかる問題がある 平均修復時間(Mean Time To Recovery)
Slide 16
Slide 16 text
16 CI/CDでみるべきポイント ワークフローが失敗せずに完了する割合 成功率が悪い →不安定なテストを含んでいる →配布ができず次の工程に影響を与える 成功率
Slide 17
Slide 17 text
17 確認するには?
Slide 18
Slide 18 text
18 CI/CDでみるべきポイント Insights
Slide 19
Slide 19 text
19 CI/CDでみるべきポイント Insights
Slide 20
Slide 20 text
20 CI/CDでみるべきポイント Insights
Slide 21
Slide 21 text
21 CI/CDでみるべきポイント Insights
Slide 22
Slide 22 text
22 CI/CDでみるべきポイント Insights
Slide 23
Slide 23 text
23 CI/CDでみるべきポイント Test Insights
Slide 24
Slide 24 text
24 CI/CDでみるべきポイント Test Insights
Slide 25
Slide 25 text
25 CI/CDでみるべきポイント Test Insights
Slide 26
Slide 26 text
26 何と比較したらいい?
Slide 27
Slide 27 text
27 プロジェクトの規模や複雑さによって異なる
Slide 28
Slide 28 text
28 CI/CDでみるべきポイント 出典: The 2025 State of Software Delivery (CircleCI)
Slide 29
Slide 29 text
29 CI/CDでみるべきポイント 出典: The 2025 State of Software Delivery (CircleCI), p.10
Slide 30
Slide 30 text
30 CI/CDでみるべきポイント 実行時間 10分以内 スループット 1回以上 平均修復時間 60分以内 成功率 90%以上 ベンチマーク
Slide 31
Slide 31 text
31 プロジェクトの状態を確認
Slide 32
Slide 32 text
32 CI/CDでみるべきポイント
Slide 33
Slide 33 text
33 CI/CDの改善
Slide 34
Slide 34 text
34 CI/CDの改善 ワークフローの見直し ● ワークフロー内で重複していた処理を削除 ● 仮想マシンのリソースを最新にアップデート ● ビルドツールや関連パッケージのアップデート ● キャッシュの見直し テストコードのパフォーマンス改善 ● 不安定なテスト、時間のかかっているテストを洗い出して改善
Slide 35
Slide 35 text
35 CI/CDの改善 成果 改善前 改善後
Slide 36
Slide 36 text
36 まとめ CI/CDには評価するための4つの指標がある サービスの機能や基準を有効活用して個人の感覚だけでなく 定量的に改善することができた CI/CDの改善を通して
Slide 37
Slide 37 text
37 まとめ ● 実行時間が遅い ● 自動テストが失敗することがある 見てみぬふりをしていたり、そもそも気づいていなかった CI/CDが不健康な状態 CI/CDの改善を通して
Slide 38
Slide 38 text
38 自分のプロジェクトでの改善は終わり
Slide 39
Slide 39 text
39 組織全体で改善するには
Slide 40
Slide 40 text
40
Slide 41
Slide 41 text
41 プロジェクトごとに意識する必要がある
Slide 42
Slide 42 text
42 組織全体で改善するには プロジェクト内だけで確認していると効率が悪い ● ノウハウが共有されない ● 属人化する 組織で横断的に取り組 む必要がある プロジェクトそれぞれで確認?
Slide 43
Slide 43 text
43 3つの施策を紹介
Slide 44
Slide 44 text
44 組織全体で改善するには メトリクスチェック コストチェック プロジェクト診断
Slide 45
Slide 45 text
45 組織全体で改善するには 月に1度CIの情報から成功率の低いプロジェクトを警戒状態として通知 全体成功率が70%をきっているプロジェクトに対して以下を通知 ● プロジェクト全体成功率、総実行回数 ● 各ワークフローごとの成功率、実行回数 プロジェクト外の人が批評を行い、プロジェクトに気づきを与える メトリクスチェック
Slide 46
Slide 46 text
46 組織全体で改善するには 月に1度メトリクスと月あたりの利用量から 利用料金の妥当性 を評価する 利用料金の意図しない急増がないかを確認して コスト面で異常がないかを確認する コストチェック
Slide 47
Slide 47 text
47 組織全体で改善するには 半期ごとにプロジェクト単位で開発しやすい状況かチェック チェックリストを担当者が埋め、プロジェクト外の人が確認する ● READMEなどのファイルが整備されているか ● 開発環境や言語、ライブラリが適切にアップデートされているか ● CI/CDが整備されているか ● テストが導入されているか プロジェクト診断
Slide 48
Slide 48 text
48 組織全体で改善するには メトリクスチェック コストチェック プロジェクト診断 互いに批評することで、プロジェクトの問題に気づくことができる 限られたリソースを適切に運用できる プロジェクトメンバーが品質向上で意識するべき観点を把握し、 組織全体でプロダクトの品質の基準を高めることができる
Slide 49
Slide 49 text
49 CI/CDを不健康にしないために定期的に確認する
Slide 50
Slide 50 text
50 まさに健康診断
Slide 51
Slide 51 text
51 まとめ
Slide 52
Slide 52 text
52 まとめ ワークフローの実行時間 ワークフローの実行回数 / スループット 平均修復時間(Mean Time To Recovery) 成功率
Slide 53
Slide 53 text
53 まとめ ● CI/CDで感じる違和感を見てみぬふりをしている ● CI/CDの状態が悪いことに気づいていない CI/CDが不健康な状態 不健康なCI/CD
Slide 54
Slide 54 text
54 まとめ プロジェクト数の多い組織では横断的な取り組み が必要 組織全体での改善
Slide 55
Slide 55 text
55 まとめ メトリクスチェック コストチェック プロジェクト診断 互いに批評することで、プロジェクトの問題に気づくことができる 限られたリソースを適切に運用できる プロジェクトメンバーが品質向上で意識するべき観点を把握し、 組織全体でプロダクトの品質の基準を高めることができる
Slide 56
Slide 56 text
56 CI/CDに対して一人ひとりが意識することが大切
Slide 57
Slide 57 text
57 ぜひ皆さんも健康診断を始めてみましょう!
Slide 58
Slide 58 text
58 Flutter, iOS, Android エンジニア募集中! 新卒採用・インターンシップも通年で 募集しています! 採用情報
Slide 59
Slide 59 text
EOF