1. 性能要求
| 指标 | 目标值 | 测量方法 | 说明 |
|---|
| API 查询类响应时间 (P95) | < 200ms | Prometheus histogram | 含首页状态聚合查询 |
| API 写入类响应时间 (P95) | < 500ms | Prometheus histogram | 含设备绑定、预警确认 |
| 页面首屏加载时间 (4G) | < 1.5s | Lighthouse CI | Family App / Admin 双端 |
| 预警端到端延迟 (Red Alert) | < 5 分钟 | 告警触发 → 家属知晓 | 含雷达检测 + Luma 询问 + 推送下发 |
| 设备心跳上报成功率 | ≥ 99.5% | 服务端统计 | 心跳间隔 5 分 钟 |
| 支持家庭数 (MVP 试点) | 8~10 个家庭 | — | 约 50 名用户 |
| 支持家庭数 (正式上线目标) | ≥ 10,000 家庭 | JMeter 压测验证 | 预留扩展余量 |
| 峰值 QPS 估算 | 10 QPS (MVP) | 压测 | 实际按 100 TPS 设计 |
| 核心交易接口吞吐量 | ≥ 100 TPS | JMeter 压测 | 含预警分发、设备心跳 |
2. 可用性要求
| 指标 | 目标值 | 说明 |
|---|
| 系统可用性 (SLA) | 99.9% | API 服务 + Admin 服务 |
| 故障恢复时间 (RTO) | < 30 分钟 | AWS Multi-AZ 支撑 |
| 数据恢复点 (RPO) | < 5 分钟 | RDS Multi-AZ + ElastiCache 持久化 |
| 设备离线检测延迟 | < 12 小时 | 触发黄色提醒 |
| 设备高风险标记延迟 | < 48 小时 | Admin 后台标记 |
3. 安全性要求
| 指标 | 要求 | 说明 |
|---|
| 传输加密 | TLS 1.2+ (HTTPS/WSS) | 全链路加密 |
| 密码存储 | bcrypt 加盐哈希 | 不可逆 |
| 敏感字段加密 | AES-256 | 联系方式、疾病史、用药史等 |
| 认证机制 | JWT Token,会话超时 2 小时 | Sa-Token 框架 |
| 数据隔离 | 以家庭为单位,多租户严格隔离 | 跨家庭访问禁止 |
| SQL 注入防护 | 参数化查询 + MyBatis-Plus | 自动防御 |
| XSS 防护 | 输出编码 + 前端框架默认防护 | Vue 3 默认转义 |
| CSRF 防护 | Token 校验 | Sa-Token 内置 |
| HIPAA 合规 | 100% 满足 | 美国医疗数据合规 |
| 日志保留 | ≥ 12 个月 | HIPAA 要求 |
| 审计覆盖 | 所有敏感操作全记录 | 配置更改/权限修改/数据导出删除 |
4. 可扩展性要求
| 指标 | 目标值 | 说明 |
|---|
| 无状态服务水平扩展 | 支持 | API 服务可多实例部署 |
| 核心与辅助业务解耦 | 消息队列 | Amazon MQ (RabbitMQ) |
| 设备接入可扩展 | 支持多设备类型 | 雷达 (MQTT) / 手表 (HTTP) / 音箱 (HTTP/WebSocket) |
| 灰度发布能力 | 支持 | 配置可按家庭/设备灰度下发 |
5. 可维护性要求
| 指标 | 目标值 | 说明 |
|---|
| 日志格式 | 结构化 JSON,含 TraceID | 全链路可追踪 |
| 指标暴露 | Prometheus | 接入 AWS CloudWatch |
| 核心业务逻辑覆盖率 | ≥ 80% | 预警引擎、 设备心跳、多租户隔离 |
| 代码规范 | Alibaba Java Coding Guidelines / ESLint | 自动检测 |
| 依赖版本管理 | 依赖安全扫描 | 定期更新 |
6. 兼容性要求
| 平台 | 要求 | 说明 |
|---|
| Family App | iOS 14+ / Android 10+ | UniApp 一套代码双端编译;iOS 推送使用 APNs,Android 推送使用 FCM |
| Luma App | Android 原生 | Luma 智能音箱定制固件 |
| Admin 管理后台 | Chrome 90+ / Safari 14+ / Edge 90+ | PC Web,最小宽度 1024px |
| 服务端 | Linux (Ubuntu 20.04+) | AWS EC2/ECS |
| 数据库 | PostgreSQL 14+ | Amazon RDS |
| 缓存 | Redis 6+ | Amazon ElastiCache |
| 雷达设备 | 支持 MQTT 协议 | Amazon MQ (RabbitMQ) |
| 手表设备 | 支持 HTTP 协议 | REST API |
| 音箱设备 | 支持 HTTP + WebSocket | 双向通信 |
7. 适老化要求(老年用户体验)
| 指标 | 目标值 | 说明 |
|---|
| 字号最小值 | ≥ 18pt | Luma App 老人端强制 |
| 字号最小值 | ≥ 16pt | Family App 儿女端强制 |
| 按钮高度 | ≥ 56dp | Luma App 触控区域 |
| 触控目标区域 | ≥ 44dp × 44dp | Luma App 适老化要求 |
| 色彩对比度 | ≥ 4.5:1 | WCAG AA 标准 |
| 核心操作步骤 | ≤ 3 步 | Family App 端家属操作路径 |
| 首次安装时长(完整) | ≤ 30 分钟 | 含雷达+手表+音箱,子女协助安装 |
| 首次安装时长(App 引导) | ≤ 10 分钟 | 目标 6 分钟,含设备配网 |
| 设计语言 | Calm Tech(冷静技术) | 不主动吸引注意力 |
8. 告警体系性能要求
| 指标 | 目标值 | 说明 |
|---|
| 红色预警 (Red Alert) 响应时间 | < 5 分钟端到端 | 检测→询问→通知家属 |
| 黄色预警 (Amber Alert) 推送 | 设备离线 > 12h 触发 | Family App 通知 |
| 高风险标记 | 设备离线 > 48h | Admin 后台标记 |
| 预警升级链路 | T=30s/50s/70s/90s | 逐级通知备用联系人 |
| 红色预警静默穿透 | 强制触达,无视手机静音 | APNs + Twilio SMS 双通道 |
本文档由 Reflekt Health 产品团队维护,最后更新于 2026-04-20。