1. 测试数据分析平台需求拆解
在动手写第一行 MATLAB 代码之前,需求拆解决定了整个平台能走多远。很多测试团队一开始就急着做数据导入和绘图,结果做到一半发现:不同试验台的数据格式对不上、报告模板改一次要动十处代码、工程师和主管要看的其实是两种完全不同的东西。这些问题的根源都不在编程,而在需求边界没有划清。本章围绕四个维度展开:测试场景、数据来源、分析目标、报告交付,并在此基础上明确平台的功能边界与用户角色。
一、先锁定测试场景,而不是先锁定功能
测试场景回答的是"这套平台到底为哪类试验服务"。同样是测试数据,台架耐久试验、整车道路载荷谱采集、零部件温循试验,三者的数据节奏、通道数量、关注指标完全不同。需求拆解的第一步,是把场景写成可判断的句子,例如:
- 场景A:电机台架稳态效率测试,采样率 1 kHz,通道约 20 个,单次试验 30 分钟,关注效率 MAP 与温升曲线。
- 场景B:整车道路载荷采集,采样率 200 Hz,通道 60 个以上,单次记录 2 小时,关注雨流计数与损伤等效。
- 场景C:电池包温循试验,采样率 1 Hz,通道 40 个,持续 7 天,关注超温报警与循环一致性。
把场景写成这样的句子后,"平台要不要支持流式读取""要不要做分段批处理""内存峰值大概多少"这些问题就能直接推导出来,而不是靠拍脑袋。场景描述里必须包含采样率、通道数、单次时长三个量,它们直接决定后续的数据处理架构。
二、数据来源决定了导入层的复杂度
数据来源是需求拆解中最容易被低估的一环。实际项目中常见的数据来源包括:
| 来源类型 | 典型格式 | 关键难点 |
|---|---|---|
| 台架采集系统 | MDF4 / TDMS / CSV | 通道元数据、单位、时间戳对齐 |
| CAN / 总线记录 | BLF / ASC / MAT | 报文解码、信号按 DBC 还原 |
| 手工记录表 | Excel / CSV | 字段不统一、缺失值、单位混用 |
| 历史数据库 | SQL / Parquet | 按试验编号检索、增量拉取 |
需求拆解时要明确:平台是"只读一次"还是"需要反复回读"?如果同一批数据要被多个分析模块反复使用,就应该在导入阶段做一次标准化,落成统一的中间格式(例如统一时间基准、统一单位、统一通道命名),后续分析只面向中间格式。这一步不做,后面每个分析函数都要重复处理格式差异。
三、分析目标要区分"看什么"和"算什么"
分析目标常被笼统写成"数据分析",但真正可落地的是把它拆成两类:一类是给人看的可视化结果,一类是给判断用的量化指标。以电机台架效率测试为例:
- 可视化:转速-扭矩-效率 MAP 云图、母线电流随时间曲线、冷却液进出口温差曲线。
- 量化指标:峰值效率、高效区面积占比、稳态段平均效率、温升速率(℃/min)。
这两类目标对平台的要求不同。可视化要求绘图函数可配置、可批量出图;量化指标要求计算逻辑可复用、可单元测试。需求拆解时应把每个分析目标写成"输入通道 + 计算方法 + 输出形式"的三元组,例如:温升速率 = 对冷却液出口温度在稳态段做线性拟合,输出斜率与 R²。写成这样,开发时几乎可以直接翻译成函数。
四、报告交付:谁看、看什么、多久看一次
报告交付是需求拆解的收口环节。它决定了平台的输出接口,也反过来约束前面的分析目标。需要明确三件事:
- 交付对象:试验工程师关注过程曲线与异常点;项目主管关注结论指标与是否通过;客户关注合规项与签字页。
- 交付形式:Word/PDF 正式报告、HTML 交互页面、Excel 数据附表,三者往往并存。
- 交付节奏:单次试验后即时出、每日汇总、还是阶段评审时批量出。
节奏尤其关键。如果是"单次试验后即时出",平台就必须支持一键触发、自动命名、自动归档;如果是"阶段批量出",则可以接受人工挑选数据、手动补充结论。这两种节奏对应的自动化程度差别很大,必须在需求阶段就定下来。
五、功能边界与用户角色
把上面四个维度收拢,就能画出平台的功能边界。下面这张图把测试场景、数据来源、分析目标、报告交付串成一条需求链路,并标出各环节对应的用户角色与平台职责边界。
图中虚线框内是平台职责,虚线外是明确不做的部分。把"不做什么"写清楚,比写"要做什么"更能防止项目失控。例如采集硬件配置、传感器标定、试验执行本身都不属于分析平台;试验结论的工程判断与签字责任也应由人承担,平台只提供数据与图表支撑。
六、用户角色与权限的对应关系
需求拆解的最后一步是把角色落到操作上。常见角色有四类:试验工程师负责导入数据、选择分析模板、触发报告;分析工程师负责维护分析函数与通道字典;数据管理员负责数据归档与检索;主管与客户只读报告。角色不同,对平台的接口要求也不同——工程师需要批量脚本入口,主管需要稳定的报告输出,客户需要不可篡改的交付件。把这些写进需求,后续做界面和权限时就不会反复返工。
把本章的四维链路落到一份可执行的需求确认单上,通常包含:场景清单(含采样率、通道数、时长)、数据来源与格式清单、通道字典初稿、分析目标三元组列表、报告交付对象与节奏、角色权限表、以及明确的边界外事项。这份确认单不需要很长,但每一项都要能被验证。它是后续所有开发工作的基准,也是第2章开始搭建工程骨架时的直接输入。