はじめに
Androidアプリを個人で開発するとき、意外と時間がかかるのが「仕様を整理する作業」です。
頭の中では作りたいアプリのイメージがあっても、いざ実装を始めようとすると、
- どの画面が必要か
- どの機能を先に作るべきか
- データをどのように保存するか
- ユーザー操作の流れをどうするか
- Google Play公開時に何が必要か
といった点を整理する必要があります。
これまでは、思いついた機能からそのまま実装を始めることもありました。
しかし、そのやり方だと途中で画面構成を変更したり、必要なデータ項目が足りなかったりして、後から修正が増えることがあります。
そこで今回は、ChatGPTを使ってAndroidアプリの仕様書作成を試してみました。
この記事では、単に「ChatGPTは便利です」という紹介ではなく、実際に使ってみて感じたこと、うまくいかなかった指示、改善したプロンプト、個人開発で使うときの注意点をまとめます。
ChatGPTを使おうと思った理由
Androidアプリを作るとき、最初に必要なのはソースコードではなく、アプリ全体の整理だと感じています。
特に個人開発の場合、企画、設計、実装、テスト、ストア掲載文の作成まで、ほとんどを一人で行うことになります。
そのため、開発前に次のような内容を整理しておくと作業が進めやすくなります。
- アプリの目的
- 想定ユーザー
- 主な機能
- 画面一覧
- 画面遷移
- 保存するデータ
- 権限の有無
- 広告表示の有無
- Google Play公開時の注意点
これらを毎回ゼロから考えるのは手間がかかります。
ChatGPTを使えば、最初のたたき台を短時間で作れるのではないかと思い、仕様書作成に使ってみることにしました。
最初に試した指示
最初は、かなり大ざっぱに次のような指示を出しました。
Androidアプリの仕様書を作成してください。
この指示でも、ChatGPTはそれらしい仕様書を作成してくれます。
たとえば、以下のような項目が出てきました。
- アプリ概要
- 対象ユーザー
- 機能一覧
- 画面構成
- 非機能要件
- 開発環境
- 今後の拡張
一見すると十分に見えます。
しかし、実際に開発で使おうとすると、内容がかなり一般的でした。
たとえば「ログイン機能」「通知機能」「ユーザー設定」など、今回作りたいアプリには不要な機能も含まれていました。
この段階で感じたのは、ChatGPTに仕様書を作らせる場合、「アプリの目的」や「必要な機能」を具体的に伝えないと、汎用的な内容になりやすいということです。
大ざっぱな指示で困った点
最初の出力で困った点は、主に3つありました。
1. 必要ない機能が含まれる
Androidアプリとだけ伝えると、ChatGPTは一般的なアプリを想定して仕様を作ります。
そのため、実際には不要なログイン機能やクラウド同期機能が含まれることがあります。
個人開発の小さなアプリでは、最初から多機能にしすぎると実装量が増えてしまいます。
仕様書の時点で不要な機能が混ざると、開発の優先順位が分かりにくくなります。
2. 画面構成が抽象的になる
「メイン画面」「設定画面」「詳細画面」のような一般的な名前だけでは、実際に何を表示する画面なのか分かりにくいです。
実装に使うためには、
- 画面名
- 表示する項目
- ボタン
- 入力欄
- 次に遷移する画面
まで整理されている方が使いやすいです。
3. データ項目が足りない
アプリでは、画面に表示する内容だけでなく、内部的に保存するデータも重要です。
たとえば、タイマーアプリなら、
- タイマー名
- 時間
- 音声案内の有無
- 繰り返し回数
- 作成日時
- 更新日時
のような項目が必要になる場合があります。
最初の指示では、このあたりの具体性が不足していました。
指示を改善してみた
そこで、次はChatGPTへの指示を具体的にしました。
以下のような内容を含めて依頼しました。
Androidアプリの仕様書を作成してください。
アプリの目的:
個人開発で作成するシンプルなAndroidアプリです。
ユーザーがスマホで簡単に操作できることを重視します。
作成してほしい内容:
- アプリ概要
- 想定ユーザー
- 主な機能
- 画面一覧
- 各画面の表示項目
- 画面遷移
- 保存するデータ項目
- Android権限の必要有無
- Google Play公開時に必要な情報
- 最初に作るべきMVP機能
- 将来的な拡張機能
条件:
- Kotlinで開発する想定
- Jetpack Composeを使う想定
- 個人開発なので、最初は機能を増やしすぎない
- Google Play公開を前提にする
- 初心者でも実装に移しやすい形にする

このように条件を具体的にすると、出力内容がかなり実用的になりました。
特に良かったのは、MVPとして最初に作る機能と、後から追加する機能を分けてくれた点です。
個人開発では、最初から全部作ろうとすると完成まで時間がかかります。
まず公開できる最小構成を決めて、その後で機能追加する方が現実的です。

改善後の出力で使いやすかった点
改善した指示を使うと、仕様書として使いやすい内容になりました。
特に便利だったのは、以下の項目です。
画面ごとの表示内容を整理できた
画面名だけでなく、各画面に何を表示するかを整理できました。
たとえば、
- トップ画面
- 入力画面
- 一覧画面
- 詳細画面
- 設定画面
のように分けたうえで、それぞれの画面に必要なボタンや入力項目を整理できます。
この状態まで作っておくと、後からJetpack Composeで画面を作るときに迷いにくくなります。

