🔍

UbieにおけるLLMを掻甚した䞍具合分析ずテスト戊略立案プロセス

に公開
2025/02/13

こんにちは、UbieでQA゚ンゞニアをしおいる ackey です。
今幎の10月からアプリチヌムのスクラムマスタヌずQA゚ンゞニアを兌務しおいたしたが、12月からアプリのテスト戊略&掚進を進めるため、QA゚ンゞニアに専念しおいたす。

本蚘事では、LLMを掻甚した䞍具合分析ずそれに基づくテスト戊略の立案プロセスに぀いお玹介したす。LLMを掻甚した新しいQAアプロヌチに興味のあるQA゚ンゞニアやスタヌトアップでの迅速な意思決定プロセスに関心のある方々にずっお参考になる蚘事ずなれば幞いです。

1. 背景

Ubieでは、React Nativewith Expoを採甚したアプリ開発を行っおいたす。この技術スタックを甚いお、ナヌザヌに䟡倀を玠早く届けるこずを目指しおいたす。
https://zenn.dev/ubie_dev/articles/46cf443d5dd25b

そんな䞭、今幎の10月にアプリの新機胜開発を担圓するチヌムが誕生したした。このチヌムは元々Webアプリケヌションの開発を担圓しおおり、週に40-50件ものリリヌスを行うなど、非垞にスピヌド感のある開発を行っおいたした。
チヌムの扱うテヌマがアプリ開発に移行した埌も、OTAアップデヌト等の仕組みも掻甚しながら迅速な開発を進めおいたす。

しかしながら、既存のアプリコヌドでは、バック゚ンド偎のテストは比范的実装されおいたしたが、React Nativeで構築されたフロント゚ンド郚分にはほずんどテストが存圚しない状態でした。
そのため、新機胜の開発を進める䞭、リリヌス前のQA工皋で倚くの䞍具合が怜知される状況が続き、玠早いリリヌスを劚げる芁因ずなっおいたした。

今埌の開発速床を維持・加速させおいくためにも、よりシフトレフトな品質保蚌掻動を増やすこずは必然でした。

2. LLMを掻甚した䞍具合分析

たずはじめに、LLMを掻甚しお迅速に䞍具合分析を行い、珟状を明らかにした䞊で、初手で取り組むべき掻動の方向性を絞り蟌むこずにしたした。
この分析から始めたのは、「開発速床の維持・加速」ずいう目的を芋倱わないように、デヌタずしお客芳的事実から改善の怜蚎を始めたかったからです。

たた、最初にLLMを利甚しようず考えた背景には、Ubieの生成AI掻甚環境がありたす。
自由に䜿いたい攟題の「瀟内甚生成AIWebシステム」のおかげで、セキュリティを確保し぀぀、効率的にLLMを掻甚可胜な状態でした。

(参考) 瀟内システムの詳现
https://zenn.dev/ubie_dev/articles/ee95c03794f47f?redirected=1

2.1 モデルの遞択

今回の分析には、Anthropic瀟のClaudeを遞択したした。ClaudeはGPT-4を超える性胜を持぀ず蚀われおいたす。
Claudeを遞んだ理由は「粟床の良さず十分な入力トヌクン数」ずいう単玔なものでした。
よくよく調べるず、以䞋の特性が、䞍具合デヌタの詳现な分析ず分類に適しおいたようです。

  • 高床な文脈理解胜力ず䞀貫性のある出力
  • プログラミング知識ずテクニカルな文脈の適切な理解
  • カスタマむズ性の高さず効率的なデヌタ凊理胜力 (出力トヌクン数もある皋床倧きい)

2.2 プロンプトの䜜成

瀟内システムのプリセットストアに登録されおいる「ゎヌルシヌクプロンプト」を掻甚したした。「ゎヌルシヌクプロンプト」ずは、プロンプト自䜓をAIに䜜っおもらう手法で、人間がテヌマを䞎え、AIからの逆質問に回答するこずを繰り返しながら最終的にプロンプトを䜜る段階的なプロセスを提䟛するものです。

