見出し画像

AIでアプリを作る前に決めること|少ないトークンでイメージどおりに仕上げる進め方


AIに「アプリを作って」と頼めば、短時間で画面やプログラムを作れるようになりました。

しかし、完成したものを見て「思っていたものと違う」と感じたり、何度も修正を繰り返してトークンを多く使ったりすることもあります。

原因は、AIの性能だけではありません。作り始める前に決めることと、AIへ任せることが整理されていないケースが多いのです。

今回は問い合わせ受付アプリを例に、次の順番で進める方法を紹介します。

  • 要件を決める

  • 基本機能と概要図を作る

  • 各機能の設定を決める

  • 機能単位で作る

  • 動作を確認する

  • AIと自分の役割を分ける

すべてを一度にAIへ依頼するのではなく、最初に全体像を固めてから小さく作ることが、トークンを抑えながら自分のイメージへ近づけるポイントです。

最初から「全部作って」と頼むと何が起きるのか

たとえば、AIへ次のように依頼したとします。

「問い合わせを受け付けるWebアプリを作ってください」

これだけでも、AIはそれらしいアプリを作れます。ただし、AIには次の内容が分かりません。

  • 誰が使うのか

  • どの情報を入力するのか

  • 入力した情報をどこへ保存するのか

  • 誰へ通知するのか

  • 管理画面は必要なのか

  • ログインは必要なのか

  • どこへ公開するのか

  • 何をもって完成とするのか

情報が足りない部分はAIが推測します。その推測と自分のイメージが違えば、作った後に大きな修正が必要になります。

そのため、最初の仕事はプログラムを作ることではなく、AIが推測しなくてよい状態を作ることです。

ステップ1:要件は自分が決め、AIに整理させる

要件とは、「何のために、誰が、何をできるアプリにするか」という土台です。

問い合わせ受付アプリなら、最初に自分で次の内容を決めます。

  • 目的:Webサイトから問い合わせを受け付ける

  • 利用者:商品やサービスに興味がある人

  • 管理者:問い合わせへ対応する担当者

  • 必須機能:入力、送信、保存、通知、管理画面

  • 完了条件:利用者が送信でき、管理者が内容を確認できる

ここで大切なのは、技術名まで自分で決めなくてもよいことです。「データベースは何を使えばよいか」が分からなくても、保存したい情報と利用方法は決められます。

自分が目的と希望を伝え、AIには不足している要件の整理や選択肢の提示を任せます。

要件整理をAIへ頼む例

AIへの依頼内容:

  • 問い合わせ受付アプリを作りたい

  • 利用者は名前、メールアドレス、問い合わせ種別、本文を入力する

  • 送信内容を保存し、担当者へメール通知する

  • 担当者はログイン後の管理画面で内容を確認する

  • まだ実装は行わない

  • 不足している要件と、決める必要がある項目だけを一覧にする

この段階ではコードを書かせません。まず認識のずれを見つけることにトークンを使います。

ステップ2:基本機能と概要図を先に作る

要件が整理できたら、アプリを機能に分けます。

問い合わせ受付アプリの基本構成は次のようになります。

利用者 → 問い合わせ画面 → 送信処理 → データベース保存

データベース保存 → 担当者へメール通知

担当者 → ログイン → 管理画面 → 問い合わせ確認

このような簡単な概要図でも、どこに画面があり、どこでデータを保存し、誰へ通知するかが見えるようになります。

AIには、文章から概要図と機能一覧を作らせます。自分は、その流れが実際の使い方と合っているかを確認します。

自分が確認すること

  • 利用者の操作順がイメージと合っているか

  • 必要な画面が不足していないか

  • 不要な機能が追加されていないか

  • 入力した情報が正しい相手へ届くか

  • 管理者だけが見られる情報が守られているか

概要図の段階なら、変更しても大きな手戻りになりません。先に画面やDBを作ってしまうより、少ないトークンで修正できます。

ステップ3:各機能で必要な設定を決める

全体の流れが決まったら、機能ごとの設定を整理します。

問い合わせ画面の設定

  • 表示する入力項目

  • 必須項目と任意項目

  • 入力できる文字数

  • メールアドレスの形式確認

  • 送信前の確認画面の有無

  • 送信完了時に表示するメッセージ

見た目や入力しやすさは、自分が実際の画面を見て判断します。AIには、指定した項目や入力チェックの実装を任せます。

データベースの設定

  • 保存する項目

  • 問い合わせ番号の付け方

  • 受付日時

  • 対応状況

  • 誰が閲覧できるか

  • 保存期間と削除方法

  • バックアップ方法

AIにはデータ構造の案を作らせられますが、個人情報を何のために保存し、いつまで保管するかは自分で決める必要があります。

メール通知の設定

  • 通知先のメールアドレス

  • 件名

  • 本文へ載せる情報

  • 送信に失敗した場合の記録

  • 再送の有無

メール本文へ個人情報をすべて載せる必要があるかも確認します。「届けばよい」だけでなく、安全性も含めて決めます。

ログインと権限の設定

  • 管理画面へログインできる人

  • 管理者と一般担当者の権限差

  • パスワードの管理方法

  • 多要素認証の有無

  • 退職者や担当変更時のアカウント停止方法

ログイン機能をAIが作れても、誰へどの権限を与えるかは運用する側の判断です。

公開と運用の設定

  • 公開先

  • 独自ドメイン

  • HTTPS

  • 環境変数と秘密情報

  • エラーログ

  • ヘルスチェック

  • バックアップ

  • 障害通知先

公開後は「画面が開く」だけでは正常とは言えません。送信、DB保存、メール通知までを確認できるようにします。これは前回紹介した監視やエラーログにもつながります。

ステップ4:アプリ全体ではなく、機能単位でAIへ依頼する

設定が決まったら、実装を小さく分けます。

おすすめの順番は次のとおりです。

  1. 問い合わせ画面を作る

  2. 入力チェックを追加する

  3. DBへ保存する

  4. メール通知を追加する

  5. ログイン画面を作る

  6. 管理画面を作る

  7. ログと監視を追加する

1つの機能を作るたびに確認すれば、問題があった場所を特定しやすくなります。

「全部作った後で動かない」という状態では、AIも多くのファイルやログを読み直す必要があります。機能単位なら、確認対象が小さいため、回答や修正に使うトークンも抑えられます。

実装を依頼するときの型

毎回の依頼には、次の5点だけを入れます。

  • 今回の目的

  • 変更してよい範囲

  • 参照する仕様書

  • 完了条件

  • 行ってはいけない操作

たとえば問い合わせ画面なら、次のように依頼します。

AIへの依頼内容:

  • 要件書と概要図を先に読む

  • 今回は問い合わせ入力画面だけを作る

  • 名前、メールアドレス、問い合わせ種別、本文を表示する

  • 必須項目が未入力なら送信できないようにする

  • DB保存、メール送信、公開はまだ行わない

  • 実装後に変更ファイルと確認方法を報告する

この依頼なら、AIが勝手に作業範囲を広げることを防ぎやすくなります。

ステップ5:機能確認はAIと自分の両方で行う

AIが「完成しました」と報告しても、それだけで完了にはしません。

機能確認には、機械的に確認できる部分と、人が使って判断する部分があります。

AIへ任せやすい確認

  • 必須項目が未入力のときにエラーになるか

  • 正しい入力でDBへ1件保存されるか

  • メール送信処理が実行されるか

  • 一般利用者が管理画面へ入れないか

  • エラー時にログが記録されるか

  • 既存機能が壊れていないか

自分が確認すること

  • 画面の見た目がイメージと合っているか

  • 項目名が利用者に分かりやすいか

  • スマートフォンで操作しやすいか

  • 完了メッセージが自然か

  • 実際の業務で無理なく使えるか

  • 個人情報の扱いに問題がないか

