広告 Technology

第4回:AIと障害対応・品質改善──頼りになるが“最後は人間”

  1. HOME >
  2. Technology >

第4回:AIと障害対応・品質改善──頼りになるが“最後は人間”

はじめに

これまでの連載(連載目次)では、AIと協働しながらアプリ開発やコード修正を効率化する現場テクニックを紹介してきました。
第4回では、AIを障害対応や品質改善でどう活用できるのか、そして「AIは頼りになるが最終判断は人間」という現場のリアルについてまとめます。

※本文中のスクリプトやGitHub Copilotの回答は実際の開発時のものを抜粋して記載していますが、このまま書いても同じ回答が得られるとは限りません。ご了承ください。
※[開発者]はWebアプリの開発経験は豊富ですが、Flutterによるモバイルアプリ開発は初めての開発者です。
※本連載はAI利用の実体験にフォーカスしているため、Flutterなど技術的な詳細説明は省略しています。

障害対応・品質改善へのAI活用

(アプリをビルドしたらエラーが出た…。エラーログを全部読むのは大変だな。とりあえずAIに貼り付けてみよう)

--- VS Codeのターミナルからエラーログをコピペ ---
開発者
開発者
Copilot
Copilot
 --- エラーメッセージの確認コメント ---
1. 原因分析
--- 原因として考えられるポイント ---
2. 対応方針
--- いくつかの対応方針、改善に向けた手順の提示 ---
3. 確認事項
--- 追加で確認すべき内容または、再確認の内容 ---
4. まとめ
--- 複数提示された対応方針の中で、まずは何から実施するかの提案 ---

(修正案はわかるが、なんでこんな作りになっているんだ。。とりあえず、AIに聞いてみるか。) 

--- ソースコードをコピペ ---  
上記のソースコードのロジックがよくわからないので、1行ずつ説明をしてください。
開発者
開発者
Copilot
Copilot
--- ソースコードを1行ずつ丁寧に説明 ---

 ポイント

- ビルドエラーや実行時エラーが発生した際、エラーメッセージやスタックトレースをAIにそのまま貼り付けて相談することで、瞬時に原因の特定や修正方針のヒントを得られる場面が多くありました。
- 障害対応でソースコードの意味が分からない場合も、AIに説明を依頼することで改めて理解できることが多いです
- また、品質改善に向けた対応時にも「このテストケースが失敗する理由を教えて」とAIに依頼することで、考えられる原因や追加の確認ポイントを整理してもらえます。

複数案のアドバイス→人間が最終判断

Copilot
Copilot
- 案1:設定ファイルのパスミス修正  
- 案2:ライブラリのバージョンアップ
- 案3:キャッシュクリア後の再ビルド

(Copilotが複数の解決策を提示してくれたけど、どれが最適なんだろう…?)

各案のメリットデメリットを整理し、おすすめを教えてください。
開発者
開発者
Copilot
Copilot
- 案1:  
 --- メリットデメリットの箇条書き ---
- 案2:
 --- メリットデメリットの箇条書き ---
- 案3:
 --- メリットデメリットの箇条書き ---
まずは、案3から実施することをおすすめします。

 ポイント

- AIは一つの問題に対して複数のアプローチや修正案を提示してくれることがあります。 
- ただし、どの案を採用するか、どの方法がプロジェクトや状況に最適かは、やはり人間が最終判断する必要があります。
- 最終判断をする材料が不足している場合でも、AIの分析結果は有用な情報となります。
- 「どの案が現実的か」「リスクは何か」を開発者自身が確認し、選択・実行することが重要です。

出力されたデバッグログのコピペでAIと状況共有

(ブレークポイントで変数をウォッチするのも良いけど、AIと手軽に情報共有できない…。AIが分析しやすいようなログ出力文を書いてもらおう。)

現在発生しているエラーを特定するために、参考となるデバッグログの出力コードを提案してください。
開発者
開発者
Copilot
Copilot
--- デバッグログ出力を含んだソースコードを提供 ---

(修正ポイントはデバッグログだけだな。ソースコードへ反映して、再度デバッグ実行!お、出た。) 

--- 開発者が実装時に出力したデバッグログをコピペ ---
開発者
開発者
Copilot
Copilot
詳細なログ情報の提供をありがとうございます。  
--- ログ内容の解析結果や、次に確認すべきポイント・追加のデバッグ方法を提案 ---

 ポイント

- 出力されたデバッグログをAIに共有することで、状況理解や追加のデバッグ方法、切り分け方のヒントなども得られます。
-「このログから読み取れる異常は?」「次にどこを調べればいい?」とAIに尋ねることで、デバッグの流れを整理しやすくなります。

プロジェクト全体や複合的な質問はAIが苦手なことも

(この障害、複数モジュールや外部サービスも絡んでいて複雑…。AIに相談したけど、ちょっと的外れな回答になったな。追加の機能実装の時も、違う機能への影響分析ができていない…。)

開発者
開発者

 ポイント

- AIは1つのエラーや1つの現象に対しては強力なアドバイスをくれますが、プロジェクト全体を横断したり、複数要因が絡む複雑なトラブルシュートでは、情報の抜けや的外れな提案も出やすいです。
- そのため、全体像を把握した上で「AIのアドバイスを鵜呑みにせず、最終的には人間が状況を整理して判断する」ことが、やはり欠かせません。
- プロジェクト全体において影響が想定されるソースコードがある場合は、現在のプレビューに加えて、そのソースコードもAIに添付して分析を依頼すると、より的確な提案が得られることもありました。

おわりに

今回は、障害対応や品質改善の現場でAIをどう活用できるか、そして「頼りになるが最後は人間が決める」ことの重要性について紹介しました。
今回のようなモバイルアプリ開発だけでなく、業務システム開発においても障害対応や品質改善は重要なポイントとなります。AIの活用できる部分とできない部分を把握することで、より効率的なシステム開発につながれば幸いです。

最後までお読みいただきありがとうございました。
次回は、いよいよ最終回です。AIが開発にもたらす“楽しさ”や、チームにAIを根付かせるための工夫について掘り下げていきます。

※本記事は当社による2025年のモバイルアプリ開発実体験を元に記載しています。日々、GitHub CopilotおよびAIエンジンは進化しているため、最新の状況とは異なる場合もあります。もっと良い活用方法があるかもしれませんが、あくまで一つの事例としてお読みいただけますと幸いです。


TravelPassportアプリは以下からダウンロードできます。

-Technology
-, , , , , ,