構築例一覧へ戻る
構築例 06 / Build Example
Example 06 / 11

業務マニュアル生成AI

業務フロー・ユースケース記述・画面定義書などの入力データから、社内閉域のAIで業務マニュアルを自動生成・更新・配布するシステム。機密を外部に出さずに作成工数を削減しつつ、レビュー承認・公開範囲制御・版管理・変更追従で最新性と統制を保ちます。

フロントエンド
React + TypeScript + Vite
バックエンド
Express REST API(インメモリ)
設計トレース
業務シナリオ → ユースケース図 / クラス図 / 状態機械 → 実装
閉域AI生成 標準7構成テンプレート レビュー承認・公開範囲 版管理・差分比較 変更追従・影響範囲分析 PDF/Word/Markdown出力
設計モデル / Design Models

マニュアルを作るAIを、モデルから作る。

本アプリの実装は、業務シナリオから導出したユースケース図・クラス図・状態機械に基づきます。アクター(管理者 / 一般ユーザ)と UC-01〜UC-23、業務ルール(BR-001〜021)・不変条件(INV)がそのまま実装へトレースされ、操作マニュアルの各章と対応します。

ユースケース図 Use Case Diagram
業務マニュアル生成AI ユースケース図
管理者(作成・承認)と一般ユーザ(閲覧)の2アクターに対し、テンプレート定義・AI生成・レビュー公開・変更追従・出力の UC を配置。閉域AI(BR-003)・承認必須(BR-006)・公開範囲(BR-007)などの制約を併記。 原寸で開く ↗
クラス図(ドメインモデル) Domain Class Diagram
業務マニュアル生成AI クラス図(ドメインモデル)
BusinessManual・ManualSection・ManualFigure・ManualVersion・ManualTemplate・AIManualGeneration・AIEngine・Prompt・InputSource・ChangeFollowUp・Review・PublishSetting・Department・Employee などの関連・多重度と、4つの状態機械を定義。 原寸で開く ↗

本書は、本アプリケーション(業務マニュアル生成AI / Business Manuals Create)の操作手順をまとめた利用者向けマニュアルです。画面・ボタン名は実装に準拠しています。

  • 対象アプリ: 業務マニュアル生成AI
  • 構成: フロントエンド(React + TypeScript + Vite)+ バックエンド(Express REST API・インメモリ)
  • 設計トレース: 業務シナリオ → ユースケース図 / クラス図 / 状態機械 → 実装

01はじめに

本アプリは、業務フロー・ユースケース記述・業務ルール・既存マニュアル・画面定義書などの入力データから、社内閉域のAIで業務マニュアルを自動生成・更新・配布するシステムです。機密を外部に出さずに作成工数を削減しつつ、最新性とレビュー統制を保ちます。主な機能は次のとおりです。

区分機能
入力データ管理業務フロー・画面定義書・DB設計などの入力データ・ファイルの登録
テンプレート管理標準構成(業務概要/前提条件/手順/分岐条件/注意事項/画面操作説明/用語説明)のテンプレート化・版管理
AI生成業務スコープを指定し、閉域AI(Claude)で標準構成マニュアルを自動生成・再生成
レビュー・公開生成物のレビュー承認、公開対象(部門・職責)を指定した社内公開
版管理・差分公開マニュアルのバージョン管理と版間差分比較
変更追従入力データの変更検出・影響範囲分析・承認付き自動更新
閲覧・出力文書ビューアでの表示(図・罫線表を含む)、PDF/Word/Markdown 出力・印刷

代表的なアクター(利用者像):管理者(Admin)=作成・承認 / 一般ユーザ(GeneralUser)=閲覧。

本アプリはログイン認証を実装していないため、すべての画面に誰でもアクセスできます。権限は「社員」データ上の属性として管理します。

02起動と終了

2.1 必要環境

  • Node.js 20.x 以降

2.2 起動手順

2つのサーバーを起動します。ターミナルを2つ使います。

# ① バックエンド(REST API / ポート 4000)
cd app/backend
npm install        # 初回のみ
npm run dev        # 起動時にデモデータを投入

# ② フロントエンド(画面 / ポート 5173)
cd app/frontend
npm install        # 初回のみ
npm run dev

ブラウザで http://localhost:5173/ を開きます。

