软件开发的201个原则
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

原则50 给需求排列优先级

PRIORITIZE REQUIREMENTS

并非所有需求都是同样重要的。对于载人航天飞行器来说,需求可能同时包括速溶橙汁和全功能生命支持系统。但显然前者没有后者重要。如果没有果汁,你大概不会中断发射,但如果生命支持系统不能工作,你肯定要中止发射。

一种设定需求优先级的方法,是给需求规格说明中的每个需求加上后缀M、D或者O来表示必须(Mandatory)、期望(Desirable)、可选(Optional)。尽管这里创造了一个可选需求的矛盾概念,但是它清楚准确地说明了相对优先级。另一个较好的方式是给每个需求按照重要性打分,从0到10。

Davis,A.,Software Requirements: Objects,Functions and States,Englewood Cliffs,N.J.: Prentice Hall,1993,Section 3.4.11.