📝

CI/CDを先に整えることで得られる「Win-Win-Win」の効果

2024/10/28に公開

CI/CDを先に整えることで得られる「Win-Win-Win」の効果

よくある開発のシナリオとして、「要件をもらったらすぐに手元の環境で開発を始める」というものがあります。
しかし、 CI/CD環境を整えてから開発を開始する ことで、実は多くのメリットが得られ、依頼者、開発者、ユーザーにとっての「Win-Win-Win」な環境が生まれるのです。
なお、前提として、依頼者が要件を考えて、開発者がそれを実装し、ユーザーが別にいるよっていう状態を想定しています。

CI/CDを先に整える3つのメリット

CI/CDを先に整えると、次のようなメリットが得られます:

1. 依頼者の安心感

CI/CDが整っていると、依頼者は開発の初期段階から 進捗を確認できる環境 を手に入れることができます。
これにより、「何がどこまでできているのか」「思っていたものと違わないか」といった不安を早期に解消でき、納品の段階での大きな手戻りを防ぐことができます。

  • 小さなフィードバックループが形成される ため、開発の方向性を早期に確認できる
  • 安心して進捗を見守れる ため、開発への信用を蓄積できる

2. 開発者にとってのスムーズなデプロイ環境

CI/CDを最初に整えることで、開発者は「デプロイ方法がまだ決まっていない」状態に直面することなく、 スムーズにデプロイを進められる環境 が手に入ります。

  • コードの修正後すぐにデプロイが可能 になるため、ユーザビリティを早いタイミングで確認できる
  • インフラに関する不確定要素が解消 され、手戻りのリスクが減少
  • 開発効率の向上 に早い段階から取り組みフィードバックループを回せる

3. 公開時にスムーズなリリース

CI/CDの設定が整っていると、最終的なリリースもスムーズに行えます。
最初から「全体をリリースする準備」を整えておけば、あとは公開範囲を広げるだけで、 ユーザーがすぐにアクセスできる状態 を実現できます。

  • 段階的リリースやテストリリースが容易 にでき、トラブルを最小限に抑えられる
  • 公開までのスケジュールが見えやすく なるため、ユーザーへの通知やマーケティングもスムーズになる

なぜCI/CDを後回しにするのか?その理由と解決策

多くの開発者が、すぐに手元のローカル環境で開発を始めてしまうのはなぜでしょうか?
その背景には、次のような理由が考えられます:

  • 「開発を進めている感覚」がすぐに得られる
  • CI/CDの準備に時間がかかると誤解している
  • 「まずコードを書きたい」という開発者の習慣や心理的な動機

これらの問題を解決するために、チーム全体でCI/CDのメリットを共有し、 最初に少しの時間をかけて基盤を整えることが、長期的に見て大きな効果を生む と認識することが重要です。

まとめ

CI/CDを最初に整えることで、以下のように全体にメリットが波及します:

  • 依頼者:進捗確認が早期にでき、不安を解消
  • 開発者:デプロイ環境が整い、効率的に作業が進む
  • ユーザー:最終リリースがスムーズで、即座に製品が手に入る

これが、私たちが「Win-Win-Win」と呼ぶ理想的な開発環境です。
ぜひCI/CDを最初に整える開発アプローチをチームに広め、スムーズな開発体験を実現しましょう!

まとめのまとめ

この文書は、ChatGPTさんと議論した内容をブログにまとめてって言うて書いてもらいました。
たすかりますねー

GitHubで編集を提案

Discussion