2、需求分析与规划:业务需求调研、技术选型原则、系统边界定义、项目里程碑规划

说实话,很多风电平台项目一开始就栽了跟头。为什么?因为大家急着写代码,急着搭架构,却忘了最根本的事——搞清楚你到底要建什么。

我见过太多团队,上来就讨论用 Kafka 还是 RabbitMQ,争论微服务还是单体架构。结果呢?三个月后才发现,客户真正需要的只是一个能稳定采集振动数据的网关。嗯,这就是典型的「需求没对齐」。

这一章,我就带你走一遍我自己的「需求分析与规划」四步法。每一步都是我在真实项目中踩过坑、填过土之后沉淀下来的。

2.1 业务需求调研:别让客户说「你看着办」

调研不是拿着问卷去问问题。我个人习惯是:先看现场,再聊痛点,最后才看数据。

第一步:现场走一圈

你想想看,一个风电场的运维人员,每天面对的是什么?是几十台风机、几百个传感器、上千条报警。他们最怕的不是数据多,而是数据来了不知道看哪里。

我在江苏某风电场调研时,运维班长跟我说了一句话,我到现在都记得:「你们搞的系统,别让我点超过三次鼠标。」

第二步:梳理核心角色

一个风电平台,至少涉及这几类人:

  • 运维人员:关注实时告警、设备状态、工单处理
  • 设备工程师:关注振动趋势、温度曲线、故障诊断
  • 管理层:关注发电量、可利用率、运维成本
  • 数据分析师:关注历史数据、模型训练、预测结果

第三步:输出需求清单

调研结束后,我会输出一份《业务需求调研报告》。里面必须包含:

  • 核心业务场景(至少5个)
  • 用户痛点清单(按优先级排序)
  • 数据流简图(谁产生数据、谁消费数据)
  • 非功能性需求(响应时间、并发量、数据保留周期)
我的小技巧: 调研时带一个录音笔。很多关键信息是在闲聊中透露的,比如「上次那个系统,半夜三点报警,我爬起来看了半天,结果是误报」。这种细节,问卷永远问不出来。

2.2 技术选型原则:别追新,要追稳

技术选型这件事,我吃过不少亏。曾经有个项目,我选了当时最火的流处理框架,结果社区版本迭代太快,半年后接口全变了,我们被迫重构。从那以后,我给自己定了三条铁律:

  1. 成熟度优先:选社区活跃、版本稳定、文档齐全的技术栈
  2. 团队熟悉度:再好的技术,团队没人会用,就是灾难
  3. 生态兼容性:选的技术要能跟上下游系统无缝对接

具体到风电平台,我一般这样选:

技术领域 推荐方案 选型理由
数据采集 MQTT + EMQX 轻量、支持海量设备、断线重连机制成熟
消息队列 Apache Kafka 高吞吐、持久化、生态丰富
时序数据库 TDengine / InfluxDB 针对物联网时序数据优化,查询性能高
计算引擎 Flink / Spark Streaming 实时流处理,支持复杂事件检测
可视化 Grafana + ECharts 开源、灵活、社区插件多
避坑指南: 我曾经选过一个号称「全栈物联网平台」的商业软件,结果发现它的数据存储层用的是关系型数据库,存三个月的历史数据查询就慢得不行。最后不得不自己搭时序数据库做数据分流。所以,选型时一定要做 POC(概念验证),别光看宣传材料。

2.3 系统边界定义:画好你的「势力范围」

系统边界,说白了就是「哪些事归我管,哪些事不归我管」。很多项目后期扯皮,就是因为边界没划清楚。

我习惯用一张图来定义系统边界。下面是我为风电平台画的边界图:

风电平台系统边界 数据采集层 MQTT Broker · 协议适配 · 数据清洗 数据处理层 实时计算 · 告警引擎 · 数据存储 应用服务层 API网关 · 用户管理 · 权限控制 展示层 Web端 · 移动端 · 大屏 外部系统 SCADA CMS ERP 不在边界内 硬件固件升级 财务结算 人员排班

从这张图你能看到:

  • 数据采集层:只负责收数据,不负责分析
  • 数据处理层:只负责计算和存储,不负责展示
  • 应用服务层:只负责业务逻辑,不负责数据采集
  • 展示层:只负责呈现,不负责业务逻辑

边界外的东西,比如硬件固件升级、财务结算、人员排班,这些要么由其他系统负责,要么我们明确告诉客户「这个我们不做」。划清楚,后面少吵架。

2.4 项目里程碑规划:把大象装进冰箱分几步

项目规划这件事,我个人的经验是:宁可多分阶段,不要一口吃成胖子。风电平台这种项目,涉及硬件对接、数据采集、实时计算、可视化展示,任何一个环节出问题,整个项目都可能延期。

我一般把项目分成四个里程碑:

里程碑 时间 交付物 关键验收标准
M1:基础能力建设 第1-2个月 数据采集网关、MQTT集群、时序数据库 单台风机数据采集延迟 < 1秒
M2:核心功能上线 第3-4个月 实时监控、告警引擎、历史数据查询 告警响应时间 < 5秒
M3:智能化升级 第5-6个月 故障诊断模型、预测性维护、报表系统 故障预测准确率 > 85%
M4:优化与运维 第7-8个月 性能优化、安全加固、运维手册 系统可用性 > 99.9%
核心原则: 每个里程碑都要有明确的「可演示」成果。M1 结束时,你就能在 Grafana 上看到一台风机的实时数据。M2 结束时,告警能发到手机。这样客户能看到进度,团队也有成就感。

最后说一句:规划阶段多花一周,执行阶段少花一个月。这个道理,我是用几个通宵换来的。

我的习惯: 每个里程碑结束后,我会组织一次「复盘会」。不是走形式,是真的把踩过的坑、做对的事都记下来。这些经验,比代码值钱多了。

公众号:蓝海资料掘金营,微信deep3321