こんにちは。ソフトウェアプロセス改善コーチでFindy Tech Blog編集長の高橋(@Taka_bow)です。
少し時間が空いてしまいましたが、前回の続きです。
DORA Reportを正しく読み解くために、前回のブログまでに説明してきたポイントをまとめます。
- DORA Report は単なるサーベイの結果ではなく、2014年以降「科学的リサーチ」に基づいて分析されている。
- 「科学的リサーチ」の具体な内容は書籍『LeanとDevOpsの科学』で解説されている。
- Four Keysを元にしたパフォーマンスレベルは統計的な分析手法(クラスター分析)が用いられ、調査年ごとに変化する。
- DORA はこのレポートを用いて、各組織(企業)が独自の実験や仮説を立てることを望んでいる。
これらを念頭にレポートを読み解くことで、より公平で客観的な視点を養うことができると思います。 では、2024年版レポートの具体的な内容とその示唆について詳しく見ていきましょう。今回はDORA Reportの中から、私が個人的に気になったAIに関するトピックを中心にまとめました。
DORA Reportのライセンスは次の通りです。
“Accelerate State of DevOps 2024” by Google LLC is licensed under [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)
なお、DORA Report原文はGoogle Cloudのこちらのページからダウンロードできるので、ぜひ一次情報に触れてみてください。
- 開発現場におけるAIの浸透
- 生産性向上の実態
- デリバリーパフォーマンスへの悪影響
- コード生成AIが書くコードは信頼されにくい?
- AIがチームや組織のパフォーマンスに与える影響とは
- AIが個人に与える影響:利点と課題
- DORAが示す、AIのこれから
開発現場におけるAIの浸透
DORAの調査に対する回答者の大多数(81%)が、自社がアプリケーションやサービスへのAIの導入を強化するために優先順位を変えたと報告しています。さらに、49.2%の回答者は、この変化の規模を「中程度」または「大きな変化」と表現しています。
AIの活用範囲は広範囲で【Figure 3. Percentage of respondents relying on AI】によると具体的なタスクごとの活用率は次のようになっています:
ソフトウェア開発業務におけるAIの最も一般的な使用例はコードの作成と情報の要約であり、これらのタスクを職務に含む回答者のうち、それぞれ74.9%と71.2%が少なくとも一部でAIに依存していると回答しました。
職種別の分析では、データサイエンティストと機械学習スペシャリストで特にAI依存度が高い傾向にありました。一方、ハードウェアエンジニアのAI依存度は最も低くなっています。これは、ハードウェアエンジニアの業務内容がAIの一般的な活用領域と異なる性質を持つためと考えられます。
利用方法としては、
- チャットボット:78.2%
- 外部ウェブインターフェース(インターネット):73.9%
- IDEに組み込まれたAIツール:72.9%
- 内部ウェブインターフェース(社内イントラ):58.1%
でした。
生産性向上の実態
生産性への影響に対する回答は次の通りでした。
- 10%が「極端に向上」
- 25%が「中程度に向上」
- 40%が「わずかに向上」
「極端」と「中程度」を合わせて、回答者の3分の1以上となっており、AIが開発者の日常業務に実質的な価値を提供していることを裏付けています。
また、職種別にみると次のような傾向が見られるそうです。
生産性向上の程度 | 職種 |
---|---|
高い | • セキュリティ専門家 • システム管理者 • フルスタック開発者 |
低い | • モバイル開発者 • サイト信頼性エンジニア • プロジェクトマネージャー |
※他の職種と比較した相対的な評価です
DORAは、開発作業におけるAIの新規性とそれを習得するまでの時間が、開発者のコード作成能力を阻害する可能性があると考えていましたが、調査結果はDORAのこの仮説を支持しませんでした。生成AIについては、それだけ容易に扱えたということなのでしょう。
なお、AIがコード作成能力を阻害したと報告した回答者はわずか5%でした。67%の回答者はAI支援のコーディングツールによってコード作成能力が少なくとも何らかの向上を見せたと報告し、約10%はAIによって「極端な」改善が見られたと述べています。
デリバリーパフォーマンスへの悪影響
DORAにとって予想外の発見もされています。それは、ソフトウェアデリバリーのパフォーマンスへの影響です。DORAはここ数年の調査から、ソフトウェアデリバリーにおける生産性(スループット)と安定性の指標が、互いに独立した動きを示し始めていることが分かってきたのです。
従来、この2つの指標には相関関係があるとされてきました。
しかし、最新のデータは、それぞれが独立した要因として機能していることを示唆しており、個別の評価が必要になってきています。
この調査結果はAI導入がソフトウェアデリバリーパフォーマンスに悪影響を与えていることを示しています。
デリバリースループットへの影響は小さいものの、ネガティブな傾向(AI導入が25%増加するごとに推定1.5%の減少)
デリバリー安定性への悪影響は大きく、AI導入が25%増加するごとに推定7.2%の減少
この結果に対しDORAは、コード生成AIが「小さなバッチサイズの重要性」を損なっていると分析しています。
過去の調査結果に基づき、AIによる生産性とコード生成速度の根本的なパラダイムシフトが、DORAの最も基本的な原則の一つである「小さなバッチサイズの重要性」を見落とさせている可能性があると仮定しています。 つまり、AIによって同じ時間内により多くのコードを生成できるため、変更リストが大きくなっている可能性があります。DORAの調査では一貫して、大きな変更は遅く、より不安定になりやすいことが示されています。 総合的に見ると、デベロップメントプロセスの改善は、必ずしもソフトウェアデリバリーの改善に直結しないことを示唆しています。少なくとも、小さなバッチサイズや堅牢なテスト機構といった、成功するソフトウェアデリバリーの基本を適切に守らなければなりません。
この問題は、開発作業における認知負荷の観点から理解できます。当社のテックリードは開発パフォーマンス向上について次のように述べています
極論ですが、たとえ変更行数が1万行を超えていたとしても、変更内容が一意であれば問題は無いと考えています。
逆に変更行数が20行程度の不具合修正の中に「ついでにリファクタ」した内容が含まれていた場合、粒度が大きいと判断しPull requestを分割すべきなのです。
なぜならば、もし不具合修正に失敗していてrevertしようとした際に、ついでにリファクタした内容もrevertされてしまうからです。こういったケースの場合、リファクタをしたPull requestを別で作成します。
つまり本質はコードの変更行数や変更ファイル数ではなく、変更内容そのものにあるということを理解できたかと思います。
粒度が適切であれば、1行だけの修正でも、1万行の修正でも問題ありません。
10のプルリクを1回レビューするよりも、1のプルリクを10回レビューする方が、作成者、レビュワー共に負担が少ないのです。
コード生成AIは一度に大量のコードを生成できますが、本質的な問題は生成されるコードの量ではなく、認識可能なフィーチャーサイズ、つまりPull requestの粒度にあると考えられます。これがDORAの指摘する「小さなバッチサイズの重要性」の本質なのではないでしょうか。
コード生成AIが書くコードは信頼されにくい?
開発業務で使用されるAI生成コードの信頼性に対する参加者の認識は劣っていました。
大多数の回答者(87.9%)がAI生成コードの品質にある程度の信頼を寄せているとするものの、信頼の程度は全体的に低く「やや信頼」(39.2%)、「少し信頼」(27.3%)または「全く信頼せず」(11.9%)と報告しました。(Figure 5)
開発者がAIを急速に導入し、それに依存し、パフォーマンス向上に貢献すると認識している一方で、AIに対する信頼は薄いということになります。
しかし、興味深いのは、この「不信感」がAIの活用を妨げていないという点です。
開発者たちはAI生成コードを「完璧」なものとしてではなく、「改善が必要な出発点」として捉えている実態が明らかになっています。
以前このようなブログを出しましたが、
このブログで紹介した論文では、GitHub Copilotの効果を検証するため、大規模なランダム化比較試験を行っています。結果は、ジュニア開発者には生産性向上に効果をもたらすものの、シニア開発者には効果は限定的という発見がされています。
DORA Reportには回答者の熟練度による分析は含まれていません。しかし、「AIを活用しつつも信頼度は低い」という表面的な現象を裏付ける結果となっています。この点については、さらなる研究を期待したいところです。
AIがチームや組織のパフォーマンスに与える影響とは
DORAの研究では、AIの導入がチームや組織、さらには製品にどのような影響を与えるのかを分析しました。この調査によって、AIの具体的な効果や課題が明らかになっています。
組織のパフォーマンス向上
研究によれば、AIの導入が25%増加すると、組織のパフォーマンスが約2.3%向上することが分かりました。この「組織のパフォーマンス」とは、収益性、市場シェア、業務効率、顧客満足度など、複数の要素を総合的に評価したものです。 AIは、業務の効率化や意思決定の迅速化、目標達成能力の向上といった面で組織にプラスの影響を及ぼしていると考えられます。
チームのパフォーマンスにも効果
チームのパフォーマンスもAIの導入によって約1.4%向上するという結果が出ています。この「チームのパフォーマンス」には、メンバー間の協力、イノベーション、効率的な作業、適応力などが含まれます。 特に、AIはチーム内でのコミュニケーションや知識共有の促進、意思決定プロセスの効率化といった課題を解消し、チーム全体の生産性を高める役割を果たしているようです。
製品のパフォーマンスとの関連性は限定的
一方で、製品のパフォーマンス(使いやすさ、機能性、価値、セキュリティなど)については、AIの導入による明確な影響は確認されませんでした。これは、製品の成功にはAI以外の要素、たとえば開発プロセスやクリエイティビティ、ユーザー体験のデザインなどが深く関係しているためと考えられます。
チーム、組織、製品のパフォーマンスが互いに密接な関連を持つことも示しています。例えば、優れたチームは高品質な製品を生み出す可能性が高い一方で、低品質な製品を扱うとチームの力が十分に発揮されないことがあります。また、良い組織は適切なリソースやプロセスを提供することで優れたチームを育てますが、逆に組織の問題がチームの力を制限するケースも見られます。
AIが個人に与える影響:利点と課題
次に、AIの導入が個人の仕事や生活にどのような影響を与えるのかが明らかになりました。この研究では、個人の成功やウェルビーイング(幸福感)に関連する要素を分析し、AIの影響を定量的に評価しています。
AIの導入で得られる明確な利点
DORAの調査によると、AIの導入が個人の「フロー(集中力)」「生産性」「仕事の満足度」を向上させることが分かりました(下表)。たとえば、AIの導入が25%増加すると次のような効果が予想されます:
アウトカム | 予想される%の変化 (推定値) |
---|---|
フロー | +2.6% |
仕事の満足度 | +2.2% |
生産性 | +2.1% |
バーンアウト | -0.6% |
このような効果の背景には、AIによる情報の統合と効率的な作業環境の提供があります。従来は多くの時間を要した作業の効率化により、フロー状態に入りやすくなり、結果として仕事の満足度も向上します。
AIによる潜在的な課題:トレードオフ
一方で、AI導入による課題も浮かび上がっています。特に、価値ある作業に費やす時間の減少という予想外の結果が観察されました。
アウトカム | 予想される%の変化 (推定値) |
---|---|
苦労する作業の時間:長期的な価値がほとんどない反復的な手作業に費やした時間の割合を測定する単一の項目 | +0.4% |
価値ある作業の時間: 価値があると考えるタスクに費やした時間の割合を測定する単一の項目 | -2.6% |
AIは、価値ある作業(たとえばコーディング)を迅速に進めることで効率化を実現しますが、単調で繰り返しの多い労苦的な作業(たとえば会議や事務処理)にはほとんど影響を与えていません。これにより、余った時間が新たなタスクで埋められる「真空現象(vacuum hypothesis)」が起きている可能性があります。
DORAが示す、AIのこれから
DORAは今回の回答者に、今後1年、5年、10年のAIの影響についての見解や期待を尋ねています。
まず、楽観的な見方としては、AIによって製品の品質が引き続き向上すると予想しています。
一方で、AIが自身のキャリア、自然環境、そして社会全体に対して純粋にマイナスの影響を与えると予想しており、これらの悪影響が約5年後に完全に顕在化すると考えています。
「自然環境」が唐突に思われるかもしれませんが、DORAレポートの前半ではAIの環境負荷についての懸念が言及されており、具体的には、
- 2030年までにAIによってデータセンターの電力需要が160%増加する可能性
- AIモデルの学習に、米国の1,000世帯以上の年間電力消費量に相当する電力が必要
- 回答者の30%以上がAIは自然環境に有害と考えている
といった情報が添えられていました。
DORAレポートは "So now what? "という章で次のように提言しています。
私たちは、現時点でのAIが個人、チーム、そして組織を支援する可能性についての理解を深めたいと考えました。これまでに見えてきたパターンは、AIが単なる誇大宣伝ではなく、実際に確かな変化が起きていることを裏付けています。
AIを導入することの利点を示す明確な証拠が存在します。しかし同時に、多くの潜在的な障壁や成長に伴う痛み、そしてAIが有害な影響を及ぼす可能性があることも明らかです。
AIの大規模な導入は、単にスタートボタンを押すように簡単にはいきません。慎重で透明性があり、柔軟に適応できる戦略があってこそ、大きな効果が期待できます。この戦略は、リーダー、チーム、組織、研究者、そしてAI開発者が共同で作り上げていく必要があります。
リーダーと組織は、従業員を最もよく支援できる領域を優先してAIを導入する方法を見出す必要があります。
ここまで、AIに関するトピックをまとめてみました。
次回はAI関連以外の内容についてご紹介します。
ファインディでは一緒に会社を盛り上げてくれるメンバーを募集中です。興味を持っていただいた方はこちらのページからご応募お願いします。