AIとシステム開発

AIで作ったアプリは、動いただけでは完成しない

ChatGPTをはじめとする生成AIの登場で、エンジニアが本業ではない人でも、自分が欲しいアプリを作るハードルがぐっと下がりました。

「AIに頼んだらアプリができた」
「もうエンジニアはいらないのでは?」

そんな声をSNSで見かけることもあるのではないでしょうか。

ただ、誰でもアプリを作れるようになったからこそ、気をつけたいことがあります。目に見えない部分の仕上げまで意識しないと、中途半端で、セキュリティの面でも危ういアプリになってしまいます。

どこまでできたら「完成」なのか

Andrej Karpathy が「Vibe Coding」という言葉を広めて以降、自然言語でAIに指示を出し、コードを組み立ててもらう開発スタイルは広く知られるようになりました。

ツールも進化し、短時間で「動くもの」を作れる場面は確実に増えています。

ただ、ここで一つ考えておきたいことがあります。

その「動いた」は、本当に「完成」でしょうか。

見た目は90%でも、実際はまだ途中

AIに勢いで作ってもらったアプリが動くと、もうかなり出来上がったように感じると思います。

UIは整っているし、ボタンを押せばデータも表示される。

体感では90%、あるいは95%ほど完成しているように見えるかもしれません。

ですが、プロダクトとして実際に世の中で使われる状態を基準にすると(社内の閉じた範囲で使う場合でも同じです)、そこまで届いていないケースは少なくありません。

左側の「あなたに見えている世界」では、UIができている、基本機能が動く、デモができるという状態で「90%できた」と感じている。右側の「実際の全体像」では、UIと基本機能のほかに、認証・認可、セキュリティ対策、インフラ構築、データ移行、監視・ログ、バックアップ、運用設計、テスト戦略、継続的な改善体制が残っており、実際にはまだ50%以下であることを示した図

この段階で見えているのは、UIができている、基本機能が動く、デモができる、というところまでです。

実際にサービスとして成り立たせるには、ほかにも認証・認可、セキュリティ対策、インフラ構築、監視・ログ設計、バックアップ、テスト戦略、運用設計、継続的な改善体制などが必要です。

これらがすべてそろって、はじめて「完成」と言えます。

見た目はほぼ完成でも、本番運用に必要なものまで数えると、まだ道半ばということは珍しくありません。

見えにくい「残り半分」の中身

動くプロトタイプと、人に使い続けてもらえるサービスの間には、見えにくいけれど大きな差があります。

この差を埋めることが私たちエンジニアの仕事であり、価値を出せるところだと考えています。

セキュリティ

AIが生成したコードは、一見正しく動いていても、脆弱性を含むことがあります。

個人情報や決済情報を扱うなら、「動いたから問題ない」とは言えません。

少なくとも、入力値の検証、認可制御、秘密情報の管理、依存ライブラリの脆弱性確認は、別途きちんと見直す必要があります。

セキュリティは画面上の機能として目立つものではありませんが、私たちはいちばん大事なところだと考えています。

インフラと運用

自分の手元(ローカル環境)で動くことと、複数のユーザーが同時に使っても安定して動き続けることは、別の話です。

本番環境では、サーバー構成、デプロイ手順、障害検知、ログ収集、バックアップ、復旧手順まで含めて考えなければなりません。

どれも画面には現れませんが、サービスを安心して使えるかどうかは、こうした部分にかかっています。

保守と継続開発

リリースして終わりではありません。バグ修正、機能追加、法改正への対応、ライブラリの更新と、プロダクトには手を入れ続ける必要があります。

そのためには、誰が読んでも理解しやすいコードと、変更しやすい設計が欠かせません。

短期間で一気に生成したコードは、動くことが優先されやすく、この点が弱くなりがちです。

後回しにすると、どうなるか

こうした点を後回しにしたまま進めると、あとで大きな問題になります。

たとえば、セキュリティの穴を放置したまま個人情報を扱えば、漏えい事故が起きたときに、法令への対応と信用の低下に同時に向き合うことになります。

インフラの設計が甘ければ、ある日突然サービスが止まり、顧客の業務を止めることになる。

コードの見通しが悪いまま機能追加を重ねれば、どこかの時点で「もう直せない、作り直すしかない」という判断に追い込まれます。

どれも、起きてから対処するほうが高くつきます。事故のあとに専門家を呼んでも、失った信用や時間は簡単には戻りません。

試作品をサービスに育てるには、別の知見がいる

AIによって、アイデアを素早く形にするハードルは大きく下がりました。

ただ、その試作品を実際に使えるサービスに育てるには、別の種類の知見が必要です。

どこにリスクがあるのか、どこまで整備すれば本番に投入できるのか、どの順番で手を入れるべきか。

こうした判断は、開発と運用の現場を経験してきた人でないと見積もれません。

残り半分を一緒に埋める

Vibe Codingで速くなったのは、0→1のフェーズです。

1→100には、セキュリティ、インフラ、運用、保守という別の仕事があります。

見えている90%を、本当の100%に仕上げる。
そのための「残り半分」を一緒に埋めるのが、レザボア・コンサルティングの役割です。

Vibe Codingで生まれたアイデアを、実際に使えるサービスに育てたい。

今ある試作品に何が足りていて、何が足りないのかを整理したい。

そうした段階からでも、お気軽にご相談ください。

CONTACT

システム開発の
ご相談はこちら。

お問い合わせ