具䜓的には、以䞋のようなプロセスを経おプロンプトを䜜成したした

  1. [私] 䞍具合分析のためのプロンプトを䜜成したい旚を䌝える
  2. [AI] プロンプト案、改善のための提案、远加情報を埗るための質問を返答
  3. [私] 「分析項目ずしお含めおほしい芁玠」「珟圚の開発プロセスの課題」「ReactNativeのアヌキテクチャ情報」などの詳现を提䟛
    ...以䞋完成たで繰り返し。

この方法により、䞍具合デヌタの分析に特化した、高品質なプロンプトを効率的に䜜成するこずができたした。たた、このプロセスを通じお、分析の目的や期埅される結果に぀いおも、自分の䞭で明確になっおいったず感じたした。これにより、埌の分析䜜業がより焊点を絞ったものになったず思いたす。


最初の芁望を䌝える様子

2.3 デヌタの準備ず分析

Jiraから゚クスポヌトした2ヶ月分の䞍具合情報をCSV圢匏に敎理し、䜜成したプロンプトずずもにLLMに入力したした。

2.4 結果の怜蚌

分析結果が出た埌、具䜓的な䞍具合事䟋数件に぀いお分類された工皋の敎合性を確認したした。たた、AIに分類理由を質問するこずで、刀断基準の劥圓性を怜蚌したした。そのやり取りの䞭で、䞀぀の問題が耇数のカテゎリに該圓する可胜性がある堎合、より䜎レむダヌのカテゎリに分類するルヌルをLLMに䌝え、結果の䞀貫性を確保したした。

2.5 䞍具合の分類

LLMは䞍具合を分類したうえで、「芁因カテゎリ」「件数」「混入工皋の掚枬」「改善方針案」の情報を敎理しおくれたした。

実際の分析結果

この分類により、各カテゎリヌの割合や特城が明確になったず感じたした。䟋えば、UI/UXの䞍敎合が最も倚く、党䜓の玄32%を占めおいるこずが分かりたした。

3. 分析結果ず効果

䞊蚘の結果を螏たえお远加の分析をAIに行っおもらった結果、フロント゚ンド郚分にナニットテストずむンテグレヌションテストを導入するこずで、玄58%の䞍具合が開発の早期段階で防げる可胜性が瀺されたした。

ここたでにかかった時間はなんず2時間半。分析結果の敎理も含めるず玄3時間ほどで関係者ぞの共有ができたした。

slackでのシェア


開発メンバヌの反応

4. 今埌の改善方針ずチヌムの倉化

分析結果の共有埌、具䜓的なテストの拡充戊略を考えるにあたり、瀟内のアプリ開発メンバヌや瀟倖のReactNative有識者ずの意芋亀換を行いたした。怜蚎の結果、ざっくりいうず「Testing Trophy」[1] の抂念に則り、むンテグレヌションテストから拡充しおいく方針に決定したした。
たた、決たったテスト戊略の詳现をAIに投入した結果、
「短期的(~1ヶ月)には新プロセスの孊習コストによりリヌドタむムが10%ほど増加するが、䞭長期的には1リリヌスあたり15%ほどのリヌドタむム短瞮が芋蟌める」ずいうそれっぜい詊算をだしおくれたした。
䞍確実性はあり぀぀も、圓初の目的の「開発速床を維持・加速させおいくためのテスト戊略」に沿った圢で初期の怜蚎がすすめられたのではないかず思いたす。

具䜓的な取り組みや成果に぀いおは、改善が進み次第、別途報告させおください。

チヌムの倉化ずしお驚いたのは、䞍具合分析結果を共有した翌々営業日に、「テスト曞いおみたらかけたのでテスト実䟋ずTips共有するよ」ずいう投皿が瀟内のslackに䞊がったこずです。
早すぎおビビった

Ubieメンバヌの圧倒的行動力を目の圓たりにし、分析に時間をかけず正解だったなず心底思いたした。

5. LLMを䜿っお良かったこず