フロントエンドは /api へのアクセスを自動的にバックエンド(4000番)へ転送します。先にバックエンドを起動してください。
ヘルスチェック: GET http://localhost:4000/api/health → {"success":true}
⚠️ Mac(Apple Silicon)で動かす場合:Windows等の別環境で npm install 済みの node_modules を持ち込むと、ネイティブバイナリ(esbuild 等)が合わず起動しません。backend/node_modules・frontend/node_modules を削除してから、各ディレクトリで npm install を実行し直してください。

2.3 終了手順

各ターミナルで Ctrl + C。または以下で停止します。

lsof -ti:4000,5173 | xargs kill

03画面構成

画面左のサイドバーから各機能へ移動します。グループ構成は次のとおりです。

グループメニュー内容
(トップ)ダッシュボード件数サマリと最近のマニュアル・AIエンジン状態
マニュアル業務マニュアル / マニュアルセクション / マニュアル図 / マニュアルバージョン / マニュアル出力マニュアル本体と構成要素・版・出力
テンプレート管理標準テンプレート / テンプレートセクション / テンプレートバージョン標準構成の定義と版管理
入力データ・変更追従入力データ・ファイル / 影響範囲分析生成の入力と変更追従
生成・AI生成ジョブ / プロンプト / AIエンジンAI生成の実行・証跡・エンジン設定
公開・組織レビュー / 公開設定 / 部門 / 社員承認・公開範囲・組織データ

各機能は共通して 一覧 → 詳細 → 新規/編集 の3画面で構成されます。

  • 一覧画面: 検索・絞り込み・並び替え・ページ送り。行クリックで詳細へ。右上「新規作成」で新規登録。
  • 詳細画面: 内容表示と、右上の操作ボタン(一覧へ・編集・削除)、上部の「操作(状態遷移)」セクションの業務操作ボタン、関連する子情報の一覧。
  • 新規/編集画面: 入力フォーム。「作成」または「更新」で保存、「キャンセル」で戻る。
「操作(状態遷移)」のボタンは常に表示されますが、実行可否は現在の状態に応じてサーバー側で判定されます。現在の状態で許されない操作を押すと、理由(例:「レビュー中のマニュアルのみ承認・公開できます」)が表示され、状態は変わりません。

04ダッシュボード

トップ画面(/)に表示されます。

  • 各データの件数サマリ(業務マニュアル・テンプレート・入力データ・生成ジョブ・影響範囲分析・AIエンジン・社員・プロンプト)
  • 最近の業務マニュアル(状態・AI生成/手動バッジ付き。クリックで詳細へ)
  • AIエンジンの状態(社内閉域・機密非外部送信 BR-003 の遵守状況。「全AIエンジンが外部送信を遮断」バッジ)

全体状況の把握と、各機能への入り口として利用します。画面左がサイドバー、中央が表示エリアです。

ダッシュボード画面
ダッシュボード画面

05業務マニュアル

本システムの中心となるデータです。標準テンプレート構成のセクションを持ち、レビュー承認を経て、部門・職責を指定して公開・バージョン管理されます。

5.1 マニュアル一覧

  • マニュアル名 / 状態 / 対象業務スコープ / テンプレート / 現行バージョン / AI生成 を表示。
  • 検索、状態などによる絞り込み、並び替え、ページ送りが可能。行クリックで詳細へ。
業務マニュアル一覧画面
業務マニュアル一覧画面

5.2 マニュアルの新規作成

右上「新規作成」から登録します。

  • マニュアル名(必須)、対象業務スコープ(必須)、状態、テンプレート、現行バージョン、AI生成チェック。
  • 「作成」で保存。通常は AI 生成(生成ジョブ)から作られますが、手動での新規作成も可能です。
業務マニュアルの新規作成画面
業務マニュアルの新規作成画面

5.3 マニュアル詳細

詳細画面は、上から次の要素で構成されます。

  1. 操作(状態遷移): 状態に応じた業務操作ボタン(5.4)。
  2. マニュアル本文(標準構成レイアウト): 標準7構成(業務概要/前提条件/手順/分岐条件/注意事項/画面操作説明/用語説明)を文書レイアウトで表示。「印刷プレビュー」で本文のみを印刷できます(BR-013/BR-019/BR-020)。
  3. 前バージョンとの差分比較(BR-009): 直前バージョンとの追加・削除行を色分け表示(前バージョンが無い場合は「比較できる前バージョンがありません」)。
  4. 詳細情報: 名称・状態・スコープ・テンプレート・現行バージョン・AI生成・日時。
  5. 関連する子情報の一覧: セクション(標準構成)/図(画面図・フローチャート等)/バージョン履歴/レビュー/公開設定/出力/紐付く入力データ/生成ジョブ。各「詳細」から個別画面へ移動できます。
