
要件定義って何から手をつければいいのか分からなくて。ChatGPTを使えば簡単になるって聞いたんですけど、本当ですか?



確かに、ChatGPTはとても便利なツールですが、使い方によっては逆効果になることもありますよ。得意なことと不得意なことを正しく理解して、適材適所で使うのがポイントです。
はじめに
システム開発における要件定義は、プロジェクトの成否を分ける極めて重要なフェーズです。
しかし、ヒアリングの精度やドキュメントの網羅性、ステークホルダーとの認識のすり合わせなど、多くのスキルが求められます。
ここで登場するのが、自然言語処理技術を活用したChatGPTです。この記事では、ChatGPTを活用して要件定義を強化する方法と、その限界を詳しく解説します。
ChatGPTでできること
1. 要件定義書の初期ドラフト作成
ChatGPTは自然言語で指示を与えることで、要件定義書のテンプレートやたたき台を短時間で作成可能です。以下のような具体的な情報を段階的に入力すれば、精度の高い出力が得られます。
- 開発対象の業種・業務内容
- 例:「中小企業の物流業務」「建設業界の原価管理システム」など。
- なるべく具体的に、業務の規模感や背景も添えると精度が向上する。
- 主要な業務フロー
- 例:「受注→在庫確認→出荷手配→請求処理」といった業務の流れ。
- 実際の現場で使われている用語を使い、端的に記述するのがポイント。
- システムで実現したい課題解決や改善点
- 例:「属人化された在庫管理をシステム化し、正確性と効率を向上させたい」
- 背景となる課題と、期待する成果をあわせて記述
この3点をChatGPTに伝えることで、「目的・機能・制約条件」が網羅された初期ドラフトを生成できます。
さらに、指示の末尾に「markdown形式で出力してください」「表形式で整理してください」などフォーマット指定を加えると、よりそのまま使いやすい出力になります。
例)
"中小企業向けの在庫管理システムを構築したい。基本的な業務フローは発注→入庫→在庫管理→出庫です。"
これにより、各機能の概要や必要な非機能要件の初期案が提示されます。


