孔祥云(出处不详)2003年05月09日
当前软件产品开发过程中出现的质量问题,可以认为是由以下原因导致的:
1、管理者缺乏质量观念,没有保证质量的全面计划、有效措施,未将质量放在足够重要的地位,未从一开始就强调质量。
2、开发者未将保证质量作为他们的重要而且是必须完成的任务,把保证产品质量看成是质量检测人员的责任。缺乏全面质量管理、人人都是质量保证者和责任人的观念。
3、大家都缺乏这种观念:在每个产品开发阶段都不做出不合格工作,决不把不合格的中间产品带到下一阶段,而不是到产品最后阶段才由专门的质量检测人员检查并保证产品质量。这就需要明确制定每一阶段工作的检测标准,让大家知道什么才是合格的工作。
4、没有良好的激励机制。没有将个人的所得(物质和心理两方面)与其工作绩效直接联系起来。也没有好的个人绩效评价机制。做不好是大家整体的责任,自己的利益不受影响。做好了也没有及时明显的奖励。总之,做好做不好差不多,大家没有积极性,没有人会拼命高质量地完成自己的工作。
5、大家看不到提高质量对公司的生存发展有多重要,普遍缺乏主人翁责任感。
6、显然,不单单是质量问题。还有管理者和开发者的关系问题。例如因为管理者的指示未得到切实地执行,才导致版本不一致等问题。又比如管理者强调质量和维护质量的措施会引起开发者的反感。如果大家能很好地交流和合作,此类问题会大大减少。
7、大家对顾客的质量要求不了解,不理解顾客的心理,缺乏使顾客满意的思想。
什么是TQM?
TQM是一种思想观念,一套方法、手段和技巧,通过全体员工的参与、改进流程、产品、服务和公司文化,达到在百分之百时间内生产百分之百的合格产品,以便满足顾客需求(CustomerSatisfaction,CS),从而获取竞争优势和长期成功。
TQM的要点是什么?
1、客户满意
顾客包括两种:外部顾客和内部顾客。外部顾客指公司产品的最终用户。内部顾客指在公司内部和自己的工作有联系的那些人。
2、全员参与
质量不仅仅是QA,Tester,LanguageConsultant的事,每一个员工都有维护质量的责任。每个员工都有责任、也有权利提出改进建议,并将合理的建议付诸实施。
3、团队精神
TQM要求全体成员之间的有效交流,紧密合作。管理者要改变发号施令的角色,变成教练、协调人、组织者。
4、百分之百的优质
任何一个小错误都可能造成大的损失。只有消除侥幸心理,时刻追求百分之百的优质,才能实现TQM,充分满足顾客需求。
5、贯彻始终
在产品开发的每一个阶段都应实行全面的质量管理,而不是仅在某一阶段。
6、事前主动
防患于未然。经常组织讨论,主动寻找出可能发生的问题,并及时加以解决。
7、持续改进
实施TQM不可能毕其功于一役。必须坚持持续改进,将TQM融入日常的工作和管理。
TQM实施的步骤有哪些?
1、进行全面质量管理思想的教育
对全体员工进行全面质量管理思想的教育,以达到以下目的:
1)将满足顾客的需求放在首位
要让每个人深刻理解“顾客满意”的思想。为了理解并实行“顾客满意”的思想,可以将员工分组进行“换位思维”,并讨论清楚如下问题:
所有参与产品开发的人员:如果自己是个顾客,对产品的质量是怎么要求的?希望自己得到什么样的服务?
管理人员:如果自己是个开发者,对开发过程中遇到的问题会有何想法?希望得到什么样的帮助和理解?希望管理者如何对待自己?
开发者:假如自己是个管理者,会如何管理整个开发过程?对开发中出现的问题怎么看?知道它们的起源和解决方法么?
要鼓励大家以自己希望得到的那种服务方式去为自己的顾客服务,要将每个人都作为自己的一个重要顾客,想方设法是其满意。比如,CourseDesigner要提供足够清晰的Script及必要解释,使GraphicDesigner清楚该画什么样的图,让他们满意,让他们愉快地进行下一步的工作。
2)明白提高质量与降低成本的关系
质量提高,不仅不会提高成本,反而会降低成本。这是因为:质量高了,会减少反复修改的时间,缩短开发周期,降低人力资本。还会提高士气,提高工作效率。
3)树立百分之百合格产品的责任感
使百分之百的员工成为抓质量的主人。要达到此种境界:当问一个员工“谁负责产品的质量?”时,得到的回答是“我!”,而不是“Tester”或"QA"或其它。让大家明白:如果存在任何问题,都会最终出现并影响产品质量和公司形象。在开始阶段的问题不解决,只能在最后的阶段以更高的代价解决。教育员工树立百分之百合格产品的责任感,消除侥幸心理。
2、明确顾客需求
搞清楚什么样的产品是让用户满意的产品。
3、了解市场
经常将别的厂商的产品向大家展示,并进行研究,让大家明白别人是怎么做得,我们有何差距。
4、让员工明白什么是好的产品
给出样板,进行足够的培训,让大家都真正明白什么是好的合格的产品。
5、建立明确的质量基准和质量测评制度
产品好坏一定要有一个明确公开的标准来衡量。每个人都可以把自己的工作结果与之对照,从而知道自己做得是好是坏。而且这种标准要以一种制度的形式切实付诸实施,才能增加可信度。
6、建立相对完善的激励机制
如果检测的结果对个人的利益无任何影响,则员工没有尽力提高质量的动力。要在物质和精神方面对员工根据他们的绩效进行不同的激励。
7。帮助质量检测部门变成提高质量的催化剂
改变质检人员“挑问题者”的角色,消除Tester,QA同开发者之间的隔阂和对立。可以采取三种措施:
让质检人员与开发者一起参加有关培训,使他们彼此更好地理解对方的工作。
让质检人员成为开发小组的一部分,让小组成员有更多的了解。
提高质检人员与开发者的沟通技巧。
8、建立一套明确一致的解决问题的方法
一旦出现问题,大家能够按照此方法去解决问题,而不是互相埋怨或手足无措。
解决问题常用的6步法:
讨论并确定问题
找出问题的根源
提出可能的解决方法
选择最佳办法
建议、批准和实施
测试、评估、调整和庆贺
9、在全体员工中培育主人翁意识和敬业精神
如果大家都抱着“公司不是我的,我是来打工的,公司效益好坏、能够存活发展与我无关”,产品质量如何提高,公司如何搞好?
10、让员工有一定的自由和权利
有了权利,才会有主动性。允许员工提出问题,解决问题,并将解决方案付诸实施。如果什么问题都要Leader来决定,大家只有消极工作和等待。
11、建立质量小组
质量小组由不同角色的人员组成,负责发现质量问题,讨论解决方法,提出并实施解决方案。
12、加强Teamwork的培训
培训员工,尤其是Leader如何有效地制定Team'sgoal,如何不断增强这个goal,如何始终围绕这个goal工作。教给大家如何更好地交流,如何更好地合作,如何在解决问题时对事不对人。