业务分析系统分析师

系统分析师如何确定和开发IT解决方案的非功能性需求,以及为什么这些需求经常被低估?

用 Hintsage AI 助手通过面试

答案。

历史上,在IT项目中,重点主要放在功能性需求上:系统应该做什么。与此同时,性能、可靠性、可扩展性、可用性、安全性和可维护性等问题(这些特性统称为“非功能性需求”,NFD)长期以来一直被视为次要,往往根本没有被正规化。

问题

忽视或形式化描述NFD会导致在运营中出现重大问题:系统无法承受预期的负载,抵御网络攻击困难,维护和扩展复杂,或者无法满足所需的用户数量。

解决方案

现代系统分析师必须主动发起、正规化、分析和记录NFD。这包括:

  • 与架构师、DevOps和运营团队合作,以确定技术和基础设施限制;
  • 从业务中收集需求(例如,关于SLA);
  • 制定具体的NFD清单及其阈值;
  • 在实施和支持阶段实施控制措施;
  • 在规范的不同章节中记录需求。

关键特点:

  • NFD对任何大型项目都是必须的。
  • 与技术和业务利益相关者共同确定。
  • 要求明确、可测试且与业务目标相关。

误导性问题。

“产品质量”和“非功能性需求”之间有什么区别?

产品质量是一个更广泛的概念,不仅包括可正规化的参数,还包括主观评估(例如,UX/UI的易用性)。NFD是可明确测量的特性(性能、可靠性等),可以进行自动验证。

分析师可以将所有非功能性需求的定义委托给架构师吗?

不可以,分析师必须与架构师和业务共同识别这些需求,否则需求将是不完整的,或仅从技术角度描述,而未考虑业务需求。

是否可以仅用一般性短语(“系统必须可靠”)来表述非功能性需求?

不可以,这样的表述不适合控制和测试。需要具体化:例如,“服务故障后的恢复时间不得超过10分钟”。

常见错误和反模式

  • 在没有可测试标准的情况下表述需求(“快速”、“酷”、“可靠”)。
  • 忽略整个NFD类别(例如,内部系统的安全)。
  • 客户需求与支持之间的不一致。

生活中的例子

负面案例:国家服务门户项目未正规化高峰负荷的需求。在受欢迎服务启动的日子,系统"崩溃",发生安全事件。

优点:

  • 快速的MVP

缺点:

  • 巨大的后续开发成本
  • 用户信任的丧失
  • 支持的复杂性

积极案例:在工业自动化工厂项目开始时,分析师与运营部门一起发现,系统的停机时间比新功能更为重要。制定了SLA、紧急场景,明确了具体的指标。

优点:

  • 最小化故障风险
  • 客户满意度
  • 更容易测试解决方案

缺点:

  • 在需求规范阶段工作量更大
  • 与业务的协调更复杂