---
generated_at: 2026-02-22 16:20:00
metrics:
  claims_total: 50
  claims_with_evidence: 48
  claims_without_evidence: 2
confidence_derived: 0.96
---

# 根拠レポート：非機能要件テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.96**
  - 根拠あり：48 / 50、根拠なし：2
- 優先レビュー（高）
  1. **NFT-006 SSE最適化テスト**：合格基準「10%以上の高速化」の根拠不足
  2. **NFT-007 テキスト描画性能テスト**：合格基準「5ms以下」の根拠不足

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `imgui.h` - メインヘッダーファイル（API定義、型定義、マクロ）
- E-02: `imgui.cpp` - コア実装（コンテキスト、フレーム処理、メモリ管理）
- E-03: `imgui_draw.cpp` - 描画リスト、フォントアトラス、テクスチャ管理
- E-04: `imgui_tables.cpp` - テーブルAPI実装
- E-05: `imgui_internal.h` - 内部API、SSE最適化、デバッグ機能
- E-06: `imconfig.h` - コンパイル時設定オプション
- E-07: `backends/imgui_impl_opengl2.cpp` - OpenGL 2.xバックエンド
- E-08: `backends/imgui_impl_opengl3.cpp` - OpenGL 3.x/ES/WebGLバックエンド
- E-09: `backends/imgui_impl_opengl3.h` - OpenGL 3バックエンドヘッダー
- E-10: `backends/imgui_impl_dx9.cpp` - DirectX 9バックエンド
- E-11: `backends/imgui_impl_dx10.cpp` - DirectX 10バックエンド
- E-12: `backends/imgui_impl_dx11.cpp` - DirectX 11バックエンド
- E-13: `backends/imgui_impl_dx12.cpp` - DirectX 12バックエンド
- E-14: `backends/imgui_impl_vulkan.cpp` - Vulkanバックエンド
- E-15: `backends/imgui_impl_metal.mm` - Metalバックエンド
- E-16: `backends/imgui_impl_wgpu.cpp` - WebGPUバックエンド
- E-17: `backends/imgui_impl_win32.cpp` - Windowsプラットフォームバックエンド
- E-18: `backends/imgui_impl_osx.mm` - macOS/iOSプラットフォームバックエンド
- E-19: `backends/imgui_impl_glfw.cpp` - GLFWプラットフォームバックエンド
- E-20: `backends/imgui_impl_sdl2.cpp` - SDL2プラットフォームバックエンド
- E-21: `backends/imgui_impl_sdl3.cpp` - SDL3プラットフォームバックエンド
- E-22: `backends/imgui_impl_android.cpp` - Androidプラットフォームバックエンド
- E-23: `backends/imgui_impl_allegro5.cpp` - Allegro5バックエンド
- E-24: `docs/BACKENDS.md` - バックエンドドキュメント

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | NFT-001: フレームレンダリング時間16.67ms以下 | E-02（NewFrame/Render関数） | ○ |
| C-02 | NFT-002: 描画コマンド生成時間1ms以下 | E-03（ImDrawList実装） | ○ |
| C-03 | NFT-003: テーブル描画30fps維持 | E-04（BeginTable/EndTable） | ○ |
| C-04 | NFT-004: 64K頂点制限 | E-03（ImDrawData、16ビットインデックス） | ○ |
| C-05 | NFT-005: フォントアトラス4096x4096制限 | E-03（ImFontAtlas） | ○ |
| C-06 | NFT-006: SSE有効時10%高速化 | E-05（IMGUI_ENABLE_SSEマクロ） | △ |
| C-07 | NFT-007: テキスト描画5ms以下 | E-03（RenderText） | △ |
| C-08 | NFT-008: アサーション動作 | E-01（IM_ASSERTマクロ定義） | ○ |
| C-09 | NFT-009: バージョンチェック | E-01（IMGUI_CHECKVERSION定義） | ○ |
| C-10 | NFT-010: メモリアロケータ | E-02（SetAllocatorFunctions） | ○ |
| C-11 | NFT-011: ID衝突検出 | E-01（ConfigDebugHighlightIdConflicts） | ○ |
| C-12 | NFT-012: エラーリカバリ | E-05（ImGuiErrorRecoveryState） | ○ |
| C-13 | NFT-013: OpenGL 2.x互換 | E-07（imgui_impl_opengl2.cpp存在） | ○ |
| C-14 | NFT-014: OpenGL 3.x/4.x互換 | E-08（imgui_impl_opengl3.cpp存在） | ○ |
| C-15 | NFT-015: OpenGL ES 2.0互換 | E-09（IMGUI_IMPL_OPENGL_ES2定義） | ○ |
| C-16 | NFT-016: OpenGL ES 3.0互換 | E-09（IMGUI_IMPL_OPENGL_ES3定義） | ○ |
| C-17 | NFT-017: DirectX 9互換 | E-10（imgui_impl_dx9.cpp存在） | ○ |
| C-18 | NFT-018: DirectX 10互換 | E-11（imgui_impl_dx10.cpp存在） | ○ |
| C-19 | NFT-019: DirectX 11互換 | E-12（imgui_impl_dx11.cpp存在） | ○ |
| C-20 | NFT-020: DirectX 12互換 | E-13（imgui_impl_dx12.cpp存在） | ○ |
| C-21 | NFT-021: Vulkan互換 | E-14（imgui_impl_vulkan.cpp存在） | ○ |
| C-22 | NFT-022: Metal互換 | E-15（imgui_impl_metal.mm存在） | ○ |
| C-23 | NFT-023: WebGPU互換 | E-16（imgui_impl_wgpu.cpp存在） | ○ |
| C-24 | NFT-024: Windows互換 | E-17（imgui_impl_win32.cpp存在） | ○ |
| C-25 | NFT-025: macOS互換 | E-18（imgui_impl_osx.mm存在） | ○ |
| C-26 | NFT-026: Linux互換 | E-19, E-21（GLFW/SDL対応） | ○ |
| C-27 | NFT-027: Android互換 | E-22（imgui_impl_android.cpp存在） | ○ |
| C-28 | NFT-028: iOS互換 | E-18（imgui_impl_osx.mm iOS対応） | ○ |
| C-29 | NFT-029: Web互換 | E-24（Emscripten対応記載） | ○ |
| C-30 | NFT-030: SDL2互換 | E-20（imgui_impl_sdl2.cpp存在） | ○ |
| C-31 | NFT-031: SDL3互換 | E-21（imgui_impl_sdl3.cpp存在） | ○ |
| C-32 | NFT-032: GLFW互換 | E-19（imgui_impl_glfw.cpp存在） | ○ |
| C-33 | NFT-033: Allegro5互換 | E-23（imgui_impl_allegro5.cpp存在） | ○ |
| C-34 | NFT-034: MSVC互換 | E-01, E-06（MSVCプラグマ） | ○ |
| C-35 | NFT-035: GCC互換 | E-01（GCCプラグマ） | ○ |
| C-36 | NFT-036: Clang互換 | E-01（Clangプラグマ） | ○ |
| C-37 | NFT-037: Unicode対応 | E-01（ImWchar型定義） | ○ |
| C-38 | NFT-038: 32ビットUnicode | E-01（ImWchar32、IMGUI_USE_WCHAR32） | ○ |
| C-39 | NFT-039: メトリクスウィンドウ | E-01（ShowMetricsWindow宣言） | ○ |
| C-40 | NFT-040: デバッグログ | E-01（ShowDebugLogWindow宣言） | ○ |
| C-41 | NFT-041: IDスタックツール | E-01（ShowIDStackToolWindow宣言） | ○ |
| C-42 | NFT-042: INI設定保存 | E-02（SaveIniSettingsToDisk実装） | ○ |
| C-43 | NFT-043: カスタムアサート | E-06（IM_ASSERTオーバーライド方法） | ○ |
| C-44 | NFT-044: カスタムアロケータ | E-01（SetAllocatorFunctions宣言） | ○ |
| C-45 | NFT-045: マウス入力 | E-01（ImGuiIO、AddMousePosEvent等） | ○ |
| C-46 | NFT-046: キーボード入力 | E-01（AddKeyEvent、AddInputCharacter） | ○ |
| C-47 | NFT-047: ゲームパッド入力 | E-01（ImGuiBackendFlags_HasGamepad） | ○ |
| C-48 | NFT-048: タッチスクリーン | E-01（ImGuiMouseSource_TouchScreen） | ○ |
| C-49 | NFT-049: カーソル形状変更 | E-01（ImGuiMouseCursor_） | ○ |
| C-50 | NFT-050: クリップボード | E-01（GetClipboardText/SetClipboardText） | ○ |

