非功能需求
在软件开发过程中,除了功能需求(用户可以购物,可以下订单等)之外,还有很多需求需要确定。这些需求与具体的业务需求没有关系,却对整个系统有着十分重要的影响。
这里略举几个例子:
- 安全性
- 吞吐量
- 负载
- 响应速度
- 日志记录
- 备份方案(归档)
- 可扩展性(横向扩展,水平扩展)
每个业务系统都或多或少需要涉及这些非功能需求
,但是各个系统的要求有不尽相同。一个网上银行系统,和一个企业内部的知识管理系统对安全性的要求就完全不一样。业务面向全球的电商网站,和西安市的驾校预约网站对吞吐量和响应速度的要求也不会一样。
在梳理了业务方面的需求之后,我们还需要对非功能需求进行深入的讨论和了解,这在我们做技术选型时会有巨大的影响。