GEAR.indigoを触ってみる
初めに
前々から気になっていたGEAR.indigoを触ってみようと思います。
個人で開発する際に、頭の中に要件や設計はあるのでそのまま作りきることはできるかもしれませんが、
ドキュメントをしっかり残しておいたほうがやはり精度の高いものを作れるはずだと思います。
そこで、要件定義からコード生成まで一気通貫でできるGEAR.indigoを使って、自分の頭の中の整理をAIに手伝ってもらおうと思います。
GEAR.indigoとは
AIが要件定義~コード生成まで頑張ってくれます。
やってみよう
プロンプト作り
まずGEAR.indigoを開きます。
STEP1からやってみましょう。
ということでプロンプトが必要ですね。
まずはどんなアプリを作りたいか考えます。
最近、ぴよログというアプリを触っているので、それと同じようなものをなんとなく作ってみようと思います。
ぴよログのWebアプリ版に、AIがアドバイスしてくれる機能を追加してみようかなと。
ということで、なんとなくの文をいい感じにしてくれるようにGeminiにお願いしてみました。
そうするとこんな感じに返ってきました。
ぴよログの基本機能とAIアドバイス機能を持つWebアプリの個人開発、応援しています! 以下、ご提示の項目について具体的に検討していきます。
1. プロジェクト概要:
目的: 乳幼児の育児記録を簡便化し、AIによるアドバイスを提供することで、育児の不安軽減と負担軽減を目指す。
対象ユーザー: 乳幼児の保護者(主に0歳〜3歳を想定)。
主な機能:
授乳、排泄、睡眠、食事、体温、身長・体重などの記録
記録のグラフ表示
AIによる育児アドバイス
育児日記
開発期間: 個人の開発ペースに合わせて設定。
開発体制: 個人開発。
使用技術(想定):
フロントエンド:HTML、CSS、JavaScript、React/Vue.jsなど
バックエンド:Python(Flask/Django)、Node.jsなど
データベース:PostgreSQL、MySQLなど
AI:Python(scikit-learn、TensorFlow/PyTorch)、クラウドAIサービスなど
2. 現行業務フロー(想定):
これは、現在の育児記録方法のフローです。アプリ導入前の状態を想定しています。
保護者が手帳やノートなどに育児記録を手書きで記録。
記録を振り返る際、過去の記録を探したり、傾向を把握するのに手間がかかる。
育児に関する疑問や不安が生じた場合、書籍やインターネットで情報を検索したり、周囲に相談する。
3. 業務要件一覧:
これは、アプリで実現したい業務内容です。
記録業務: 授乳、排泄、睡眠、食事、体温、身長・体重などを簡単に入力・記録できること。
閲覧業務: 記録を一覧表示やグラフで視覚的に確認できること。
アドバイス業務: 記録に基づいてAIが適切なアドバイスを提供すること。
日記業務: 写真付きの育児日記を作成・保存・閲覧できること。
4. システム化業務フロー:
アプリ導入後の業務フローです。
保護者がスマートフォンやPCのWebアプリで育児記録を入力。
記録データはデータベースに保存。
アプリが記録データを分析し、グラフ表示やAIアドバイスを生成。
保護者はアプリで記録の確認、アドバイスの閲覧、日記の作成・閲覧を行う。
5. 機能要件一覧:
具体的な機能リストです。
記録機能:
授乳記録:種類、時間/量などを記録。タイマー機能。
排泄記録:種類、状態などを記録。
睡眠記録:就寝・起床時間を記録。
食事記録:種類、量などを記録。
体温記録:体温を記録。
身長・体重記録:身長・体重を記録し、成長曲線を表示。
閲覧機能:
記録の一覧表示。
期間を指定した記録の表示。
記録のグラフ表示(棒グラフ、折れ線グラフなど)。
AIアドバイス機能:
記録データに基づいたアドバイスの生成。
アドバイスの表示。
日記機能:
写真付き日記の作成・保存。
日記の一覧表示。
その他:
ユーザー登録・ログイン機能。
データのエクスポート機能。
6. 非機能要件一覧:
システムの性能や品質に関する要件です。
性能要件:
レスポンス速度:ユーザー操作に対して迅速に反応すること。
同時アクセス数:ある程度の同時アクセスに耐えられること(個人開発なので、まずは問題ないレベルで)。
可用性要件:
システムの稼働率:安定して稼働すること。
セキュリティ要件:
ユーザーデータ(個人情報、育児記録)の適切な保護。
不正アクセス防止。
使いやすさ要件:
直感的で分かりやすいユーザーインターフェース。
スマートフォン、PCなど様々なデバイスで利用可能であること(レスポンシブデザイン)。
保守性要件:
コードの可読性、保守性の確保。
AIアドバイス機能の具体例:
授乳間隔が短い場合:「授乳間隔が短いようです。赤ちゃんの様子を見て、必要に応じて少量ずつ頻回授乳を試してみましょう。」
睡眠時間が少ない場合:「睡眠時間が短いようです。寝室の環境(室温、明るさ、音)を見直してみましょう。」
成長曲線の変化が大きい場合:「成長曲線に変化が見られます。必要に応じてかかりつけ医に相談してみましょう。」
開発の進め方:
プロトタイプ作成: まずは最低限の機能を持つプロトタイプを作成し、動作確認を行う。
機能追加: プロトタイプをベースに、必要な機能を追加していく。
テスト: 各機能の実装後、十分なテストを行う。
AIアドバイス機能の実装: ルールベースから始め、徐々に機械学習を導入することを検討。
これらの要素を具体的に検討することで、開発がよりスムーズに進むはずです。開発中に不明な点や困ったことがあれば、いつでも質問してください。応援しています!
さすがですね。あの少ない文章でこんなにたくさん書いてくれる!
この文章をベースに少し改良したものをGEAR.indigoに貼って生成してみます。
要件定義
5分ほどで生成されました。中身を確認してみましょう。
なかなかよさそう。
業務フローもこんな感じで出ます。
中身の修正もできます。気になった部分は自分で修正しましょう。
システム設計
次にシステム設計部分。まずはテーブル定義を作ります。
フリープランだと10000文字までらしいです。
システム化業務フローと機能要件一覧2つ同時だと文字数が肥えてしまうので、
システム化業務フローのみで作成してみようと思います。
これをもとにER図も作ってみましょう。
この後は画面遷移、画面一覧も作ってみようと思います。
ここから先の機能に関してはフリープランだと文字数が足りなくて満足いくようなものが作れなさそうでした。
必要なものは作れたのかなと思います。
作成したものに関しましては、各ページからダウンロードができるので出力しておきましょう。
実際にやってみて感じたこと
要件定義は従来、とても時間がかかる作業の集まりでした。
それがたった数分でここまでのドキュメントを出力できるようになるとは、AI、恐るべしですね。
出力したものを簡単に修正変更ができるのもポイントが高いです。
生成AIはITエンジニアにとっては生産性を向上させるとても心強い味方だと自分は考えています。
自分の手を動かさずにアウトプットを作れるというのはとてもタイパがいいので、
これからもいろいろなツールが出てくると思いますが扱えるようになるととても良いと思いました。
この後はCursorを使って要件定義したプロジェクトをコードに落とし込んでいこうと思います。
また時間ができ次第、記事にしてみます。
ありがとうございました。
Discussion