Ø 人员变更频繁,公司产品无法得到延续:由于目前IT公司人员流动现象十分普遍,没有良好的软件过程作为后盾,人员流失就意味资源和知识的流失,从而不断延长软件开发时间;
Ø 没有合理的质量流程,产品bug无法得到有效的控制;
……
3.软件质量控制原则
3.1以预防为中心
对于质量控制方法上通常为检测和预防,而人们大多数都比较重视检测工作,成立测试部门在产品开发完毕进行测试。不可否认测试是整个软件工程中是一个非常重要的环节,但是预防从某种意义上来讲,比测试更为重要。打个比方,造一座大楼,如果在大楼设计后对大楼设计图纸进行检测发现问题,要比大楼施工完毕再发现问题资金,人力开销都小得多。再看一个数据,据美国软件质量安全中心2000年对美国一百家知名的软件厂商统计,得出这样一个结论:软件缺陷在开发前期发现比在开发后期发现资金,人力上节约90%;软件缺陷在推向市场前发现比在推出后发现资金,人力上节约90%。所以说软件的缺陷应该尽早提出,在整个公司软件开发工程中,每个阶段都有相应的对产品的质量控制(QC),和对过程的质量保障(QA)体系。
3.2降低偏差
换句话来说就是增加一致性,一致性是非常重要的,因为一致性是可以预防的,可以预防就可以纠正。对于打靶来说,选手A的六个镖平均分布在靶的四周,有一个是击中靶心;选手B六个靶都没有击中靶心,但是都集中在靶的左上方。一般人认为选手A比选手B打得好,但是对于改进来说选手B要比选手A更好控制,因为选手B的偏差小,只要检查一下是否改选手握靶位置不对,或者没有考虑风的因素,就可以很容易达到全中,所以一致性是公司的质量奋斗目标。
3.3以客户为中心
一个好的质量产品是这样定义的,它能够最大限度的满足客户的需求,不管技术人员认为存在某某不合理的地方。以客户为中心是所有质量体系都遵循的原则,不管是ISO还是CMM。道理很简单,没有客户,公司就没有存在的必要。在我们公司来说,提高质量就需要整个软件开发过程中严把需求关。
3.4协同工作
先进的软件公司是一个走出软件作坊式的公司,项目的成败不在于某几个人的努力(又叫个人英雄主义),即CMM1级。现阶段的软件公司需要大家协同工作,共同努力,互相协调,互为补充,共同提高公司的软件产品质量。
4 工作定位
研发过程管理工作按照著名的PDCA循环进行工作,我们首先定义出一些工作模版,工作流程,评审工作以及角色定义。研发部员工在使用过程中必须按照规定执行,但希望大家及时提出自己的观点和建议,我们随时进行调整并发布给大家,以便越来越适用于公司的需求。
图一 PDCA循环
文章来源于领测软件测试网 https://www.ltesting.net/