假设一个固定交付的项目,这个开发项目是构建一个应用程序,时间线是一年。项目过程中可能会出现什么问题?

1。什么是固定交货?

固定交付项目意味着它有固定的范围、固定的时间表和固定的成本。

长期以来,传统的项目管理方法主要关注项目范围、预算和进度的“三重制约”,也称为“铁三角”。任何项目的“三重制约”都是相互平衡的,任何一个项目的变化都可能引起其他项目的变化。

其实三重约束是错误的,主要有两个原因:

首先,三者之间的关系会发生变化,不会一直保持平衡状态。

其次,过分关注“三重约束”很容易忽视质量等其他重要约束。

“三重约束”只关注项目的交付交互,却忽略了项目的价值交付。如果我们提供的解决方案不能增加价值,那么按时、按预算交付项目还有什么意义呢?

2。敏捷适合固定交付项目吗?

敏捷开发是一种以迭代、协作、快速响应变化为中心的软件开发方法。它强调软件产品的灵活性、适应性和持续交付,以满足客户需求并提高质量。

客户自己可能不知道他们想要什么,也不知道项目团队将如何交付它,因此保持交付方法的灵活性、利用交付周期、获取反馈并不断改进工作方式至关重要。

传统的项目管理方法对于固定交付的项目其实不太适用。

首先估算了建设范围的时间和费用,但估算结果仍​​然存在偏差。根据不确定性锥体的不同,早期估计可能与实际交付所需的偏差高达 4 倍。即使需求完成后,估计结果也可能比交付成本低 1.5 倍。

其次,一年的开发周期对于一个技术项目来说是很长的。即使我们对项目有固定的需求并保证不会发生变化,但是在这么长的开发周期中仍然会出现不可预见的变化,比如对所写内容的理解发生变化。潜在的客户需求和优先事项将会发生变化。

最后,使用传统的阶段方法,我们常常无法确定所有预算工作是否已在分配的时间内交付,这导致工作从一个阶段推到下一阶段。

事实上,无论使用传统交付方式还是敏捷交付方式,交付固定项目都是有风险的。但必须承认,在固定交付项目上使用敏捷方法可能有一些优势。

3。使用敏捷进行固定交付的优势

1。适应不断变化的需求

在项目过程中,项目需求可能随时发生变化。敏捷开发方法可以灵活地应对这些变化,让团队能够快速响应新的反馈和需求,确保最终产品满足客户需求。

2。尽早交付价值

敏捷开发方法强调定期交付产品的工作增量,而不是等到项目结束才爆发式交付。即使产品的所有功能尚未完成,定期交付的产品也能让客户尽早使用并从中受益。

3。提高可预测性

使用迭代可以让团队更好地预测未来。在每个两周迭代(Sprint)结束时,团队可以使用平均吞吐量和剩余待办事项来预测交付整个项目需要多长时间。当使用阶段并按顺序交付时,这种级别的可预测性是不可能的。

4。提高透明度

使用定时迭代和按优先顺序排列的产品待办事项可以提高团队效率的透明度。这使得进度跟踪更加高效,并加快问题和风险的识别和解决。

5.持续改进

敏捷方法促进对产品的持续反馈以及团队反思和回顾的时间。对产品的反馈可以带来更高质量、更有效的解决方案。团队反思和回顾推动团队流程的改进,使团队合作更加有效和愉快。

6。降低风险

敏捷的增量交付方法可以尽早识别和缓解项目风险。通过提供较小的增量,可以在问题升级之前迅速得到解决。

4。使用敏捷进行固定交付的缺点

1。管理范围

敏捷开发可以轻松适应需求的变化,但前提是与客户仔细协商。

假设固定范围完全符合交付时间表和预算,那么范围的增加会打破平衡。但是,如果客户端了解范围是固定的并且对范围的任何更改都将替换为另一个范围而不是添加到其中,那么这仍然有效。

以代表范围的桶为例。桶的容量是需要传送的确切范围,增加容量意味着必须删除相同大小的额外内容。

2。人员成本

使用敏捷开发方法需要拥有一支完全敬业的团队,在整个项目生命周期中保持团结。

但是,如果人员成本的估算是基于专家在项目中轮流执行特定任务,您会发现人员成本的估算低于专门团队的劳动力成本。

3。合同和客户期望

当客户和开发团队之间的关系牢固并且每个人都在寻求双赢的解决方案时,敏捷效果最好。

然而,在典型的固定交付项目中,合同常常会赢得或失去。如果交付团队能够比计划更快地交付,即使他们没有交付客户真正需要的东西,他们仍然可以获得更多利润。

因此,客户获得他们实际需要的一切与交付团队估计的内容之间经常存在紧张关系。

5。写在最后

在固定交付项目上使用敏捷开发方法是一把双刃剑。

虽然敏捷开发方法具有适应性和早期价值交付等优点,但范围、预算管理和合同相关问题等挑战可能会成为项目期间的重大问题。

但我们不得不承认敏捷开发方式更加人性化。