为所开发产品的需求签订协议是客户与开发人员关系中的重要部分。许多组织在需求文 档中使用“签约”这个概念来作为客户同意需求的标志行为。故要让所有需求参与者都真正 明白“签约”的意思。 但存在这样一个问题:客户代表经常把“签约”看作是毫无意义的。“他们要我在一张纸 的最后一行文字下面签上名字,于是我就签了,否则这些开发人员不开始编码。”这种态度将 来会带来麻烦,譬如客户想更改需求或对产品有不满时。“不错,我是在需求上签署了名字, 但我并没有时间去读完所有的内容。我是相信你们的,是你们非要让我签字的。” 同样的问题也会发生在仅把签约看作是完成文档的管理人员身上。一旦有需求变更出现, 他便指着软件需求规格说明说道:“但你已经在需求上签约了,所以这些便是我们所要开发的。 如果你想要别的什么,你应早些告诉我们。” 这样的态度都是不对的,不可能在项目早期就了解所有需求,而且毫无疑问需求将会出 现变更。在需求上签约是终止需求开发过程的正确方法。然而,参与者必须明白他们的签约 意味着什么。 更为重要的是签名是建立在一个需求协议的基线上,因此在需求规格说明上的签约应该 这样理解:“我同意这份文档表述了目前我们对项目软件需求的了解。进一步的变更可在此基 线上通过项目定义的变更过程来进行。我知道变更可能会使我们要重新协商成本、资源和项 目工期任务等”。 关于基线达成一定共识会易于忍受将来的摩擦,这些摩擦来源于项目的改进和需求的误 差或市场和业务的新要求等。给初步的需求开发工作画上双方都明确的句号会有助你形成一 个持续良好的客户与开发人员的关系,为项目的成功奠定了基础。 
|