AIで作ったアプリには、うまくいく場合の処理だけがあり、うまくいかない場合の処理が無いことがあります。公開する前に、「処理が途中で失敗したとき」と「処理は正常でも、データがおかしいとき」にどうなるかを確かめてください。
試作は、うまくいく場合で作られる
AIに「この機能を作って」と頼むと、その機能が動くように作ってくれます。動作確認も、たいていはうまくいく場合で行います。画面が出て、データが取れて、保存できた。それで「できた」になります。
一方で、うまくいかない場合の処理は、頼まなければ作られないことが多いと、私たちは考えています。連携先が止まっていたら。通信が途中で切れたら。取ってきたデータが空だったら。試作の段階では、そうした場面がまだ起きていないからです。
本番では、うまくいかない場面が必ず来ます。そのときにどうなるかが決まっていないと、止まったことに誰も気づかなかったり、おかしなデータがそのまま保存されたりします。
うまくいかない場合は、2種類ある
- 処理が失敗する。 連携先のシステムが止まっている。通信が途中で切れる。処理の途中でエラーが起きる。
- 処理は正常なのに、データがおかしい。 処理はエラーなく終わったのに、取ってきたデータが空だったり、形式が違ったり、ありえない値だったりする。
1はエラーになるので、まだ気づきやすい方です。やっかいなのは2です。エラーにならないので、おかしなデータがそのまま次の処理に流れていきます。
事例: データを取ってくる処理は、あった
ある業務システムを本番化したときの例です。お客様が Claude Code で作った試作には、既存のシステムからデータを取ってくる処理がありました。試作の段階で、データはちゃんと取れていました。
ただ、その処理が途中で失敗したらどうするのか。処理は正常に終わったのに、取ってきたデータのほうがおかしかったらどうするのか。そこまでは考えられていませんでした。本番化では、こうした場合の扱いも整えました。
私たち自身も、同じ穴に落ちた
これは、お客様の試作だけの話ではありません。私たちが自社で、AIに記事の投稿作業を任せていたときのことです。
- 見出しの画像を付ける操作が失敗したのに、AIはそのまま投稿を続け、画像の無い記事が公開されました。失敗したら止まる、という処理が無かったからです。
- タイトルの「暮」が、見た目がそっくりな別の漢字で公開されたこともあります。処理はエラーなく終わっていました。データのほうが、目では気づけない形でおかしかったのです。
どちらも、それ以来、失敗したらそこで止めて人に知らせる、文字は見た目ではなく機械で照合する、という形に直しました。
公開前に確かめる問い
AIで作ったアプリで、外部のシステムやサービスとデータをやり取りしている部分があれば、次の問いに答えられるか確かめてください。
- 連携先が止まっていたら、どうなるか。 エラーの画面が出るのか。固まるのか。何も起きないように見えるのか。
- 処理が途中で失敗したら、やり直せるか。 やり直したときに、同じデータが二重に登録されないか。
- 取ってきたデータが空だったり、おかしかったりしたら、どうなるか。 そのまま保存や表示をしていないか。
- 失敗したことに、誰が、どうやって気づくか。 知らせが届く仕組みがあるか。
- 失敗したとき、止まるか、進んでしまうか。 進んでしまうなら、その先で何が起きるか。
全部に備える必要はありません。誰が使うか、どんなデータを扱うかで、備える深さを決めます。ただ、4の「失敗に誰も気づかない」状態だけは、公開前に避けてください。
公開前に確かめるほかの点は、AIで作ったアプリを本番化するにはにまとめています。
wizgeek にできること
AIで作った試作の構成と機能を把握し、認証・データベース・インフラ・セキュリティ・監視のうち何が足りないかを整理して、構成案をお渡しします(本番化の診断:5万円〜、税別)。外部との連携部分の、失敗したときの扱いも確かめます。本番化の作業と、公開後の運用もお受けしています。