我在一家软件开发公司工作。我的问题是,在我们从头开始开发实际系统之前,我们是否应该为客户/S提供一份用户需求规范文档?
发布于 2017-02-22 11:31:40
是的--在你开始一个项目的密集开发之前,先签下需求是很重要的。
签约是项目中的一个里程碑。卡尔·威格斯和喜悦·比提,它是指客户同意需求满足他们的需求,开发团队理解需求并同意它们是可行的实现,测试团队同意需求可以被验证,管理层同意需求允许业务目标的实现。它需要被视为一种协议,而不仅仅是一种需要遵循的仪式。
从现在起,我不再使用“签署”这个词。我要用“约定”。也就是说,这些要求不是“签署”的,而是利益攸关方代表“商定的”。
有一套初步商定的要求是至关重要的。然而,这应该被看作是一个需求基线。众所周知,随着时间的推移,需求将发生变化。即使您正在使用一种要求提前完成所有需求开发的顺序方法,您也需要认识到需求将发生变化。敏捷方法是围绕着适应环境中的变化(如需求变化)而构建的。
在敏捷方法中,与产品负责人相似的人是客户和用户的代表。与其一次就需求达成一致并修改基线,不如将工作的优先级安排为您的基准,并且您将不断地对其进行细化和排序。您可以预先认识到,细化和重新排序将会发生,而您的过程允许它发生。
在我的第一句中,我确实使用了“密集发展”一词。如果您所处的环境是以合同为基础的,那么在您签订合同之前,您可能没有为详细的需求调查和分析分配资金或人员。因此,在开发需求的同时,一些设计工作可能需要根据初始需求开始,以确保您能够在分配的时间表中完成工作。您还可能需要利用这段时间来获取物理资源、设置环境和进行原型开发。
请注意,原型是一种有效的需求激发技术,因此开发团队所做的这一早期设置工作和原型开发工作可以反馈到需求开发过程中,还可以作为对所做工作的检查,以尽量减少做错误事情的风险。
https://softwareengineering.stackexchange.com/questions/342733
复制相似问题