すでにメンバーの場合は

無料会員登録

GitHubアカウントで登録 Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

登録がまだの方はこちらから

Pikawakaにログイン

GitHubアカウントでログイン Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

生成AIを使って仕様書を作成しよう

この記事で出来るようになること

仕様書とは

仕様書とは、システムやアプリケーションを開発する際に、「どのような仕組みで」「どのように動作するのか」を記述するドキュメントです。主にエンジニア、デザイナー、プロジェクトマネージャーなどの関係者が共通理解を持つために使用されます。

仕様書には以下のような情報が含まれます。

  • アプリの目的
  • 実装する機能の詳細
  • ユーザーインターフェース(UI)の構成
  • 使用する技術やライブラリ
  • データ構造やAPI設計など

仕様書はプロジェクトの「設計図」とも言える存在であり、これがしっかりしていると、開発中の手戻りを減らすことができます。

仕様書を作成しよう

ここからは、生成AIを活用して実際に仕様書を作成していきます。使用するプロンプト技術は「深津式プロンプティング」です。

深津式プロンプティングとは

深津式プロンプティングとはnote株式会社のCXOである深津貴之氏が提唱したプロンプト設計のフレームワークです。大きく以下の3つの要素に分けてプロンプトを構成します。

1. 命令書(Role)

AIがどのような役割を持つかを明確に伝えます。

2. 制約条件(Rule)

出力形式や表現スタイルなど、守るべきルールを指定します。

3. 入力文(Input)

具体的な指示内容や素材データを与えます。

プロンプトを作成しよう

それでは、以下のようなプロンプトを使って、AIに仕様書の作成を依頼してみましょう。

#命令書:
あなたはWebアプリの仕様設計に精通したプロダクトマネージャーです。
以下の制約条件と要件定義書をもとに、チーム共有用の仕様書を作成してください。

#制約条件:
・構成は「目的」「主要機能」「画面構成」「使用技術」の4つにしてください
・文体は明確・簡潔に、初心者でもわかる表現で

#入力文:
以下の要件定義書を元にしてください:

--- 要件定義書ここから ---
(ここにAIが作成した要件定義書をそのまま貼り付けます)
--- 要件定義書ここまで ---

「(ここにAIが作成した要件定義書をそのまま貼り付けます)」の箇所には「生成AIを使って要件定義書を作成しよう」のカリキュラムで作成した要件定義書の内容をコピペして下さい。

要件定義書のコピペ

AIからの回答例を見る

内容を確認し、修正点があれば修正してもらいましょう。

AIによって作成された仕様書は、プロジェクトメンバーと共有するためにGitHubのWikiに保存しておくのがおすすめです。WikiはGitHubリポジトリ内で管理でき、バージョン管理や共同編集が可能です。

まずはこのアプリのリポジトリを作成します。

GItHubのダッシュボードから新規のリポジトリを作成しましょう。

GitHub

リポジトリ名を入力して新規リポジトリを作成します。

リポジトリの作成

wikiを選択します。

wiki

「Create the first page」で新規作成画面を開きます。

新規作成画面

GitHub Wikiでは、マークダウン形式で記述します。AIに以下のようなプロンプトを使って変換を依頼します。

作成した仕様書をコードブロックのマークダウン形式にして下さい。

以下のようにタイトルを「仕様書」とし、作成してもらったマークダウンを貼り付け、「Save page」ボタンで保存します。

保存

以下のように作成されました。

作成

GitHub Wikiに保存しておくことで、開発チームとの情報共有や履歴管理が簡単になります。

機能仕様を作成しよう

次に仕様書に基づいて機能仕様を作成します。

機能仕様とは、仕様書で示された主要機能について、より詳細な挙動や画面遷移、入力・出力の条件などを明確に記述したドキュメントです。
開発者が実装を行う際の「設計図」として活用され、認識のズレを防ぐ役割も担います。

仕様書に記載された「主要機能」に基づいて、以下のようにAIに依頼しましょう。

主要機能の詳細な機能仕様を作成して下さい
AIからの回答例を見る

GitHub Wikiの「New page」ボタンをクリックし、新規作成ページを開きましょう。

新規作成

「機能仕様」というタイトルで新規ページを作成し、上記のマークダウンを貼り付けて保存しましょう。マークダウンでAIからの回答が作成されなければ、先ほどと同様にマークダウン形式に変換してもらいましょう。

機能仕様

非機能要件を作成しよう

次に主要機能の非機能要件を作成します。

非機能要件とはアプリケーションの「機能以外の要件」を指します。
たとえば以下のような内容が該当します。

  • セキュリティ要件(ログイン管理、暗号化など)
  • パフォーマンス要件(レスポンスタイム、同時アクセス数)
  • 信頼性(バックアップ、障害対応)
  • ユーザビリティ(操作性、アクセシビリティ)

これらはユーザー体験に大きく影響し、品質の土台となる部分です。

以下のように依頼すると、仕様書や機能仕様を踏まえた非機能要件を提案してくれます。

主要機能の非機能要件を作成して下さい
AIからの回答例を見る

GitHub Wikiに「非機能要件」というタイトルのページを作成し、マークダウンを貼り付けて保存します。

非機能要件

これまでに作成した3つのドキュメントをまとめてGitHub Wikiに保存することで、プロジェクトの基盤が完成します。開発チームやクライアントとこれらの文書を共有することで、誤解のないスムーズな開発が実現します。

仕様書、機能仕様、非機能要件を作成しよう

カリキュラムのプロンプトを参考に、仕様書、機能仕様、非機能要件を作成しましょう。
作成した各ドキュメントはwikiに保存しましょう。