我凭自己的本事写BUG,你有什么资格说我?
我们来聊一聊软件开发中的BUG,标题来源于我跟开发小朋友的一次对话,他是我项目组里的主力开发:
“你怎么这么多线上BUG?有做MAT自测吗?有做Code Review吗?”,我看着JIRA上长长的BUG列表,有点冒火,顾不得提BUG的礼仪,劈头盖脸一顿骂。
“我凭自己的本事写BUG,你有什么资格说我?你有帮我写过BUG吗?”
“你无耻的样子,很像我当年的模样......”,说完我俩都笑了。
言归正传,如何提升开发质量?是每一个软件从业者关注的问题,下面我们来聊聊软件开发本质的一些东西。
软件开发,不外乎三个要素:时间、质量、成本。任何的管理手段,都是在寻求三个要素的平衡点,通常情况下你只能保证其中两个要素,而牺牲另外一个要素,所以你首先要明确项目目标。
举个例子,假设你的项目目标是:在短时间内高质量的交付,就必须增加成本投入,比如:招聘P6以上级别的开发、测试、产品、项目主管,给他们提供良好的工作环境、甚至帮助照顾好他们的家人,让他们能够全身心投入到项目当中。
再看一个例子,假设你的项目目标是:在人员成本不增加的情况下快速上线,那么就需要适当的牺牲质量,如:在保证无A类BUG的情况下,允许项目“带伤”上线,这在互联网企业中比较普遍。
还有一种情况,创业公司为了降低人员成本,招聘的都是初级人员,这样势必会导致项目的延期交付,或是软件质量上打折扣。
从以上三个例子,可以看出:软件开发中的时间、质量、成本,通常情况下你只能保证其中两个要素。因此,合理制定项目目标,找到三要素的平衡点,是项目取得成功的关键。
最后总结一下,这位小朋友的BUG哲学:任何一种成功,都要凭真本事的,写一个BUG也不例外,你没有帮别人写过BUG,就没有资格说别人(呃,多么痛的领悟)。
更多精彩文章: