Engineer BA-Sulto Tech Blog

アイデア0から、アプリの要件定義を考える

アイデア0から、アプリの要件定義を考える
2025-06-13
アイデア0から、アプリを開発

AI とペアプロ!アイデアゼロからアプリ開発計画を 1 時間で立ててみた話

「何かアプリを作ってみたいけど、何から手をつけていいかわからない…」 開発者なら誰しも一度は思ったことがあるのではないでしょうか。

先日、まさにその状態の私が、Gemini(Google の生成 AI)に「アプリ作りたいので、ヒアリングしてください」とだけ投げてみたところ、驚くほど具体的で、今すぐ開発に着手できるレベルの計画が完成してしまいました。

この記事では、その AI との対話の全記録を、物語仕立てでご紹介します。 アイデア出しから、要件定義、技術選定、データベース設計、そしてタスクリスト作成まで。 AI がどうやって思考をサポートし、プロジェクトを形にしていくのか。そのリアルなプロセスを追体験してみてください。

第 1 章:アイデアの壁 ― 「作りたいものは、ありません」

記念すべき最初のプロンプトは、あまりにも丸投げな一言でした。

私: アプリを作りたいので、要件定義を僕にヒアリングをしてください

すると、AI は早速、王道の質問を返してきました。

AI: 承知いたしました。…では、最初の質問です。あなたが作りたいのは、一言でいうと「どんなアプリ」ですか?

これに対する私の答えは、計画性ゼロの、あまりにも正直なものでした。

私: アプリの「コンセプト」も何も考えていない

普通ならここで会話は終わりです。しかし、AI は違いました。即座に戦略を切り替えたのです。

AI: なるほど、承知いたしました!コンセプトがない状態からのスタート、大歓迎です!…では、質問の角度を少し変えてみますね。あなた自身のことや、身の回りのことについて、いくつかお聞かせください。

AI は「要件定義」を諦め、「アイデアのブレインストーミング」のパートナーへと役割を変えました。 そして、私に「好きなこと」と「不便なこと」を尋ねてきたのです。

【ポイント】AI は対話の流れを読み、目的達成のために最適なアプローチを再提案してくれる。

第 2 章:課題発見 ― 「コードを思い出せない」が最高のアイデアに変わる瞬間

AI の質問に対し、私は自分の身の回りのことを答えました。

私: ハマっている趣味はプログラミング。「不便」や「面倒」ではないが、AI を使いすぎて、コードを思い出すことができなくなってきた

この、現代のプログラマーならではの悩みが、プロジェクトを大きく動かすことになります。

AI: おぉ、プログラミングがご趣味なのですね!そして、非常に共感できるお悩みをありがとうございます。「AI を使いすぎて、コードを思い出せなくなってきた」...これは現代のプログラマーにとって、まさに「あるある」な課題ですね!これは素晴らしいアプリのアイデアの種になる可能性が非常に高いです!

AI は私の些細な悩みを「価値ある課題」として捉え、具体的なアプリの形として 3 つの選択肢を提示してくれました。

  • A 案: 超パーソナルな「コード単語帳」アプリ
  • B 案: AI を活用した「文脈スニペット」検索アプリ
  • C 案: 実践的な「コーディング筋トレ」アプリ

この選択肢のおかげで、漠然としていた課題が一気にプロダクトの輪郭を帯び始めました。 私は迷わずこう答えます。

私: B と C を組み合わせたものがよさそう

ここから、アプリのコンセプトは「日々の学習(筋トレ)と実践での補助(検索)を両立する、プログラマーのための総合支援アプリ」として固まっていったのです。

【ポイント】自分の身近な「課題」は、最高のプロダクトアイデアの源泉。AI がそれを気づかせてくれる。

第 3 章:現実的な計画へ ― MVP という考え方

アイデアが固まると、AI は再び「要件定義モード」に戻りました。ターゲットユーザー、必須機能、収益化モデルなど、具体的な質問を通じて、アプリの仕様をどんどん明確にしていきます。

そして、私が答えるたびに、AI はそれを整理し、次の質問を投げかける。 この心地よいテンポの対話を通じて、アプリの全体像がみるみるうちに出来上がっていきました。

ここで AI が素晴らしい提案をします。 「MVP(Minimum Viable Product)」という考え方の導入です。 すべての機能を最初から作るのではなく、まずは最小限の価値を持つ製品を素早く作り、ユーザーの反応を見よう、という現代的な開発アプローチです。