業務マニュアル詳細画面(本文ビューア・差分・関連情報)
業務マニュアル詳細画面(本文ビューア・差分・関連情報)
上図は「公開済(v2)」のマニュアルの例です。本文ビューア・版間差分・各種関連情報がひと目で確認できます。

5.4 マニュアルのワークフロー(状態遷移)

詳細画面上部「操作(状態遷移)」のボタンで状態を進めます。ボタンは現在の状態に応じて可否が判定されます。

ボタン実行できる状態結果補足
レビュー提出下書きレビュー中へ—
修正指示(差戻)レビュー中下書きへ戻す再生成・修正のため差し戻し
承認・公開レビュー中公開済へ⚠️ 公開設定(部門・職責)が1件以上必要(BR-006/BR-007)
新版を公開公開済新バージョンを発番して公開コメント付きで版を追加(BR-008)
アーカイブ公開済アーカイブ(旧版退避)へ—
レビュー中マニュアルの詳細(承認・差戻ボタン)
レビュー中マニュアルの詳細(承認・差戻ボタン)
上図は「レビュー中」状態の例です。レビューで「修正指示」が付いており、この状態から「承認・公開」または「修正指示(差戻)」に進めます。
⚠️ 公開設定が無いと「承認・公開」できません。先に「公開・組織 → 公開設定」で対象部門・職責を登録してください(9.2)。

06マニュアル生成(生成ジョブ・AIエンジン・プロンプト)

AIによる自動生成の中核機能です。管理者が業務スコープを説明し、テンプレートとAIエンジンを指定して生成を指示します。

6.1 生成ジョブ(AIManualGeneration)

「生成・AI → 生成ジョブ」で管理します。ジョブ詳細には、対象業務スコープ・トリガー(手動/変更追従)・テンプレート・AIエンジン・対象マニュアル・使用プロンプトが表示されます。

  • 操作(状態遷移): 実行 / 完了 / 失敗 / 再試行。
  • 状態は 待機(Pending)→ 生成中(Generating)→ 生成済(Generated)(または失敗 Failed)と進みます。
  • 「使用プロンプト」に、生成に用いたプロンプト(本文生成・画面図生成・フローチャート生成など)が証跡として記録されます(BR-005)。
生成ジョブ詳細画面(AIエンジン・使用プロンプト)
生成ジョブ詳細画面(AIエンジン・使用プロンプト)

6.2 AIエンジン(BR-003 / BR-004)

「生成・AI → AIエンジン」で、生成に用いるエンジンを管理します。

  • AIエンジンは社内閉域(オンプレ/専用環境)で動作し、機密データを外部送信しません(BR-003)。
  • 導入時にエンジンを指定でき、本テストでは Claude を指定しています(BR-004)。
  • ダッシュボードの「AIエンジン」カードで、全エンジンが外部送信を遮断していることを確認できます。

6.3 プロンプト(BR-005)

「生成・AI → プロンプト」で、本システム及びその他業務で使用したプロンプトを記録・管理します。用途・利用区分・AIエンジン・使用日時が残り、監査の対象になります。

07テンプレート管理

業務マニュアルの標準構成を定義します。管理者が作成・修正・削除し、バージョン管理します(BR-010/BR-016)。

7.1 標準テンプレート

「テンプレート管理 → 標準テンプレート」で管理します。詳細画面には、セクション定義(標準7構成)・バージョン履歴・このテンプレートから作成されたマニフェスト一覧が表示されます。

  • 操作(状態遷移): 有効化 / 修正(下書きへ) / アーカイブ。
  • 状態は 下書き(Draft)→ 有効(Active)→(下書き|アーカイブ) と遷移します。
⚠️ 有効化には標準セクション定義が1件以上必要です(INV-Template)。
標準テンプレート詳細画面(セクション定義・版履歴)
標準テンプレート詳細画面(セクション定義・版履歴)

