一次把事情做好

有一个项目,客户在美国,雇佣的开发团队在中国。客户说开发人员的技术能力非常好,但就是提交的代码Bug太多。所以客户每次都要花很多时间来测试和沟通那些Bug。因此客户对那个团队的工作不算满意。

下面是我的简单分析和建议。

Bug多有两种基本情况:一是开发人员没有弄明白需求是什么;二是需求弄明白了,但是设计和实现的质量有问题。 

对于任何一种情况,都可以通过分析以往的Bug的产生原因来提出修正方案。

建议从客户提出的那些Bug里,分析哪些是由于需求沟通没有达成一致或者需求沟通不充分造成的。然后要看为什么没有达成一致,以及在哪些方面不充分。是因为语言上的问题导致的双方的误解吗?对某个功能执行的前提条件和后置条件都仔细考虑了吗?对于UI,考虑到各种异常数据了吗?考虑到数据格式了吗?考虑数据量大小了吗?。。。沟通需求的时候,我们总是有很多假定,但是这些假定是在自己脑子里的,客户的假定也在他的脑子里,都需要说明白。为了避免重复地沟通这些假定,可以有一个简单的文档来记录一些公共的需求。

还要分析哪些Bug是由于设计上欠考虑或者实现时的错误导致的。对于每个类的每个方法,也需要考虑前置条件和后置条件,还有其他的非功能性需求。把这些分析清楚其实就是为每个方法定义了入口和出口条件,其实也就是将需求分配到了每个类的每个方法上。按照这些分配了的需求来实现。

还有的Bug是因为修改代码引起的。重构是不可避免的。但是如何保证重构能不引入新的Bug,如何保证已经修复Bug不再出现?办法是自动化测试和持续集成。

效率不是快速编码,而是一次把事情做好。返工是造成效率低的重要原因。所以,除了我们积极的工作态度,熟练的技能之外,尽可能把事情‘一次做好’的理念也是非常重要的。一次做好意味着每天提交的代码都是经过测试的,并且只有非常少的Bug。

个人建议,仅供参考。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值