AIと機械学習がDevOpsをどう変えるのか

AIと機械学習がDevOpsをどう変えるのか

人工知能と機械学習が DevOps に新たな自動化機能をもたらすにつれて、これらのテクノロジーが組織の運用をどのように最適化できるかの例を検討することが重要です。

[[346667]]

DevOps エンジニアリングは、コードの品質を損なうことなく、ソフトウェア開発プロセスを加速して顧客に価値をより早く提供することを目的としています。

従来の DevOps は過去 10 年間で大きく進歩し、現在では多くの組織が継続的インテグレーション (CI)/継続的デプロイメント (CD) パイプラインを実装できるようになりました。しかし、ほとんどの場合、組織は依然として、最適化されていない手動プロセスと手動で実行される自動プロセスの組み合わせに依存しています。

DevOpsにおける人工知能と機械学習の応用

DevOps 分野でも、人工知能と機械学習技術の台頭が見られます。これらのツールは、従来の DevOps ツール スタックに統合するための有力な候補になりつつあります。意思決定プロセスの改善から運用の自動化、コード品質の向上まで、人工知能と機械学習の助けにより、DevOps の将来は有望です。注目すべき 7 つの傾向と変化は次のとおりです。

(1)コードレビューは自動化されている

ソフトウェア開発の初期段階、コーディング自体の最初から、AI と機械学習ツールは、思考データセット (機械学習と応答型機械学習アルゴリズムの入力) に基づいて自動コードレビューとコード分析を実行できるようになりました。これらは人間の関与を減らすのに役立ちます。

さらに、コード管理およびコラボレーション ツールを使用して、ユーザーはレビュー作業負荷をチーム メンバー間で自動的に分散できます。最終結果は、これらのアルゴリズムによって簡単に見つけられるコードの欠陥、セキュリティの問題、コード関連の欠陥を早期に検出することです。これらのツールは、コードレビューにおけるノイズを削減することもできます。自動コードレビューでは、欠陥を検出するだけでなく、コーディングとセキュリティの標準も強制します。

(2)自動化を実現するコード解析ツール

AI や機械学習を活用したコード分析や改善などのスマート ツールは、数百万行のコード リポジトリから学習できます。これらのツールはコードの意図を理解し、開発者が行った変更を記録できます。そこで、これらのインテリジェント ツールは、分析するコード行ごとに提案を提供できます。

他の開発者は、コードの分析に異なるアプローチをとります。オープンソース プロジェクトの何百万行ものコードを分析した後、機械学習ツールによって強化されたコードはパフォーマンスに重点を置き、アプリケーションの応答時間を低下させる可能性のあるコストのかかるコード行を見つけるのに役立ちます。これらのツールは、リソース リーク、潜在的な同時実行競合状態、無駄な CPU サイクルなどのコード内の問題を見つけることができ、コード レビュー フェーズとアプリケーション パフォーマンス監視フェーズ中に継続的インテグレーション (CI)/継続的デプロイメント (CD) パイプラインと統合することもできます。

同じカテゴリでは、新しい機能をコーディングした後、開発者は人工知能と機械学習を活用した自動ユニットテストの作成を検討し始めました。これにより、開発者の時間を約 20% 節約できます。

(3)自己修復テスト

ビルドの受け入れと統合コーディングの後の次のフェーズは、機能テストと非機能テストです。ここで、コード作成、自己修復テストコード、メンテナンスのための人工知能と機械学習の使用が、DevOps 分野で現実のものとなりました。

テストの自動化は大きなボトルネックになる可能性があり、プロジェクトの遅延の原因となることがよくあります。信頼性の低い自動化はテスト プロセスに影響を及ぼす可能性があります。信頼性の低いテスト自動化の根本的な原因の 1 つは、テスト対象のアプリケーションとテストで使用される要素が絶えず変更されることです。スマート テクノロジーは、これらの変化を識別し、テストを調整して、より安定性と信頼性を高めるのに役立ちます。

(4)ローコード/ノーコードツール

さらに、堅牢なテスト コードを作成するスキルは高価であり、特にモバイル アプリや Web などのデジタル アプリケーションの場合、必ずしも利用できるとは限りません。ここでは、アプリケーションのフロー、画面、要素を学習することで、AI および機械学習テスト ツールは、コーディングをほとんどまたはまったく必要とせずにテストを自動的に生成できます。これらのツールは、各テスト実行間で自己修復できます。

ローコードまたはノーコード ツールを使用すると、より多くのチーム メンバーがテスト自動化作成アクティビティに参加できるようになります。また、開発者は新しい機能の作成など、より重要で緊急性の高い活動に集中するための時間を確保できます。

(5)ロボティック・プロセス・オートメーション