AI: MVP 開発で最も重要なのは**「何を『作らない』かを決めること」**です。

この提案に基づき、私は「最も早くリリースできる組み合わせ」を選択。 ついに、私たちの MVP スコープが定まりました。

  • プラットフォーム: Web アプリ
  • コア機能: デイリーチャレンジ機能のみ
  • 解答形式: 選択肢・穴埋め問題のみ

この時点で、AI はここまでの対話を**「要件定義書(簡易版)」**としてまとめてくれました。 わずか数十分で、プロジェクトの憲法が出来上がった瞬間でした。

【ポイント】AI は、壮大な計画を現実的なステップに落とし込むための、冷静なプロジェクトマネージャーにもなってくれる。

第 4 章:開発者の対話 ― 超具体的な技術選定と DB 設計

ここからのフェーズは、私の専門知識が活きる場面でした。 技術選定のステップで、私は自分の得意な、そして使いたい技術を具体的に伝えました。

私: typescript, nextjs, hono, cloudflare の技術に触れている。…バックエンドは Next.js のルートハンドラーを使いたい。…ORM は drizzle を使いたい。

AI はこれらの専門的な単語を即座に理解し、私が提案する構成に合わせて、技術スタックの設計図をリアルタイムで修正していきます。

そして、圧巻だったのがデータベース設計のフェーズです。 私が「OAuth に対応させたい」と伝えた後、参考資料としてAuth.js の公式スキーマコードをそのまま投げ込みました。

すると AI は、そのコードを完全に理解した上で、こう返してきたのです。

AI: 素晴らしいです!これは... Auth.js (NextAuth.js) の Drizzle アダプターで推奨されているスキーマそのものですね!…このスキーマは、非常に完成度の高いものです。これをベースにするのが間違いなく最善です。

そして、私が提示した認証スキーマと、アプリ固有のテーブル(問題と解答履歴)を連携させた、完璧な最終版のデータベーススキーマ(Drizzle コード)を生成してくれました。

【ポイント】対話相手に専門知識があれば、AI はより高度で専門的なアシスタントとして機能する。

おまけ:遊び心も忘れずに ― プロジェクト名会議

設計がすべて完了し、少し息抜きにこんな無茶振りをしてみました。

私: 若干ダサいネーミングを考えて

AI: 承知いたしました!「若干ダサい」ネーミング、承知いたしました!一周回って愛着が湧くような、絶妙なラインを狙ってみます。

ここから AI が提案してきた「電脳コーディング塾」や「絶対覚えるマン」などの秀逸なネーミング案には、思わず笑ってしまいました。 AI との対話には、こんな風にクリエイティブで楽しい側面もあるのです。

最終的に、プロジェクトのディレクトリ名は管理のしやすさを優先し、daily-coding-appに決定しました。

最終成果物:いつでも開発を始められる 4 つの設計書

一連の対話の最後に、私はこうお願いしました。

私: ここまでの内容を要件定義書、画面設計書、実装計画書にそれぞれまとめてファイル分けしてください

AI はこれまでのすべての文脈を記憶しており、即座に 4 つの Markdown ファイルを出力してくれました。

  1. 要件定義書
  2. 画面設計書
  3. 技術設計書
  4. 実装計画書(開発タスクリスト付き)

アイデアゼロの状態から始まったプロジェクトが、具体的な設計図と、明日から着手できるタスクリストという形に結実したのです。

まとめ:AI は思考の壁打ち相手であり、最高の開発パートナーだ

今回の体験を通じて、AI は単に質問に答えるだけのツールではないことを痛感しました。

  • 思考の壁打ち相手: 漠然としたアイデアを具体的な形にしてくれる。
  • 知識の補完役: MVP のような重要な開発アプローチを教えてくれる。
  • 冷静なマネージャー: 夢物語を現実的な計画に落とし込んでくれる。
  • 高速なドキュメント担当: 対話内容を即座に公式ドキュメント化してくれる。
  • 専門的なアシスタント: 複雑な技術要件を理解し、設計を支援してくれる。

「何か作りたいけど、一歩目が踏み出せない」。 もしあなたがそう感じているなら、一度 AI に話しかけてみてはいかがでしょうか。 「アプリ作りたいんですけど」と。

きっと、あなたの最高の開発パートナーになってくれるはずです。

さて、私の方は、この計画書を元にdaily-coding-appの開発を進めていこうと思います。 その進捗も、またこのブログでお伝えできればと思います。 お楽しみに!

タグ

Next.jsReactTypeScript