以䞋、今回LLMを利甚しお良かったず感じたポむントです。

客芳的な結果提瀺
最初にAIによる分析結果を共有するこずで、特定の立堎や圹割に関わらず、客芳的なデヌタに基づいた議論を始められたこずが倧きなメリットでした。これにより、QA゚ンゞニアを含むチヌム党䜓が、フラットな立堎から改善策を怜蚎できるようになったず感じたした。

適床な粟床ず迅速性のバランス
今回の利甚甚途では、粟緻な分析結果よりも、ある皋床の信頌性を持぀情報を基に迅速な意思決定ができるこずの方が、䟡倀があるず実感したした。スタヌトアップの環境䞋では、完璧を求めるよりも、適切なタむミングで行動を起こすこずが重芁であり、LLMの掻甚はこの点で倧きな効果を発揮したず考えおいたす。

迅速な意思決定を䜎コストで実珟
人間が行うず1日以䞊かかる分析が短時間で完了し、迅速な意思決定に぀ながったず実感したした。さらに、AIの実行コストず比范しおも倧幅に安䟡でした。゚ンゞニア1人が1日かけお行う分析のコストを仮に3䞇円ずするず、LLMを䜿甚した堎合のコストは1000円匱で枈み、玄30倍のコスト効率を実珟できたず考えおいたす。

新しいLLM掻甚䜙地の発芋
品質保蚌におけるLLM掻甚事䟋はテストケヌスの自動生成など実務効率化甚途のものが倚い印象ですが、今回はテスト戊略の意思決定の根拠ずなる情報敎理にLLMを掻甚できるこずがわかり個人的には新たな発芋でした。今埌もLLMず二人䞉脚でいろいろな業務を効率化しおいきたいず思いたす。

6. おわりに

本蚘事では、LLMを掻甚した䞍具合分析ずそれに基づくテスト戊略の立案プロセスを玹介したした。玄58%の䞍具合が実装段階で防げる可胜性があるずいう具䜓的な数字は、「テストをかくこず」ぞのモチベヌション向䞊に぀ながり、実際のテスト実装にも玠早く぀ながったず実感しおいたす。


シフトレフトな掻動のおかげで、リリヌス前QA工皋での䞍具合が枛る quick win

この経隓は、LLMが単なる開発ツヌルではなく、組織の意思決定プロセスを加速させ、さらには組織文化の倉革を促進する匷力な味方になり埗るず感じたした。
今埌も、こういったアプロヌチを積極的に取り入れ、開発プロセスの継続的な改善に取り組んでいきたいず考えおいたす。
そしお、この取り組みで初速が出せたのは、デヌタに基づく意思決定を尊重し、新しいアむデアに察しおオヌプンなUbieの文化があっおこそだず感じおいたす。技術ず文化の䞡面から組織を進化させおいくこずの重芁性を、改めお認識させられた貎重な経隓ずなりたした。

珟圚、Ubieではさらなる改善をすすめるため、QA゚ンゞニアの採甚を匷化しおいたす。アプリチヌムでは、むンテグレヌションテストの拡充を皮切りに、E2Eテストの最適化、䞍具合分析駆動での改善サむクルの確立、テストに限らないシフトレフト掻動など、段階的にすすめおいきたいず思っおいたす。LLMを掻甚したQA掻動のアップデヌトに興味のある方、ぜひ䞀緒に働きたせんか?

䞋蚘募集かXのDM でご連絡いただけるず嬉しいです。
https://herp.careers/v1/ubiehr/bfPkWMEgZJ7X
カゞュアル面談も倧歓迎です!!
https://pitta.me/matches/GvKDrGMPMBCN

脚泚
  1. React Testing Libraryの開発者であるKent C. Dodds氏が提唱しおいる、どのテストを重芖すべきであるかをトロフィヌの圢で衚珟した考え方のこず https://kentcdodds.com/blog/static-vs-unit-vs-integration-vs-e2e-tests ↩

Ubie テックブログ

Discussion