ロボティック プロセス オートメーション (RPA) は、人工知能と機械学習を使用したテストの自動化のもう 1 つのレイヤーです。このようなテクノロジーを使用すると、大規模な組織における、手動で時間がかかり、エラーが発生しやすく、自動化が難しいプロセスの多くを自動化できます。

(6)テスト影響分析ツール

テスト実行が完了したら、AI と機械学習のテスト影響分析 (TIA) ツールが導入され、どのテストを次のリリースに継続するか、どの領域を他の場所でカバーしないかについて意思決定者をガイドします。同じテスト カテゴリでは、AI と機械学習アルゴリズムは、思考テスト データに基づいて障害の根本原因を特定し、平均解決時間 (MTTR) を大幅に節約できます。

(7)AIOps

DevOps プロセスの後半、つまりコードが本番環境にデプロイされる前と後には、人工知能と機械学習が AIOps の新しいテクノロジーをリードします。優れた AIOps ソリューションは、インテリジェントなアプリケーション パフォーマンス監視 (APM) をカバーするだけでなく、IT インフラストラクチャ管理 (ITIM) と IT サービス管理 (ITSM) も活用します。これらを組み合わせることで、ビッグデータ上で動作し、高度な最新ソフトウェア アーキテクチャ (マイクロサービス、クラウド プラットフォームなど) に対して実行できる、生産および運用に関する洞察分析のための包括的なレイヤーが形成されます。

AI を活用した運用機能により、組織のチームはアプリケーションのサービス健全性の判断に集中し、運用データの制御と可視性を獲得できます。このようにして、DevOps チームはリアルタイムの自動インシデント管理を使用して、平均解決時間 (MTTR) を短縮できます。ここで、AI と機械学習は、運用中のアプリケーション内のログの観測可能性、傾向、予測などの分野でより多くのことを行うことができます。

AIOps ポートフォリオのこのようなツールを使用することで、チームはサービスのダウンタイムを削減し、多くの場合は防止することができます (予測アラート)。また、サポート インシデントの解決を迅速化し、大きなログ ファイルを高速に分析し、根本原因とカテゴリ (セキュリティ、ネットワーク、サーバーなど) を特定することもできます。

結論

DevOps と人間工学がなくなることはありませんが、自動化と保守が難しい単調でエラーが発生しやすいアクティビティを最適化し、高速化する上で、確かに何らかの支援が必要になります。

AI と機械学習はこれらの課題に対する優れたソリューションであり、各組織の問題を適切に分析することで、意思決定者はこれらのツールから多大な価値を得ることができます。そして、これらのソリューションが既存のプロセスやツールとシームレスに統合されて初めて成功を達成できます。 AI と機械学習を標準の DevOps ツール スタックに簡単に統合できない場合、プロジェクトは価値を提供できず、最終的には従来のソフトウェア開発手法に戻ってしまいます。

<<:  トラック輸送業界がIoTとAIを活用する方法

>>:  すぐに理解できます: 電流制限におけるリーキーバケットとトークンバケットアルゴリズム

ブログ    

推薦する

...

...

AIoTとは何ですか?なぜそれが突然、インテリジェント製造の主流トレンドになったのでしょうか?

人工知能(AI)とモノのインターネット(IoT)の組み合わせにより、自律走行車やスマートウェアラブル...

人工知能は厳しい規制の時代に入る

ChatGPTに代表されるLLM(Large Language Model)に基づく生成AIアプリケ...

...

4090はA100の代替品になるのでしょうか?トークン生成速度はA100よりわずか18%低い。上海交通大学の推論エンジンが人気。

それだけでなく、PowerInfer は、モデルの精度を維持しながら、単一の RTX 4090 (2...

2018 Baidu AI 開発者会議: Robin Li が「誰でも AI ができる」を提唱

7月4日、世界初のAI開発者カンファレンス「Baidu Create 2018」が2年目を迎えました...

資本が投資している人工知能は本当に人工知能なのでしょうか? 3分で機械学習とは何かを理解する

この記事は2300語で、3分ほど読むことをお勧めします。人工知能の機械学習が実際にどのように学習する...

人工知能と機械学習の違いは何ですか?

[[197626]]人工知能は新しい用語ではなく、その開発の歴史は数十年にわたります。それは 19...

AIOps 初心者ガイド: 基本的な概念と機能

[[380114]] [51CTO.com クイック翻訳] 世界中の企業が日常業務のデジタル化を進め...

独自の顔ぼかしツールを構築する方法

OpenCVを使用して顔認識をカスタマイズする方法[[412851]]匿名化とは、データを匿名化する...

2025年以降の人工知能の未来(パート2)

前回の記事では、2025年以降の人工知能の未来についてお話ししました(パート1)。今日は、5G、6G...

人工知能:現在も将来も有望

最近、2020年世界人工知能会議が中国上海で開催されました。各国の専門家らがオンラインで議論し、人工...

...