2. ユーザーストーリーの整理
アジャイル開発におけるユーザーストーリーの作成は、開発チームとビジネス側の橋渡しに欠かせません。ChatGPTを使えば、役割・目的・理由を構造的に伝えることで、すぐに実用的なユーザーストーリーを生成できます。
まず以下の形式で入力します。
例えば
さらに、このプロンプトに続けて「他の業務担当者の視点も含めて、5パターン生成してください」や「ユーザーストーリー形式で出力してください」と追加することで、多様な出力を得ることができます。
生成されたユーザーストーリーはそのまま要件定義書に転記できるだけでなく、関係者とのすり合わせやワークショップ資料にも活用できます。
3. 非機能要件の網羅リスト生成
非機能要件(セキュリティ、性能、可用性、運用性など)は見落とされがちですが、ChatGPTを使えば短時間で幅広い観点から網羅することが可能です。以下のステップで活用するのが効果的です。
1.ChatGPTへの基本プロンプト例
2.業種やシステムの特性に応じてカスタマイズ
例えば「官公庁向けのシステム」であれば、情報公開性や監査対応が重視されるため「トレーサビリティ」「操作ログの保存期間」などの非機能要件が重要視されます。
一方、「医療系クラウドサービス」であれば「個人情報保護」や「障害発生時の即時通知」「99.999%の可用性」などが求められるケースが多いです。
このように、対象となる業界や用途によって非機能要件の優先順位が大きく異なるため、「~業界向け」「~用途のための」など具体的な条件をプロンプトに加えることで、より的確なアウトプットが得られます。
3.出力されたリストの具体化
ChatGPTは抽象的な要件を返すことがあります。たとえば「高可用性」という出力は、実務においては明確な数値目標に置き換える必要があります。たとえば「99.9%以上の稼働率」なのか、「5分以内の自動フェイルオーバー対応」が必要なのかなどです。こうした情報が不明確なままだと、設計やテストの指針になりません。
そのため、ChatGPTには次のような追加プロンプトを使って、具体化を促すと効果的です。
このように、抽象語に対して「SLA・目標値・制約条件」をセットで聞き返すことで、実務で活用可能なレベルの要件に落とし込むことが可能です。
4.ドキュメント形式で出力
出力形式を指定することで、そのまま設計資料に流用できます。たとえば、ChatGPTに対して次のようなプロンプトを使用することで、表形式のアウトプットが得られます。
また、開発プロジェクトで利用するGoogleドキュメントやExcelにコピペしやすい形式(TSVやCSV)にする指示も効果的です。
さらに、「業務フロー図」や「画面設計のアウトライン」などを含めた複数の資料テンプレートを一括で生成させるプロンプトも応用可能です。これにより、要件定義書の初期ドラフトが一気に整い、レビュー時間の短縮にもつながります。
分類 | 説明 | 具体例・観点 |
---|---|---|
セキュリティ | データの機密性、完全性、認証、アクセス制御など | アクセス権管理、暗号化、ログ監視 |
可用性 | システムが継続的に稼働する能力 | 冗長構成、フェイルオーバー、稼働率SLA |
性能 | システムの応答速度やスループットなど | レスポンスタイム、同時ユーザー数、負荷耐性 |
運用性 | システムの監視・保守・運用のしやすさ | 障害通知、ジョブ管理、メンテナンス容易性 |
保守性 | 修正・拡張のしやすさ、コードの可読性 | モジュール分割、ドキュメント整備、自動テスト |
移植性 | 他のOSや環境で動作する能力 | クラウド移行性、コンテナ化、API依存の最小化 |
上の表は非機能要件を分類・整理した表の一例ですが、この表はChatGPTに「〇〇システムにおける非機能要件を分類して表形式でまとめてください」といった指示を与えることで生成できます。
4. 用語集やFAQの作成
プロジェクトに固有の用語や略語をChatGPTに整理させておくことで、関係者間の理解を促進できます。実際には、以下のような手順で活用が可能です。
1.用語集の作成プロンプト例
このように入力することで、各用語の定義をわかりやすく文章で整理できます。たとえば「SKU」と入力した場合には「在庫管理において、商品を識別するための最小単位であり、一意なコードが付けられる。物流や販売管理などで用いられる」など、業務文脈を含めた解説が返ってきます。さらに「この用語が登場する業務シーンを例示してください」と指示を加えると、「発注処理の際にSKUで商品指定を行う」など、実際のユースケースまで補足され、実務理解に役立ちます。
2.フォーマット指定で表形式に
これにより、そのままWikiやマニュアルに貼り付けられる用語集が完成します。
さらに、「Googleスプレッドシートに貼り付けて部門内で共有したい」といった用途がある場合には、列名にフィルタをかけやすいように「カテゴリ」「更新日」などのカスタム列を追加するよう指示することも可能です。
また、「辞書形式(JSON)で出力してください」とプロンプトを変更することで、エンジニア向けのシステム連携用データとして活用することもできます。
3.FAQの自動生成
ChatGPTに対して「新人向けに、〇〇システムに関して想定される質問とその回答を10個作ってください」といった指示を出すことで、教育用のQ&A集が得られます。
このように具体的な範囲(基本操作、トラブル対応、誤解されやすい点など)を加えることで、実務で活用しやすいFAQが得られます。さらに、「表形式で出力してください(質問/回答)」や「口調をやさしくしてください」などの指示を組み合わせると、社内ポータルやマニュアルにそのまま転用できるクオリティの高いアウトプットになります。
4.トーン調整・目的別再構成
生成された内容は、さらに「経営層向けに簡潔に書き直してください」や「IT未経験者にも伝わるよう、例え話を加えてください」などの指示で調整が可能です。
たとえば、経営層に向けては「システムの応答性が向上することで、業務の生産性が20%向上する見込みです」といったビジネスインパクトを強調した表現に変換できます。
また、ITに不慣れなスタッフに向けては、「サーバーの冗長化=予備のパソコンを用意しておき、メインが壊れてもすぐ使えるようにすること」などと比喩を交えて説明することで理解しやすくなります。
こうした再構成は、プレゼン資料、社内通知、トレーニングマテリアルなどへの転用時にも非常に有効です。
ChatGPTでできないこと
ChatGPTは強力な補助ツールですが、すべての業務を自動化・代替できるわけではありません。以下は、特に注意すべき「ChatGPTが不得意または対応できない領域」です。
- 業務固有の文脈理解が困難
- 特定企業の事情、業界の慣習、過去のトラブル経緯など、外部に公開されていない知識に基づく判断には限界があります。
- あいまいな要求の読解力に限界
- 「もっと見やすく」「なんとなく不便」など、抽象的かつ主観的な表現の意図を正確に汲み取ることは困難です。人間によるヒアリングと深掘りが必要です。
- 利害関係者間の調整ができない
- 開発部門と営業部門など、要件が相反する場合の交渉・妥協点の探索はAIにはできません。ファシリテーターのスキルが不可欠です。
- 最新の社内状況やトレンドに追従できない
- ChatGPTは訓練時点の知識をもとに応答するため、リアルタイムの社内事情や技術トレンドを前提とした提案には限界があります。
- 出力内容の正当性を保証できない
- ChatGPTはあくまで言語予測モデルであり、出力された内容が正しいとは限りません。必ず人間の確認と責任ある判断が必要です。
できること | できないこと |
---|---|
要件定義書のたたき台作成 | 特定業界・企業特有の事情の把握 |
ユーザーストーリーの自動生成 | あいまいな要求やニュアンスの理解 |
非機能要件の網羅的な洗い出し | 部門間の調整や合意形成のファシリテーション |
用語集やFAQのテンプレート作成 | 出力内容の最終判断や責任を伴う意思決定 |
出力フォーマットの変更(表形式、JSONなど) | ヒアリング現場での傾聴・空気感の把握 |
繰り返しのレビューを通じた情報整理・改善提案 | 最新情報(社内事情やトレンド)を前提とした判断 |
ChatGPTの活用における注意点
ChatGPTは強力なツールですが、適切な使い方を誤ると誤解を招いたり、プロジェクトのリスクとなる可能性があります。以下の注意点を理解したうえで活用することが重要です。
- プロンプト設計が重要
- 曖昧な指示ではChatGPTも曖昧な回答しかできません。たとえば「請求機能の概要を作って」と入力するより、「中小企業向け販売管理システムの請求書発行機能について、月末締め請求・消費税対応・PDF出力対応の要件を含めて、機能要件を箇条書きで作成してください」と入力する方が、具体性の高い出力を得られます。プロンプトには「目的(何のためか)」「対象(どのシステムか)」「形式(箇条書き・表など)」「出力条件(具体的な例を含むなど)」を意識して盛り込むとよいでしょう。
- 出力内容の正確性を常に検証する
- ChatGPTの回答はあくまで提案です。実際に使うには必ず内容を確認し、実務上の要件に合っているかを検証しましょう。たとえば、セキュリティ要件で「WAFの導入」と書かれていたとしても、自社環境ではCDNを通じて既に対応済みかもしれません。このように、出力結果を鵜呑みにせず、現場の仕様・方針と照らし合わせて修正・調整を行うことが重要です。
- セキュリティとプライバシーの配慮
- ChatGPTに入力する情報には注意が必要です。たとえば、顧客名や具体的なプロジェクト名を含む情報は入力せず、「A社」「案件X」などに置き換えることで、情報漏えいリスクを軽減できます。社内での活用ルールを整備し、情報の匿名化・抽象化を徹底することが求められます。
- 過信しないこと
- ChatGPTは非常に便利なツールですが、すべてを任せきりにできるわけではありません。とくにヒアリングや業務背景をくみ取る作業は人間にしかできない領域です。ChatGPTの出力はあくまでたたき台や補助資料として活用し、必要に応じて実務担当者の意見や関連資料と突き合わせながら調整する姿勢が重要です。
ChatGPTは、システム開発における要件定義業務を支援するツールとして、多くの場面で活用が進んでいます。たとえば、初期ドラフトの作成やユーザーストーリーの整理、非機能要件の洗い出し、用語集やFAQの準備など、手間のかかる工程を効率化できる場面は少なくありません。
ただし、業務特有の背景知識や関係者間の認識のすり合わせ、あいまいな要求の理解といった部分は、現時点では人間の関与が不可欠です。ChatGPTだけですべてを担うのではなく、あくまで業務をサポートする「補助ツール」として位置づけることが大切です。
今後AIの進化が続く中で、プロンプトの設計や使い方の工夫といったスキルは、開発現場における一つの強みになっていくでしょう。人とAIが協力しながら、よりよい開発プロセスを模索していくことが求められます。