AIは仕様との一致を確認するのが得意です。一方、「この画面なら利用者が迷わないか」「業務で本当に使えるか」という最終判断は人が行います。

機能確認をAIへ頼む例

AIへの依頼内容:

  • 実装は変更せず、問い合わせ送信機能を確認する

  • 正常な入力、必須項目の未入力、長すぎる本文、不正なメール形式を試す

  • 画面表示、DB保存件数、通知処理、エラーログを確認する

  • 確認できた事実と未確認項目を分ける

  • 問題があっても、修正や再実行は勝手に行わない

実装と確認を一度に頼まず、確認だけの依頼を分けると、AIがどこまで実施したか分かりやすくなります。

AIと自分の役割をどう分けるか

基本的な考え方は、「目的と最終判断は自分、整理と作業はAI」です。

自分が担当すること

  • アプリを作る目的

  • 誰に使ってほしいか

  • 必要な機能と優先順位

  • 見た目や操作感

  • 保存する情報と利用目的

  • 許容できる費用やリスク

  • 公開してよいかの最終判断

AIへ任せること

  • 要件の不足確認

  • 概要図と機能一覧の作成

  • 技術やサービスの候補整理

  • プログラムの実装

  • テスト項目の作成と実行

  • エラー原因の調査

  • 仕様書や変更履歴の更新

重要な設定をAIへ提案させることはできます。しかし、その提案を採用するかどうかは、自分の目的、予算、安全性に合わせて決めます。

トークンを少なくする7つの工夫

1.最初に要件をMarkdownへ保存する

毎回同じ説明を入力せず、要件書を正本としてAIに読ませます。

2.決定事項と未決定事項を分ける

決まった内容をAIに何度も考え直させないようにします。

3.1回の依頼を1つの目的に絞る

画面作成、DB保存、通知、テストを分けて依頼します。

4.変更してよい範囲を指定する

関係のないファイルを読んだり修正したりする量を減らします。

5.完了条件を先に書く

どこまでできれば終了なのかを明確にし、不要な追加作業を防ぎます。

6.エラー時はログの必要部分だけ渡す

ログ全体ではなく、発生時刻、エラーレベル、対象機能、前後の行へ絞ります。認証情報や個人情報は渡しません。

7.作業後に資料を更新する

変更した設定と確認結果をMarkdownへ残し、次回はその続きから始めます。

毎回使える短いプロンプト

共通資料を用意した後は、次の形式を使えます。

AIへの依頼内容:

  • 作業前に要件書、概要図、設定一覧、前回の確認結果を読む

  • 今回の目的は「〇〇機能の作成」

  • 変更対象は「〇〇フォルダ」のみ

  • 完了条件は「〇〇が成功し、確認結果を記録できること」

  • 公開、削除、課金、外部送信は行わない

  • 不明点は推測で実装せず、未確認として報告する

  • 完了後に変更ファイル、確認結果、残課題をMarkdownへ追記する

長い背景説明を毎回書く代わりに、共通資料を読ませ、今回の差分だけを伝えるのがポイントです。

まとめ

AIでアプリを作るときは、最初から完成品を一度に作らせる必要はありません。

まず自分が目的と完成イメージを決め、AIに要件、基本機能、概要図、設定項目を整理させます。その後、機能ごとに実装と確認を繰り返します。

自分は、目的、優先順位、見た目、業務上の使いやすさ、公開判断を担当します。AIには、整理、実装、テスト、エラー調査、資料更新を任せます。

このすみ分けができると、AIの推測による手戻りが減り、使うトークンを抑えながら、自分のイメージに近いアプリを作りやすくなります。

次回以降は、要件書や概要図をどのようなMarkdownで管理すればよいか、ローカル環境でAIへ依頼するときに何を読ませるかについても、具体的なテンプレートとともに紹介していきます。

ITty Plus(イッティプラス) 現役インフラSE/個人事業主

#AI #IT #アプリ開発 #生成AI #個人開発 #業務改善


いいなと思ったら応援しよう!