# M10 Dashboard 与报表 — 逻辑设计文档（LDD · How）

| 项 | 值 |
|---|---|
| 模块 | M10 Dashboard 与报表 |
| 类型 | 逻辑设计文档（LDD） |
| 对应需求 | [requirements/M10](../requirements/M10-Dashboard与报表.md) |
| 上级 | [需求分析总纲](../需求分析总纲.md) |

> 本文档描述**实现方式（How）**：KPI 计算口径、Dashboard/Widget 数据结构、通知/SLA 触发机制、各角色默认布局。"看哪些指标/需要哪些看板/验收"见对应需求文档。

## 1. Dashboard/Widget 数据结构
```
Dashboard(owner_role, name, layout) 1──* Widget(type, data_source, filter, viz)
Portfolio(组合视图) ──▶ 多 Dashboard 聚合
Widget.data_source ──▶ 各模块数据（M1/M4/M6/M7…）只读消费
```
- Widget 类型：卡片/趋势线/排行/漏斗（续约管道）/热力（cohort）。
- 可配置 Dashboard = Widget 拼装 + 角色绑定；Portfolio 为跨对象组合视图。

## 2. KPI 计算口径（FR-RPT-07 指标的公式）
> 需求侧只定义"看哪些指标"；此处定义口径/公式。阈值与统计口径待业务确认。

**CS 域**
- **NRR**（净留存率）= 期末现存客户 ARR（含扩张/收缩/流失）/ 期初同一批客户 ARR。
- **GRR**（总留存率）= (期初 ARR − 流失 − 收缩) / 期初 ARR。
- **流失率** = 流失客户数（或 ARR）/ 期初总量。
- **健康分布** = 各健康档（红/黄/绿）客户占比（健康分来自 M4）。
- **采用率 / Adoption** = 已激活关键能力客户 / 目标客户。
- **Time-to-Value** = 从开通到达成首个价值里程碑的时长。
- **CSAT/NPS 趋势** = 按周期聚合 M11 结果。

**PS 域**
- **利用率 / Utilization** = 计费工时 / 可用工时。
- **Realization** = 实际确认收入（或可计费额度）/ 售出额度。
- **按时交付率** = 按时完成里程碑数 / 总里程碑数。
- **Backlog** = 未开始 + 进行中的售出未消耗额度。
- **人天售出 vs 消耗** = SOW Man-days 对比已 burn（数据来自 M7）。

## 3. 通知/提醒/SLA 触发机制（FR-RPT-06 的 How）
- 触发源：停滞、逾期、超支、缺报、续约临近等（复用 M9 Automations 引擎）。
- 通道：飞书 / 邮件；频率与静默期可配。
- SLA 计时：起止事件 + 停表规则（挂起归因，见 M6 OQ-P2）。

## 4. 各角色默认布局（预设配置，待确认）
| 角色 | 默认 Dashboard（Widget 组合） |
|---|---|
| TAM | 我的客户健康度 / 风险池 / 续约临近 / 满意度趋势 |
| PS / PS Leader | 项目状态 / 里程碑逾期 / Quota 消耗 / 利用率 |
| CS Director（管理层） | 跨 Region 汇总 / NRR·GRR 趋势 / cohort 对比 |
> 具体布局与下钻粒度待业务确认（见需求遗留）。

## 5. 定时报告与导出（FR-RPT-09 的 How）
- 周报/月报按模板定时生成 → 订阅推送（飞书/邮件）→ 导出（呼应 Wiki 多类周报）。
- 导出格式与数据下钻粒度待确认。

## 6. 集成点
- **数据来源**：全模块只读消费（M1 客户/M4 健康度/M6 项目/M7 工时/M11 满意度/M12 支持）。
- **触达**：复用 M9 Automations 与通知通道。
