作为软件开发人员,我们创建了很多......好......代码.我们生成的大部分代码都可以用于新功能或对现有功能的增强.在这种情况下,我们如何知道此功能何时完成?
在功能的上下文中做了什么意味着什么?例如,对于公司A,这可能意味着许多不同的事情,比如
满足客户要求(这本身就很棘手)
没有已知的错误
文档是写的
等等
等等
为了更好地帮助理解什么做手段,不同的开发者和团队请列出多达五(但不超过10)项目.此列表将是您作为开发人员或您的团队可能会经历的内容,一旦检查完所有项目,该功能就会被视为已完成.
这些是一些很好的答案.我试图弄清楚如何确定最好的一个,因为我猜这个问题有点主观.我想我还在寻找更完整的画面.
当客户端/用户在测试后签署UAT(用户验收测试)时.这是我们的官方测量棒.
当然,这并不意味着任何事情,因为几周之后总是要求提供2.0版本的功能,但这比我们的更多.
编辑 - 如果你想要详细了解它,我们就是这样做的:
需求由系统分析员和客户批准
设计由首席程序员批准
代码审查由同行程序员批准
代码在QA部门的单元测试中标记为经过测试.
UAT在亲自测试后由客户签名.
代码在QA部门的系统测试中标记为已测试.
代码已发布.
如果你的意思是"完成"意味着"我们永远不必再触摸",那么唯一的答案是:当系统过时;-)
如果你的意思是'何时准备发货',那么大概是在所有商定的单位测试通过时,当然假设TDD/XP /敏捷方法.