开发过程的远程调试非常困难,以至于我不愿就您应该做什么提出任何意见。在我看来,您团队之外的任何人似乎都无法获得足够的信息来对此做出非常有用的判断。
一个较小的结论是猜测出了什么问题。根据您的描述,您认为早期的可交付成果听起来像是银行的进步,但最终却被重做。
造成这种情况的一个常见原因是“所有”需求的发现/创建较晚,这些需求对项目范围内的所有事物都应该是真实的。如果认真对待,这些可能是非常致命的:例如,像“所有对话框都必须可调整大小”这样简单的事情显然超出了微软对 Windows 进行改造的能力。
可以在此处找到此类失败的经典说明(尽管在非敏捷项目中)
“一旦他们看到我们编写的代码的结果,他们就会说,'哦,我们必须改变它。这不是我的意思,'”上汽的雷诺兹说。“那是我们开始在一个又一个更改请求之后记录更改请求的时候。”
例如,根据 SAIC 工程师的说法,在 8 个团队完成了大约 25% 的 VCF 之后,FBI 希望在所有屏幕上添加“page crumb”功能。这种导航设备也被称为“面包屑”,这个名称的灵感来自于 Hansel 和 Gretel 的童话故事,它为用户提供了一个 URL 列表,用于标识通过 VCF 到达当前屏幕所采用的路径。SAIC 工程师表示,这种新功能不仅增加了复杂性,而且延迟了开发,因为必须使用新功能对已完成的线程进行改造。
那里的关键词是“所有屏幕”。面对这种性质的变化,除非您有一些预先存在的工具支持,否则您可以直接打开(更改所有背景颜色真的应该是微不足道的),您就有麻烦了。你认为你已经取得的进展将追溯证明是虚幻的。
解决此类问题的唯一已知方法是在第一时间解决它们。如果那失败了,那就忍受他们错了。