工程质量-01-引言

一问到怎么提高软件团队的工程质量,我们天然的会蹦出一堆方案。方案审查、代码审查、单元测试、功能测试……。如果将这些事情都做好了,工程质量显然问题不大。但真实情况是,我们大部分团队的资源是有限的。大部分时候,我们都处于疲于奔命、到处救火、各种延期的状态。这些方案审查、代码审查、单元测试听起来很美好,但是真正能够贯彻执行下去的团队,却少之又少… …

造成这种现象,有两方面的原因

这一篇文章内所定义的工程质量主要是指的代码质量。无论你对自己领域内的业务理解有多么深刻,产品设计得多么好,架构设计得多么完美,如果代码写不好,代码管理不好,发布之后BUG不断,每一次版本迭代都鸡飞狗跳,那么最终的显现的效果都会大打折扣。

Talk is cheap. Show me the code

这一篇文章讲什么?

很多企业也研发出了很多看起来非常优秀的产品,但是从这些企业开源的一些工程里面的代码,就可以明显感受到他们的代码质量也非常一般。很多公司保持产品质量的方法完全是通过投入巨量的人力资源、通过长的时间修修补补达到的。这并不是研发能力的体现,这只是企业无可奈何的被动选择。

提高效率永远是一个研发企业的永恒追求。特别是对于一些资源本身有限,竞争比较激烈的行业和团队来说这一点更加重要。如何在有限的资源内尽可能的提高软件质量呢?在哪些流程上做建设,能够获得最大的收益?这就是这一篇文章回答的问题。

这一篇文章主要将质量体系限制在从需求分析到开发、再到测试的三个主流程之间。假设需求是正确的,我们需要的是将需求以高质量的方法完成。

需求分析->【方案】->代码开发->【版本】->软件测试

我们会提到方案审查、代码审查、单元测试… …这些具体的流程如何做。但是我们更加会侧重于描述如何在当前团队现状的情况下引入这些流程。

文章结构

这一篇文章将会通过三个阶段来逐步建立团队质量体系。全文一共分为四个部分

预期读者和收益

这一篇文章是为每一个关心软件质量的人写的

这一篇文章目前还处于完善阶段,后面会随着具体的实践有进一步的更新。文章最开始有一个版本更新历史,未来的更新可以关注这个版本号的变化

引用