怎样平衡软件质量与时间成本范围的关系?

一、问题

你会发现,在实际的软件项目中不乏这样的例子:

  • 一个正常估算要三个月才能完成的项目,但是老板或客户要压缩到一个月完成,而你不知道如何说服他们
  • 项目开发一半,产品经理告诉你,有一个非常紧急的功能,要增加到这个版本中,你不知道该不该拒绝,或者如何拒绝
  • 听说迭代模型很好,你也尝试使用迭代模型,但是每次迭代时间到了还是完不成,只能把迭代时间延长,最后又做回传统的瀑布模型了
  • 你们组用瀑布模型开发,一到项目后期总免不了加班加点赶进度,为什么他们用敏捷开发的加班要少一些?

其实,这些日常项目中涉及时间、成本和范围的问题,都离不开“软件项目管理金三角”的概念。

掌握好这个知识点,学会平衡软件质量与时间成本范围的关系,可以帮助你更好的驾驭项目中的各种问题,也可以帮助你更好地理解软件工程中各个模型,尤其是瀑布模型和敏捷开发

二、金三角

在现实生活中,我们都知道,做产品想“多、快、好、省”都占着,是不可能的,最多只能选两样

想要便宜和质量好,就要花时间等;想要快还要质量好,那就得多花钱;想要又便宜又快,那就得接受难用、质量差。

在这里插入图片描述

而在软件项目中,也有一个类似的平衡关系,就是软件质量(产品的质量,客户的满意度)与范围(需要实现多少功能)、时间(多久可以完成)、成本(花多少钱)四个要素之间的平衡。

在这里插入图片描述
上面这个图就是著名的项目管理金三角(以下简称“金三角”),三条边分别是时间、成本和范围,中间是质量。

三、应用

场景一:老板要压缩项目时间怎么办?

  • 当项目经理,常遇到的问题之一就是时间被压缩,比如文章中开头举的例子,老板问我一个项目多久能完成,我按照经验,觉得要三个月,老板觉得三个月太久了,要砍到一个月就上线。
  • 最开始的时候,我就是据理力争,说这不科学,肯定不行呀。老板说时间点很重要,必须要一个月上线。结果就是大家吵得不欢而散,最后还得加班加点做,质量也不好。
  • 后来我学乖了,先用“金三角”知识分析了一下:老板希望时间是 1 个月,也就是说时间这条边被缩短了,那么结果就是会影响到另两条边:范围和成本,如果另外两条边可以调整,也不是不可以。
  • 于是再遇到这种问题,我就换了一种方式跟老板沟通:“一个月也不是不行,就是我们得需求调整一下,第一个版本只能做一些核心功能,剩下的后面版本再加上(调整范围)。另外还得给我加两人,不然真做不完!(增加成本
  • 这样的方案一提出来,就好沟通多了,最后重点就变成了砍多少功能和加多少人的事情了。

场景二:产品经理要临时加需求怎么办?

  • 在文章开篇我提到一种情况,项目开发一半,产品经理告诉你,有一个非常紧急的功能,要增加到这个版本中,怎么办?
  • 我们拿“金三角”知识先套用一下。增加需求,也就是范围这条边要增加,那就必然对成本和时间这两条边造成影响,要么延期,要么增加成本。
  • 面对这种临时加需求的情况,我们也不需要直接说不能加,而是清楚的让产品经理认识到这样做的后果:进度延期,需要更多的成本。如果这个功能真的太重要,可以接受延期,也不是不可以接受,那就重新制定新的项目计划好了。
  • 所以你看,如果我们能应用好“金三角”的知识,很多软件项目中问题,一下子就多了很多方案可以选择了。

解答标题

那么怎么样才能平衡好软件质量与时间成本范围的关系呢?

  • 前面我们说日常生活中“多、快、好、省”最多只能选两样,其实如何平衡好软件质量与时间成本范围的关系也是一样的道理,我们只能最多选择两样,然后在另一边或者另两条边去寻找平衡。
  • 所以第一件事就是:从时间、成本和范围这三条边中找出来固定的一条或者两条边,再去调整另一条边。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值