7.2 テンプレートセクション/バージョン

  • テンプレートセクション: 各構成セクション(業務概要・前提条件・手順・分岐条件・注意事項・画面操作説明・用語説明)の枠と記述ガイドを定義。
  • テンプレートバージョン: バージョン番号・作成日/修正日・管理者名の版履歴(BR-010)。

08入力データと変更追従(影響範囲分析)

8.1 入力データ・ファイル(InputSource)

「入力データ・変更追従 → 入力データ・ファイル」で、生成の入力となるデータを管理します。種別は 業務フロー / ユースケース記述 / 業務ルール / 既存マニュアル / 操作ログ / 画面定義書 / DB設計。業務フローはマニュアルと紐づけて表示できます(BR-015)。

8.2 影響範囲分析(ChangeFollowUp / BR-011・BR-012)

入力データが変更されたとき、差分を検出し、どのマニュアルが影響を受けるかを分析して、承認付きで自動更新する変更追従の記録です。詳細画面には、入力データ・差分要約・影響マニュアル数・影響マニュアル一覧が表示されます。

  • 操作(状態遷移): 影響分析 / 自動更新 / 影響なしで終了 / 承認(公開)。
  • 状態は 検出(Detected)→ 影響分析済(Analyzed)→(自動更新 Regenerated →)承認(Approved) と進みます。
⚠️ 自動更新は影響マニュアルが特定(Analyzed)された後にのみ実行できます。管理者承認は必須です(BR-011)。
影響範囲分析の詳細画面(差分・影響マニュアル)
影響範囲分析の詳細画面(差分・影響マニュアル)

09レビュー・公開・組織

9.1 レビュー(BR-006)

「公開・組織 → レビュー」で、自動生成マニュアルに対する管理者のレビューを管理します。判定は 承認(Approved)/修正指示(ChangeRequested)/却下(Rejected)。承認されなければマニュアルは公開されません。

9.2 公開設定(公開範囲の指定)

「公開・組織 → 公開設定」で、公開対象の部門と職責を指定します(BR-007)。

公開範囲(職責)想定
役員のみ(ExecutivesOnly)役員限定
部長以上(GeneralManagerAndAbove)部長以上
課長以上(ManagerAndAbove)課長以上
全社員(AllEmployees)全社員

部門・社員データ(名前・所属・役職)に基づき閲覧範囲を制御する想定です。マニュアルの「承認・公開」には、この公開設定が1件以上必要です。

9.3 部門・社員

  • 部門(Department): 公開対象の指定と閲覧範囲制御に用いる組織データ。
  • 社員(Employee): 名前・所属・役職を管理。管理者(Admin)/一般ユーザ(GeneralUser)の区分と職責で、公開マニュアルの閲覧可否が決まります(BR-017/BR-018)。

10マニュアルの出力(PDF/Word/Markdown)

「マニュアル → マニュアル出力」または、マニュアル詳細の関連「出力」から確認します。出力は公開済(Published)マニュアルに対して行います。

  • 出力形式は PDF / Word / Markdown / 印刷(BR-014)。
  • 出力詳細画面では、出力済みマニュアルのプレビュー(標準構成レイアウト)、「ダウンロード」ボタン、「印刷プレビュー」が利用できます。
  • 図・罫線表は、ビューア表示・印刷・各形式出力のいずれでも表現を保ちます(BR-021)。
マニュアル出力のプレビュー画面(ダウンロード・印刷)
マニュアル出力のプレビュー画面(ダウンロード・印刷)

11業務ルールと状態遷移

11.1 マニュアルの状態遷移

         レビュー提出            承認・公開(公開設定≥1)
 下書き ──────────────▶ レビュー中 ──────────────▶ 公開済 ──── アーカイブ ──▶ アーカイブ
   ▲                     │                          │
   │   修正指示(差戻)     │                          │ 新版を公開
   └─────────────────────┘                          ▼
                                                  (新バージョンを発番して公開)
  • 「レビュー提出」は 下書き から。
  • 「修正指示(差戻)」は レビュー中 から下書きへ。
  • 「承認・公開」は レビュー中 から。公開設定(部門・職責)が1件以上必要。
  • 「新版を公開」は 公開済 から(コメント付きで版を追加)。
  • 「アーカイブ」は 公開済 から。

