首页/开发/系统分析与架构设计速查/功能需求与非功能需求
需求分析与建模61 条

功能需求与非功能需求

需求分两类:功能需求描述系统做什么,非功能需求描述系统做得怎么样(性能、可用性、安全、可维护性等质量属性与外部约束),两类都需可验证、可度量。

功能需求系统对外行为:输入、处理、输出与业务规则
非功能需求质量属性与外部约束:性能、可用性、安全、合规、成本
共同要求可验证、无歧义、可追踪到设计与测试

两类需求对照

维度示例验证方式
功能提交订单时校验库存并扣减功能测试、验收用例
非功能订单查询接口 p95 响应时间不超过 500 ms压测报告、生产监控
约束数据存储必须位于境内架构评审、合规审计
非功能需求很容易被写成口号(如“系统要快”),必须落到具体场景、指标与度量方法,否则验收时无法判定。

易错点

  • 只收集功能需求,忽略质量属性与约束,架构阶段缺少取舍依据
  • 把“性能好”这类目标当成需求写进文档,没有指标与场景就无法验证

数据来源与参考

  • ISO/IEC/IEEE 29148:2018
  • 《软件架构:架构模式、特征及实践指南》(Richards & Ford,O'Reilly)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