最近我看到我们的开发团队在规划下一版产品时危险地接近" 第二系统综合症 "类型的想法.虽然我只是为了改进和消除我们过去的一些错误,但我不愿意看到我们陷入无休止的重写循环中,从不发动任何事情.
是否有一个好的设计/开发方法有助于构建更好的2.0版本,同时避免第二个系统场景?
小智 16
我作为客户/赞助商和开发团队的一员经历了双方的第二次系统综合症.
问题的根本原因在于团队锁定了版本2的乌托邦愿景,例如希望使新软件"灵活".在这种情况下,一切都被抽象到第n度.例如,代替表示真实世界实体的数据对象,创建可以表示任何内容的通用"项"对象.一个有缺陷的想法是,我们可以在软件中建立如此大的灵活性以预测未来的需求,非程序员将能够只配置新的功能.通常,诸如"灵活性"之类的目标使得努力达到了最终软件不起作用的程度.
对可用性,性能,可扩展性,功能,可维护性和灵活性目标进行平衡的实际考虑可以使团队重新回归."如果...应该被禁止从团队的词汇中被禁止".Scrum积压是一个很好的工具,应该经常听到团队说..."让我们积压......我们不需要版本2."