上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
原则46 避免在需求分析时进行系统设计
AVOID DESIGN IN REQUREMENTS
需求阶段的目标是明确系统的外部行为。这些外部行为需要足够明确,以保证当使用需求规格说明作为指引时,所有设计人员都能对系统的目标行为做出同样的理解。但在需求阶段不应该去明确软件架构或者算法,因为这是设计人员的工作范畴。后续设计人员会选择能够最好地满足需求的架构和算法。
如果撰写需求的人发现,很难在没有系统设计(例如,通过有限状态机描述系统行为)的情况下、毫无歧义地定义外部行为,应该留下这样的信息:
警告:这里包含的设计,仅用于辅助理解产品的外部行为。在系统外部行为相同的情况下,设计人员可以选择任何设计方案。
Davis,A.,Software Requirements: Objects,Functions and States,Englewood Cliffs,N.J.: Prentice Hall,1993,Section 3.1.