最近我与老板就"项目失败"进行了一次小小的争论.三年后,我们将代码库迁移到一个新平台的项目(我已经工作了一年的项目已有1.5年,但我的团队领导工作只持续了几个月)才开始实施.他,以及我公司和客户的高级管理人员(我是你听到很多关于那些可怕的顾问之一.我的订婚是"应用外包")宣称该项目是成功的.我不同意,指出我发现的旧陈述表明,与原始计划相比,部署的延迟最好用几个月来衡量,并且可能用数年来衡量.我解释了我所知道的项目失败,以及失败率背后的研究和统计数据.他回答说这是所有的学术界,他所领导的项目都没有失败,
也许这样的咨询与其他项目有所不同,但似乎这只是一个更漂亮的名字的失败,以避免无法按时,按预算或完整功能交付的耻辱.事实上,他解释说我的公司免费提供了数小时的工作,以便在最大限度的预算内完成项目说了很多.
所以我问你这个:
什么是变更管理,以及它如何应用于项目?
"变更管理"结束在哪里,"项目失败"开始了?
我认为,大多数时候,我们开发人员忘了这一点,毕竟我们所做的一切都是关于商务.
从这个角度来看,一个项目并非失败,而客户愿意为此付出代价.这一切都取决于客户,一些客户有更多的耐心,更好地了解软件开发的风险,如果有很大的延迟,其他客户就不会付钱.
无论如何,关于你的问题.无论何时进化项目都存在风险,也许您在某个日期安排项目结束,但需要比预期长6个月.在这种情况下,你必须平衡你已经花费的东西和你必须获得的东西与你正在承担的风险.实际上有一种称为"决策制定"的整个科学在软件层面进行研究,所以你的老板根本没有错.
让我们看一些问题,客户是否愿意等待项目?他是否愿意承担某些超额成本?即使他不这样做,是否值得完成该项目,假设额外的成本而不是丢弃所有已经完成的工作?公司可以承担已经丢失的东西吗?
你问题的真正答案就在于这些问题.你不能建立一个观点,并说,如果这个时候没有完成项目,那么它就是失败.至于你的具体情况,谁知道?你的老板可能有更多你掌握的信息,所以你的工作就是告诉他项目将如何进行,需要花多少钱以及花费多少(如果你愿意的话,以小时/人为单位)