原则44:确定子集

编写需求规格说明书时,要清晰识别有用的最小子集、识别使最小子集越来越实用的最小增量

> 这种识别可以:
* 更容易地使每个组件只包含一个功能

* 选择更具内聚性和可扩展性的架构

* 了解如何在日程或预算紧缩的情况下减少功能

> 技巧
* 在每个需求旁加上几列,每列对应不同的版本

* 每个版本对应不同的客户或场景 / 产品随时间提升level的层级

* 用 x / ✅ 提示哪些版本将具有哪些功能

Parnas, D., "Designing Software for Ease of Extension and Contraction", IEEE Transactions on Software Engineering, 5, 2(Mar. 1979) pp.128-138.

©️ 201 Principles of Software Development