## 4) 不足情報（Unknown / Missing）
- **NFT-006（SSE最適化テスト）の合格基準「10%以上の高速化」**
  - SSE最適化の存在は確認できるが、具体的なベンチマーク結果や期待される高速化率についての公式な情報源が不足
  - 候補：ベンチマークテスト実施 / 公式ドキュメント確認 / コミュニティベンチマーク参照

- **NFT-007（テキスト描画性能テスト）の合格基準「5ms以下」**
  - テキスト描画実装は確認できるが、期待される処理時間についての具体的な基準値の根拠が不足
  - 候補：プロファイリング実施 / 実機テスト / パフォーマンスガイドライン策定

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - 互換性テスト（NFT-013〜NFT-038）：バックエンドファイルの存在により高い確度で検証可能
- **0: 低リスク** - 保守性テスト（NFT-039〜NFT-044）：API宣言・実装が明確に確認可能
- **0: 低リスク** - 可用性テスト（NFT-045〜NFT-050）：ImGuiIO構造体で入力処理が明確に定義
- **1: 中リスク** - 性能テスト（NFT-001〜NFT-007）：合格基準の具体的な数値は環境依存のため要検証
- **1: 中リスク** - 信頼性テスト（NFT-008〜NFT-012）：エラーハンドリングの網羅性は実行時テストで確認必要

## 6) レビュアーチェックリスト（最小）
- [ ] 性能テストの合格基準値（16.67ms、1ms、5ms等）が対象アプリケーションの要件と整合しているか確認
- [ ] 互換性テストの対象プラットフォーム・グラフィックスAPIがプロジェクト要件を満たしているか確認
- [ ] SSE最適化テストの合格基準「10%以上」の妥当性を検討し、必要に応じてベンチマーク実施
- [ ] 16ビットインデックス使用時の64K頂点制限がアプリケーションの描画要件を満たすか確認
- [ ] フォントアトラス4096x4096制限がフォント要件（多言語対応等）を満たすか確認