11.2 テンプレート/生成ジョブ/影響範囲分析の状態

対象状態遷移
テンプレート下書き → 有効化 → 有効 →(修正で下書き/アーカイブ)。有効化はセクション1件以上が必要
生成ジョブ待機 → 実行 → 生成中 → 完了 → 生成済(失敗時は失敗、再試行で復帰)
影響範囲分析検出 → 影響分析 → 影響分析済 →(自動更新 →)承認。自動更新は分析済の後のみ

11.3 主な業務ルール

ID内容アプリでの挙動
BR-001標準テンプレート構成(業務概要/前提条件/手順/分岐条件/注意事項/画面操作説明/用語説明)で自動生成本文ビューア・テンプレートが標準7構成
BR-002生成は管理者が説明した業務スコープに関連する業務のみを対象生成ジョブの「対象業務スコープ」
BR-003AIエンジンは社内閉域で動作し機密データを外部送信しないAIエンジンの配置形態・外部送信遮断表示
BR-004AIエンジンは導入時に指定できる(本テストは Claude)AIエンジンに Claude を登録
BR-005使用したプロンプトを記録・管理するプロンプト機能・生成ジョブの「使用プロンプト」
BR-006管理者のレビュー承認を経なければ公開されない承認・公開はレビュー中からのみ/公開設定必須
BR-007公開は対象部門と職責を指定して閲覧範囲を制御公開設定(部門・公開範囲)
BR-008公開マニュアルはバージョン管理(番号・修正日・修正者・コメント)バージョン履歴・「新版を公開」
BR-009バージョン間で差分比較できるマニュアル詳細「前バージョンとの差分比較」
BR-010標準テンプレートはバージョン管理するテンプレートバージョン
BR-011入力データ変更時、承認付きでマニュアルを自動更新(変更追従)影響範囲分析の自動更新・承認
BR-012変更追従は差分検出と影響範囲分析を行う影響範囲分析(差分要約・影響マニュアル一覧)
BR-013文書ビューアは表示・差分・検索を提供本文ビューア・印刷プレビュー・差分
BR-014PDF/Word/Markdown へ出力・印刷できるマニュアル出力(形式選択・プレビュー・ダウンロード)
BR-019画面図・フローチャート等の図を種別・キャプション付きで挿入マニュアル図(図種別・図番号・図題)
BR-020リストは罫線入りの表で表現本文レイアウトの罫線表
BR-021図・表は表示/印刷/各形式出力で表現を保つビューア・出力の共通レイアウト

12よくある質問・トラブルシュート

症状原因・対処
マニュアルを「承認・公開」できない公開設定(部門・職責)が0件。先に「公開設定」を1件以上登録してください(BR-006/BR-007)。
「承認・公開」ボタンを押しても状態が変わらない現在の状態が「レビュー中」でない。承認はレビュー中からのみ可能です。先に「レビュー提出」を実行。
テンプレートを「有効化」できない標準セクション定義が0件。テンプレートセクションを1件以上登録してください(INV-Template)。
影響範囲分析で「自動更新」できない状態が「影響分析済(Analyzed)」でない。先に「影響分析」を実行してください(BR-011)。
画面は出るがデータが空バックエンド未起動。app/backend で npm run dev を実行。
ポートが使用中で起動できない既存プロセスを停止:lsof -ti:4000,5173 | xargs kill
別環境で入れた node_modules で起動しない(Mac)backend/frontend の node_modules を削除し、各ディレクトリで npm install を実行し直す(2.2)。

13制約事項

  • データはインメモリ保持です。バックエンドを再起動すると、登録したデータはシード(初期)状態に戻ります。
  • ログイン認証はありません。権限は社員データ上の属性(区分・職責)として扱います。閲覧範囲制御(BR-018)は設計上の想定です。
  • AI生成・出力はデモ実装です。生成ジョブはデモの状態遷移として動作し、マニュアル出力(PDF/Word/Markdown)は形式・本文の記録とプレビューまでを行う想定で、実ファイル生成は本デモ範囲外です。AIエンジンは「Claude を閉域指定」というメタデータとして扱います。
  • 本番運用では、永続化層を PostgreSQL(Prisma 等)へ、AI連携を実際の閉域エンジンへ差し替えることを想定しています。

本マニュアルは uml-workflow-v3 で生成したアプリケーションの実装に基づいています。