メインコンテンツへスキップ

概要

Devin は、既存コードの理解や変更計画から、テスト、レビュー、更新のデプロイに至るまで、ソフトウェア開発ライフサイクル全体にわたって連携して動作します。

エンジニアはどこに時間を使っているのか

調査によると、エンジニアが実際にコードを書く時間は、全体の 20% 未満です(12)。残りの大部分は、コードベースの理解、変更の計画、作業のレビュー、テストに充てられています。Devin は、ソフトウェア開発ライフサイクルのこれらすべてのフェーズを高速化しつつ、最終的なコントロールを人間のエンジニアが持ち続けられるようにします。
SDLC 全体での Devin

ソフトウェア開発ライフサイクルにおける Devin の役割

既存のエンジニアリングプロセスとの連携

Devin は、提案するコード変更を含むプルリクエスト(PR)を作成することで、既存のコードベースに貢献します。Devin は、人間のエンジニアとまったく同じブランチ保護および SDLC ポリシーの対象となります。人間のエンジニアは、コード変更をマージするかどうかを判断する前に、Devin が作成した PR をレビューします。

SDLC における統合ポイント

コードの理解と計画

コードを書く前に、エンジニアは既存システムを理解し、アプローチを計画する必要があります。Devin はこのフェーズを大きく短縮できます。
DeepWiki を使用して、自動生成されたドキュメントをもとにアーキテクチャやコードを探索できます。DeepWiki はリポジトリ向けに会話形式のドキュメントを提供し、複雑なシステムや依存関係をより迅速に理解できるようにします。
Ask Devin を使って、コードベースに直接問い合わせできます。エンジニアはコード構造について質問したり、関連するファイルを見つけたり、コンポーネント間の連携方法を理解したりできるため、リバースエンジニアリングや依存関係の追跡に費やす時間を削減できます。
Devin は要件をコードベースと照らし合わせて分析し、タスクのスコープ定義と計画を行うことができます。JiraLinear と統合されている場合、Devin はチケットを自動で分析し、優先順位付けに役立つ信頼度スコアを提供します。
Devin はアラートやバックログ項目をトリアージし、課題を分類してアプローチを提案できます。これにより、エンジニアリングチームは効果的に優先順位付けを行え、初期調査にかかる時間を削減できます。

開発

Devin は開発タスクを非同期に処理できるため、エンジニアは作業を委任しつつ、より付加価値の高い活動に集中できます。
明確に定義されたタスクを Devin に非同期で委任できます。Devin は専用の環境で動作し、コード変更を準備して PR を作成・提出します。これは、複数の Devin セッションにまたがって並列化できる反復作業に特に効果的です。
Devin は大規模なモダナイゼーションプロジェクトを得意とします。たとえば、お客様は Devin を利用して、数百万行規模の ETL モノリスをモジュール化されたコンポーネントへ移行し、人手による作業時間を 8 分の1 に削減しています。Devin は、COBOL などのレガシースタックを含む何百ものリポジトリにまたがるエンドツーエンドのマイグレーションを実行できます。
Devin は、チームの規約に従って PR を作成・提出します。リポジトリ内に devin_pr_template.md ファイルが存在する場合、Devin はそれを使用して PR の説明文を一貫した形式で作成します。

テスト

Devin は自身の環境で自律的なテストループを実行し、テストカバレッジを高めて問題を早期に検出します。
Devin は、人間が用意したプレイブックに基づき、チームのテストパターンや規約に従ってテストを作成します。Devin がテストを生成すると、カバレッジは通常 1.5〜2 倍に向上し、多くの場合 90% 以上に到達します。
Devin は自身の環境でテストを実行し、テストが通過するまでコードを反復的に修正します。これには、既存のテストスイートの実行、lint や型チェックの実行を行い、そのうえで PR を送信することが含まれます。

コードレビュー

Devin はプルリクエストに対して自動的な一次レビューを提供できます。
人間のレビュアーが確認する前に PR をレビューするよう、Devin をAPI 経由で設定します。すべての PR に対して、正確性と組織のベストプラクティスへの準拠をチェックする、自動生成された一次レビューが実行されます。
Devin は PR を、コーディング標準、スタイルガイド、およびセキュリティ要件に照らして確認し、人間のレビュアーが対処できるように、潜在的な問題を検出してフラグ付けします。

セキュリティとコンプライアンス

Devin は CI/CD パイプラインに統合され、セキュリティ上の指摘事項に自動的に対応します。
Devin を CI/CD パイプラインに統合し、SonarQube、Fortify、Veracode などの静的解析ツールからの検出結果に対応できるようにします。これらのツールが問題を検出した際には、Devin がその内容を確認し、自動的に修正できます。お客様からは、約 70% の脆弱性が自動的に解決され、蓄積していたバックログが解消されるとともに、セキュリティリスクが低減されたと報告されています。
Devin はコードベース全体に対して、コンプライアンス関連の変更を実行できます。たとえば、新しい規制により数十万ファイルにわたる更新が必要になった場合でも、Devin は影響を受けるすべてのリポジトリに対して、体系的に変更を適用できます。

はじめに

Devin を SDLC に統合するには、次の手順を実行します。
  1. GitHubGitHub Enterprise ServerGitLabBitbucket、または Azure DevOps のいずれかと接続して、リポジトリを連携します
  2. Devin の PR が標準的なコードレビュー プロセスを必ず通過するように、ブランチ保護を設定します
  3. チケットベースのワークフロー向けに Jira または Linear、Devin とのチャットやコラボレーション向けに Slack または Microsoft Teams との 連携を設定します
  4. playbooksKnowledge を作成し、Devin が従うべきチームのパターンや標準を明文化します
  5. custom tools and integrations を利用して Devin の機能を拡張できるよう、MCP を接続します
  6. CI/CD 連携を設定し、自動的なセキュリティ修正とテストを有効にします