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

C3: 縁の下をどう支えるか〜CI/CDの伝え方

C3: 縁の下をどう支えるか〜CI/CDの伝え方

July Tech Festa 2021 winter(https://techfesta.connpass.com/event/193966/)にて25分でお話した際のスライドです
・同僚にCI/CDについて紹介して開発文化を変えたい、
・上司にCI/CD導入の価値を理解してもらい、ツール導入のために投資してもらいたい
際にお役立ていただければ幸いです。
お話しを聞かれた方のツイートをこちらにまとめました: https://togetter.com/li/1656973
#JTF2021w #JTF2021w_C

More Decks by Masahiko Funaki(舟木 将彦)

Other Decks in Programming

Transcript

  1. 自己紹介 HIC Researcher Dejima Developer Sybase Eng Mgr SAP Design

    Thinker 転 Microsoft Digital Adviser 買 転 買 CircleCI Developer Advocate 転
  2. 10 きっぷなら • 一日の定義が変えられる • 終電まで有効は変えないまま、 使い始め時刻により価格を変える デジタル情報+ 自動化で タイムカードなら

    • 8時間労働が非連続でもよい • 働いた時刻(人手の需給)に応じて 時給を変える これまで「手動」でやってきたことが、「自動化」可能に 無理だったアイデアを 実装して「変化」できる
  3. 13 継続するビジネスと開発・運用の継続をつなげる プラン コード ビルド テスト リリース デプ ロイ 運用

    監視 継続的インテグレーション (CI) 継続的 デプロイ (CD) 自動化できない 完全自動化できない プルリクエスト(コードの追加・修正 )起点で 自動化 ビジネスが継続する限り、プロジェクトは続く 共有 リポジトリ上 で 常に作業 コード追加・修正時は 常にビルド・テスト (最後にまとめてやらな い→早く失敗すれば 早く品質が安定する) サービス停止せず常時 リリース/デプロイ (失敗時にはクイックに 修正 / 前バージョンに 戻せる)しくみ 運用・監視しやすい 品質をコードに反映 (必要なデータの取得、 スケーラビリティの 確保) 継続的: • お願いドリブンでな いこと • 遠慮なしに依頼可 能な状態 • 依頼しなくても 左から右に カンバンが 流れる状態 継続的ではない: 「それ、手元の  コードでは  もう直したんです  けど」
  4. 17 大人と幼稚園児の アプローチの違い 大人 18分間のほとんどを • 計画(Plan) • 構築(Build) で使い、最後の最後になって頂上にマシュマロを突き刺す

    →あえなく倒れてしまい、  (どんなに一生懸命頑張っていたとしても )結果は0cm。 幼稚園児 18分間を通じて、 • 低いタワーを作る • マシュマロを刺す: MVP - Minimum Viable Product • タワーの高さを少し高くする を繰り返す。 タワーが倒れてしまったら、直前まで立っていたタワーの高さに戻す。 →DevOpsな皆様なら、聞いたことある話 この「マシュマロチャレンジ」を 私(舟木)は2013年以来、 日本企業や海外日本企業拠点を 中心に150社以上で実施 →業界や会社ごとの 「個性」見てきています!
  5. 21 ユーザーの 中央値(2020/08) ベンチマーク目標値 スループット ワークフローの平均実行数 0.7回/日 プルリクエストのマージごと いつでも(遠慮せずに)ビルド可能 実行時間

    ワークフローの平均実行時間 4分以内 5~10分 自動化可能なことは全て任せる 平均復旧時間 ワークフローの失敗~成功の平均時 間 56分以内 60分以内 大きな失敗を最後にではなく、すぐ に復旧できる失敗を早期に 成功率 ワークフローの成功数/実行数 デフォルトブランチで 80% デフォルトブランチで 90%以上 自動化における4つの評価ポイント ここの数値を「近い目標」として ここの数値をベンチマーク対象にする
  6. 30