データ項目の抜け漏れに気づけた
自分だけで考えていると、保存すべき項目を忘れることがあります。
ChatGPTにデータ項目を整理してもらうことで、
- ID
- タイトル
- 作成日時
- 更新日時
- 表示順
- 有効 / 無効
- メモ
のような共通項目にも気づけました。
実装後に「この項目も保存しておけばよかった」となると修正が面倒なので、最初に一覧化できるのは便利でした。
Google Play公開時の準備も確認できた
アプリをGoogle Playで公開する場合、アプリ本体だけでなく、以下のような準備も必要になります。
- アプリ名
- 短い説明
- 詳細説明
- スクリーンショット
- フィーチャーグラフィック
- プライバシーポリシー
- データセーフティ情報
- 広告の有無
- 対象年齢
- 権限の説明
ChatGPTに仕様書作成の段階でこれらを含めるように指示しておくと、公開直前に慌てにくくなります。
ChatGPTで仕様書を作るメリット
実際に使ってみて、ChatGPTで仕様書を作るメリットは大きいと感じました。
作り始める前に全体像を見られる
個人開発では、思いついた機能からすぐ実装したくなります。
しかし、先に仕様書を作ることで、アプリ全体の流れを確認できます。
画面数が多すぎないか、最初のバージョンに不要な機能が含まれていないかを確認できるのは大きなメリットです。
MVPを決めやすい
ChatGPTに「最初に作るべきMVP機能」と「将来的な拡張機能」を分けてもらうと、開発範囲を整理しやすくなります。
たとえば、最初のバージョンでは、
- 入力
- 保存
- 一覧表示
- 編集
- 削除
だけにしておき、通知やクラウド同期などは後回しにする、といった判断ができます。
実装前の抜け漏れ確認に使える
ChatGPTの出力をそのまま正解として使うのではなく、チェックリストとして使うと便利です。
自分で考えた仕様とChatGPTが出した仕様を比較すると、抜けていた項目に気づけることがあります。

注意点:ChatGPTの仕様書をそのまま使わない
便利ではありますが、ChatGPTが作った仕様書をそのまま使うのは危険です。
理由は、アプリの目的や実装方針に合わない内容が混ざることがあるからです。
たとえば、シンプルな個人開発アプリなのに、以下のような機能が提案されることがあります。
- ユーザー登録
- クラウド同期
- SNSログイン
- 管理者画面
- サブスクリプション
- 複雑な通知機能
これらは便利な機能ですが、最初のバージョンでは不要なことも多いです。
ChatGPTの出力は、あくまで「たたき台」として使い、最終的には自分で取捨選択する必要があります。
仕様書作成で使いやすかったプロンプト
実際に使いやすかったプロンプトを、汎用的に使える形でまとめると以下のようになります。
以下の条件で、Androidアプリの仕様書を作成してください。
【アプリ概要】
〇〇を目的としたAndroidアプリです。
【想定ユーザー】
〇〇をしたい人を想定しています。
【開発条件】
- Kotlinで開発
- Jetpack Composeを使用
- 個人開発
- Google Play公開を前提
- 最初はシンプルなMVPとして作成
【作成してほしい内容】
1. アプリ概要
2. 想定ユーザー
3. 解決したい課題
4. 主な機能
5. MVPで実装する機能
6. 将来的に追加する機能
7. 画面一覧
8. 各画面の表示項目
9. 画面遷移
10. 保存するデータ項目
11. Androidで必要な権限
12. Google Play公開時に必要な情報
13. 開発時の注意点
【出力形式】
見出しごとに整理して、実装前に確認しやすい仕様書として出力してください。
このプロンプトを使うと、かなり使いやすい仕様書のたたき台ができます。
さらに実用的にするための工夫
ChatGPTで仕様書を作成した後は、次のような追加指示を出すとさらに実装に近づきます。
画面設計を詳しくする
上記の仕様書をもとに、各画面のUI構成を詳しくしてください。
Jetpack Composeで実装しやすいように、表示項目、ボタン、入力欄、画面下部の操作を整理してください。
データ構造を整理する
このアプリで保存するデータ項目を、Kotlinのdata classにしやすい形で整理してください。
各項目の型、必須/任意、説明も表にしてください。
実装順を決める
この仕様をもとに、個人開発で実装する順番をステップごとに整理してください。
最初に動くものを作ることを優先してください。
Google Play掲載文を作る
このアプリ仕様をもとに、Google Playに掲載する短い説明、詳細説明、スクリーンショット用のキャプション案を作成してください。
このように、仕様書を作って終わりではなく、画面設計、データ設計、実装順、ストア掲載文までつなげると、開発全体でAIを活用しやすくなります。
実際に使って感じたこと
ChatGPTを仕様書作成に使ってみて一番良かったのは、考えを整理するスピードが上がることです。
特に、作りたいアプリのイメージがぼんやりしている段階では、ChatGPTにたたき台を出してもらうことで、必要な機能や画面構成を見える形にできます。
一方で、ChatGPTの出力はきれいにまとまっている分、すべて正しそうに見えてしまう点には注意が必要です。
実際には、不要な機能が含まれていたり、個人開発の規模に合わない設計になっていたりすることがあります。
そのため、私はChatGPTを「仕様書を完成させる道具」ではなく、仕様書のたたき台を作る道具として使うのがよいと感じました。
まとめ
今回は、ChatGPTを使ってAndroidアプリの仕様書作成を試した内容をまとめました。
実際に使ってみると、最初の大ざっぱな指示では一般的な仕様書になりやすいですが、アプリの目的、開発条件、出力してほしい項目を具体的に指定すると、かなり実用的な仕様書になります。
特に個人開発では、
- 画面構成の整理
- 機能の優先順位付け
- MVPの決定
- データ項目の洗い出し
- Google Play公開準備の確認
に役立つと感じました。
ただし、ChatGPTの出力をそのまま採用するのではなく、自分のアプリに必要な内容だけを選ぶことが重要です。
これからAndroidアプリを作る場合は、いきなり実装を始める前に、ChatGPTで仕様書のたたき台を作ってみると、開発の流れを整理しやすくなると思います。
コメントを残す