性能・拡張性
本ドキュメントは、TASHIKAプラットフォームの性能・拡張性に関する要件を定義します。
NOTE
分類は IPA 非機能要求グレード 大項目 B に準拠しています。 パフォーマンス監視は QA-001 を参照。
PE-001: パフォーマンス (Performance)
Web パフォーマンス(Core Web Vitals)
| 指標 | 目標値 | 測定条件 |
|---|---|---|
| LCP (Largest Contentful Paint) | ≤ 1.5秒 | 4G回線、モバイル端末 |
| INP (Interaction to Next Paint) | ≤ 200ms | P75 |
| CLS (Cumulative Layout Shift) | ≤ 0.1 | |
| TTFB (Time to First Byte) | ≤ 200ms | CDN経由 |
API レスポンスタイム
| 操作カテゴリ | 目標値(P95) | 例 |
|---|---|---|
| 単純読み取り | ≤ 200ms | 従業員情報取得、申告データ表示 |
| 一覧検索(≤ 1,000件) | ≤ 500ms | 従業員一覧、申告一覧 |
| 書き込み(自動保存) | ≤ 300ms | 申告データ保存 |
| 税額計算(個人) | ≤ 1秒 | 1名分の年税額計算 |
| 一括税額計算 | ≤ 30秒 | 100名分 |
| PDF生成(単体) | ≤ 5秒 | 源泉徴収票1件 |
| PDF生成(一括) | ≤ 5分 | 1,000名分(非同期ジョブ) |
| XML帳票出力 | ≤ 30秒 | 法定調書合計表 |
ファイルアップロード
| 指標 | 目標値 |
|---|---|
| 最大ファイルサイズ | 10MB/件 |
| 対応フォーマット | JPEG, PNG, PDF, XML, HEIC |
| 1申告あたり最大件数 | 20件 |
| ウイルススキャン完了 | ≤ 10秒/件 |
PE-002: スケーラビリティ (Scalability)
想定規模
| 指標 | 初年度 | 3年後目標 | 設計上限 |
|---|---|---|---|
| 企業数 | 100社 | 1,000社 | 10,000社 |
| 総従業員数 | 10,000人 | 100,000人 | 1,000,000人 |
| 同時接続ユーザー数 | 500 | 5,000 | 50,000 |
| 1月ピーク時 RPS | 100 | 1,000 | 10,000 |
バースト対策
- 1月初旬(年始調整集中期間)に通常期の 10倍 のトラフィックを想定
- オートスケーリング: CPU使用率 70% をトリガーにインスタンス自動追加
- スケールアウト所要時間: ≤ 2分
- 一括処理(PDF生成、帳票出力等)は非同期ジョブキューで処理し、API層を圧迫しない
PE-003: 容量計画 (Capacity Planning)
ストレージ推定(企業あたり、年間)
| データ種別 | 従業員1人あたり | 100名企業/年 | 備考 |
|---|---|---|---|
| 申告データ(JSONB) | ~50KB | ~5MB | スナップショット含む |
| 証憑ファイル | ~2MB | ~200MB | 平均5件×400KB |
| 監査ログ | ~100KB | ~10MB | 7年保持 |
| 帳票バイナリ(PDF/XML) | ~500KB | ~50MB | 源泉徴収票等 |
| 年間合計 | ~2.7MB | ~265MB | |
| 7年累計 | ~19MB | ~1.9GB | 法定保存期間 |
ストレージ階層
| 層 | 対象 | ストレージ要件 |
|---|---|---|
| Hot | 直近2年度のデータ | RDB + 標準オブジェクトストレージ |
| Cool | 3〜7年度のデータ | 低頻度アクセス向けオブジェクトストレージ |
| 削除 | 7年経過後 | 物理削除(→ CR-007) |
PE-004: ユーザビリティ (Usability)
| 指標 | 目標値 | 対象 |
|---|---|---|
| 従業員の申告完了時間 | ≤ 5分(変更なしの場合) | 1月確認フロー |
| 従業員のタスク完了率 | ≥ 95%(サポート問い合わせなし) | 1月確認フロー |
| 管理者の承認処理時間 | ≤ 2分/件(手動チェック対象) | レビューフロー |
| モバイル対応 | レスポンシブ(最小幅 320px) | 従業員ポータル |
| 初回利用時の学習コスト | ヘルプ参照なしで基本操作可能 | 全ポータル |