SQA在线聊天记录四:质量保证与工具 - CSDN 新闻

来源:百度文库 编辑:神马文学网 时间:2024/04/29 20:46:11
SQA在线聊天记录四:质量保证与工具

嘉宾主持Jacob:说到工具方面,我们首先是建立一个过程,然后基于这个过程进行运行。工具对过程起的支撑作用有多大?你们采用哪些工具?

刘清富:单单从QA的角度来说,借助工具会提高效率。但工具引进的初期肯定会效率下降。我们也会使用一些工具,比如Excel,最好的项目管理工具是什么,有人说是Excel,他们说这个东西做起来太好了。有的工具必须进入商业化,比如说Rational。我们搭建很好的平台,都利用了商业化的工具,因为你没有必要去开发它,花钱把它买来就可以用。我们内部创建了一个很好的平台,在这个平台上会进行很多的工作,包括协调系统。工程师、QA都会在这上面工作,显然会加快项目部署过程、项目进度、沟通方面。

主持人:刚才刘总提到可以用Excel解决管理问题。IBM-Rational作为过程改进的工具提供商,是怎么看待这个问题?傅老师,您是怎样考虑这个问题的呢?

傅纯一:呵呵,我们当然会大力推荐IBM Rational的工具。但坦率地说,工具并不是万能的,关键是要掌握工具背后的方法。QA如何体现其价值呢?QA就像消防队员一样,工作做得好不好,不在于一年灭了多少次火,如果能做到一年里没有火灾的话,那你的消防工作就做得非常到位了。所以QA的职责并不是帮助开发团队找到所有的产品Bug和缺陷,他的职责是要找到造成这些Bug的流程问题,并帮助开发团队及时调整其工作流程,从而更好地预防软件缺陷的产生。很多时候是由于项目团队不符合流程、不规范的做法才导致了产品质量问题,QA的职现是抓住流程中的问题,通过保证流程的执行来大幅度降低执行过程中的差错。现在的软件开发项目规模都非常大,好几十人做开发。在开发过程中,人工可以管理一些东西,但人容易出错,但工具就可以避免这方面的问题。另外对开发人员来说,应该让他更关注于如何满足客户的业务需求,大量繁琐、重复性的工作让工具去做,这些是工具更擅长的方面,而人则应该干更有价值的工作。

嘉宾主持Bluesky:我们知道IBM Rational有一个软件开发平台,在这个平台上到底包括了哪些工具呢?

傅纯一:实际上软件开发是一个非常复杂过程,其中涉及到软件开发的很多方面,如项目管理、需求、设计、实现、测试、配置管理等。我们向软件开发团队推荐的是Rational软件开发平台SDP(Software Development Platform),SDP是一个非常完善的工具平台,里面既包括了IBM Rational 指导软件开发的方法论 RUP (Rational Unified Process),又括了支持软件开发生命周期所需要的所有工具,如项目组合管理平台RPM (Rational Portfolio Manager)、需求管理工具RequisitePro、可视化建模工具 Rose/XDE/RSA (Rational Software Architect)、集成开发环境RAD (Rational Application Developer)、白盒测试工具PurifyPlus、自动化测试工具 Functional / Performance Tester、配置管理工具ClearCase / ClearQuest 等。在SDP中我们是方法和工具并重,帮助开发团队从各个方面来做好软件开发和保证产品质量。

嘉宾主持Jacob:工具的引用和流程的建立是怎么协调呢的?比如说,先建立流程再引进工具还是先引进工具再修改流程?
   
谢琳:应该说过程在前,工具在后一点。每个企业都有自己企业的特点,我们这几年越来越多在做自己内部的工作。

刘清富:我们建一个缺陷预防的体系。这和流程的变化是很相关的,我觉得应该有这个意识,去更换这个工具。原来的方法和现在是不一样的,因为有了工具了,工具怎么和人打交道,工作有什么变化?肯定会和大家沟通。   

现在有一个产品缺陷管理的工具,这个工具对我们来讲是至关重要的,我们有很多的工作,我们花比较低的成本引进这个工具,对我们的收益是比较大的,有很多东西可以进行管理,收益比较好,效率比较好,但是引进工具要进行分析,我们要进行很长时间的分析,给我三个月的时间,工程师来试用一个这个工具。不能盲目的引进工具,为了工具而引进工具,这样的话就得不偿失了。

主持人:于总能不能给我们介绍一些国外使用工具的情况,以及和国内的对比。

于波:他们三个人都强调了工具在过程改进中的重要作用,前面我也说了,过程改进也为有效的工具的进一步运用提供了平台。有了过程和工具的有机结合会给我们软件企业承担开发工作主体的人创造很好发挥效率和创造性的平台,同时也会避免某些问题、错误的重复发生。工具既可以是专业化的工具,比如IBM等的这些一系列的工具;工具也可以是公司自主定义的模板和表格,如Excel形式的。不同的企业要根据自身的特点和工具带来的利益来引进或开发有效的工具。国外来讲,复杂功能的大工具和小工具都有使用,大的企业使用工具是比较多的现象。大、中、小规模的企业也有自己利用各种技术或Excel开发的工具。国内和国外在这一点上比较相似,逐步在认识到使用工具是要干什么,要达到什么目的思考来有效的选择和使用工具支持质量目标和生产率。
       另外,国外企业用工具比较多一些,除了上述的好处外,也有为人力成本高等缘故。国内逐渐在用工具,前几年都在用Word生成的工具,现在更趋于用Excel了,因为Excel可以更有效的实现对数据的分析、比较和处理,并生成更直观的图表来反映过程、项目和产品的状态、Profile、质量趋势等等,更易于中、高层的领导及时把握项目的各种状态和参数并实施有效的监控。不论是先有工具还是先有过程,二者必须结合有机地结合在一起,并且过程和工具的改进永远是支持企业商业目标的实现和客户满意。

嘉宾主持Bluesky:各位都是业界顶尖的专家。有一个问题值得探讨,关于工具方面,以前有很多工具限制,比如度量热了,度量工具不能搞度量,缺陷热了不能搞缺陷,工具很少能系统化,而能否从刚开始用户的需求,中间的设计、分解、测试、质量保证,现在引出一些观点和趋势出来,如果把这个工具的一套体系用起来,流程有了、工具有了,用了工具,用得好的话,就可以进行CMMI级别的认证了。咱们如何看待这个问题?

傅纯一:这是和企业的的成熟度是有关系的,比如最初的时候,企业会选择整个质量体系中最薄弱的环节来进行改进,他改进的是整个木桶中最短的那块板。如发现质量有问题,他的第一反映就是去补测试工具。等到这个环节所有所改善了,木桶中其他的板又变成了相对最短的板,所以他又会去补另外一块。在这个过程中,就涉及到整合的问题,开发过程中的各个环节都是相互配合的,配合的过程中有数据整合、流程的整合。到后来企业就会考虑不同工具之间的整合问题。所以遂渐的,工具厂商都开始提供一些整合的解决方案,就像我们刚才介绍的软件开发平台SDP,我们是以一个整体的概念来推荐这个平台, SDP内部的各种工具之间都是整合的,不需要使用者自己来做。另外从使用成本的方面来讲,引进任何一种新方法或新工具都会造成短期内学习成本增高,要过一段时间新方法新工具的性能才能体现出来。如何来降低我们的学习成本呢?比如我是经常出差,坐东航的飞机多一些,东航前几年机型是不统一的,有波音的机型、也有空客的机型,到后来他们逐步地把机型统一到空客上,目的是为了降低整个公司的使用成本。工具也是一样的,如果你的工具有一个统一的平台,是一个整体的话,就可以帮助你有效地降低整体的使用成本。

嘉宾主持Bluesky:谢总如何看待整合的问题?

谢琳:因为每个企业面临的商业环境、它的业务策略、组织设置等等各有不同,因此每个企业的流程也是具有不同特点的。如果一整套的统一开发平台要被一个企业接受,这个软件就需要有一个非常好的可配置性,以便建立适合我自己制定的流程。也就是说,这个平台的可配置性越好,那么可用度就越大。

刘清富:我谈一下我个人的观点,中国有句古话,假如你不知道你在什么位置的话,给你一张地图也没有用。你想要什么?也许要一整套的工具适合,也许不适合,这要根据自己的情况,哪方面最强,哪方面最弱我最需要企业做的是什么,还是通常的考虑,是实施还是先行。还有木桶理论,有的班子还要更长,要因人而宜,你需要什么,就做什么。可能目前我只需要一个工具,在性能测试方面非常弱,这种工具什么最适合我们。工具有很多,我是自己购买,还是自己开发。对百度来讲,适合不适合互联网行业,这是我们考虑的一个方式。引进工具是重要的,但要看符合不符合企业的目标。

于波:企业的过程能力成熟度较高时,会更加理解、使用和对工具改进的需要。在CMM和CMMI模型五级的过程域中也要求企业在不断围绕确保企业商业目标的实现而进行技术和过程变更管理的同时包括对工具的不断更新和管理。一方面核心是革命化的改进,另一方面是潜移默化的改进。国外像国防部、军方、政府等客户对承包商的工具的使用也都有不同程度的要求。目前,国内的客户对开发企业的工具使用的要求还不多见。

嘉宾主持Bluesky:在评估的时候,企业对工具使用上,是比较看重工具吗?还是只要能够提供CMMI的证据就行了?   

于波:在评估上,主要看企业过程是否针对模型的要求,建立和有效地实施了适合企业特点的过程,过程是否有效支持商业目标的实现。我说一点其他的事,有些人认为CMM或CMMI是文山会海。其实SEI的本意和模型的要求根本不是这样的!是有些人不了解SEI的CMM或CMMI模型。模型提出了企业要做什么;而不是要求企业如何做。或者说CMM和CMMI仅仅是企业改进的参考模型,而并非等于企业的过程。模型给我们各类和不同特点的广范的企业提供了一个很好过程改进的框架或平台,哪些需要有效的工具来支持、哪些靠过程和规程实现、做到什么程度是企业结合自身商业目标和特点来定义的。
       在成熟度比较低的情况下,人工投入的比较大工具使用的不多,比如在二级,仅是对基本的项目管理的要求,配置工具是通常要考虑的几个工具之一。真正到了三级,许多工程过程域加入到模型的要求中了。工程上没有工具的支持,在当今的软件开发过程中已经是不可能的了。尤其是当今的软件项目和产品越加复杂,参与的人员和角色也多了,在不是十几年前的情况了,更加要求有效工具的支持了。在评估中,随着成熟度等级或过程能力等级的提高会越加考察工具使用和有效性的。如果企业使用了工具,用的比较好,一般会给企业定一个强项使企业在这样的前提下不断的发扬优势实现商业目标;如果没有使用必要的工具或达到有效性,我们会建议使用必要的工具(从工具开发商处购买或自主开发)。再一个是从软件开发过程中,项目越来越大、越来越复杂了,各种各样的工具都会有用。就像建摩天大楼一样,你没有工具是不行的。

嘉宾主持Bluesky:在工具的使用过程中,就像企业做管理一样,从手工的记帐、报表,人事考勤是单独的系统,ERP的,上ERP的就是找死,不上ERP的就是等死。不管是什么企业,IBM在这方面的工具上已经做了很多年的积累,对工具方面有没有特别的间接?

傅纯一:国内对ERP的事实褒贬不一。做的比较成功的企业也有,有的是盲目上马之后没有起到很好的效果。对我们是什么启示呢?实施ERP实际上是对你管理方法、管理理念上的改进。你光安装这套系统是没有用的,关键是你的管理流程、生产流程要和这个管理工具相匹配。工具是支撑这个管理体系的,不是为了用工具而用工具。所以给我们的启示就是你要用ERP,你的管理理念和管理流程就一定要上一个台阶。同样的在软件开发这个领域,你也不是为了用工具而用工具,在用工具之前你的开发方法要上一个台阶,你要有一个比较好的开发流程,同时你的开发理念和开发技术也要有所改进。我们怎么样保证客户做到这点呢?每次把工具销售给客户的时候,我们都会配有相应的服务,通过服务来完成知识传递的过程。这和刚才讨论的一个话题是一样的,流程和工具谁先谁后,其实是一致的。你要建立配置管理的流程,一定要同时引进工具。大家会发现,很多企业对流程有误解,流程不是一本书,很多企业制定了一本流程规范,但是这个流程有没有得到有效地执行呢?最近有一个执行力的讨论,我们到很多客户那里去,他们都在讨论执行力的问题。流程也是一样的,制定之后有没有保证执行呢?工具可以起到一定的作用,它是对流程的固化。人是有创造性的,爱走捷径,他有时会绕过一些关键的流程步骤;但有了工具平台就不一样了,在工具平台上你就必须按照流程来走,从而保证流程的执行。

嘉宾主持Jacob:傅老师谈到流程、工具,此外还谈到人。影响质量的三个主要要素都谈到了。我们从实践来看,人如何融入到其中呢?  

谢琳:我对这个问题蛮有感触的。无论是CMM还是CMMI,主要关注的是过程,也涉及了技术。刚才于老师也提到,CMM里面包括TCM,就是技术改革管理。中国的很多软件企业是比较重视技术的。在我们的开发过程中,需要制定很多开发标准,其实和技术也是相关的。而且人的能力也能够体现出技术的能力。这里我想说根据我个人的经验和感受,过程、技术、人,三要素,如果我排的话,会把人排在最前面。因为任何过程和技术都是靠人来执行的。我说说我们企业的实践,特别是在最近几个月,所发现的缺陷,对它进行分析,发现跟人相关的问题比例在往上走,而跟过程相关问题的比例在往下走。这说明什么呢?过程的稳定性越来越好、被执行力越来越好,这时候“人”的问题就冒出来了。我们很多QA都知道,很多企业在做CMM的时候也需要做PSP和TSP。还有一个是People-CMM。我们知道很多印度的公司在很好的应用P-CMM,而中国应用P-CMM的很少,我只知道印度TATA在杭州的开发中心是P-CMM四级的。我最近也在看这个P-CMM。中国企业是一向重视技术的,现在有很多企业也越来越重视过程,但我认为对“人”的关注还不够。我们很多管理者在管人的时候靠什么呢?大多靠过去的经验,以及个人的特点来管人。我们是不是需要系统化的管人的体系呢?我个人非常赞同。而且我对这个也蛮感兴趣的。

嘉宾主持Jacob:刘总,您是怎么排这个顺序?

刘清富:我觉得人是最重要的。有一句话说,21世纪什么是最贵的?人是最贵的,就是人才啊。百度有一句话“鼓励创新、容忍失败”,要给员工创新。因为创造事情的主体是人做的,我们能招到最优秀的人,这时候对企业来讲是最重要的,企业最核心的竞争力是人才。搜索的行业,国内做这个行业是非常的少,非常高的企业可能和传统的互联网行业还是不一样的,人的技术要非常高的。在非常好的环境让人在里面很好的工作。而且我们确实也创造了这样的一个文化,也创造了这样一个很好的管理的体系。百度在技术体系方面设置了大概六十多个级别,包括各种软件工程师、测试工程师、运营工程师、架构工程师、质量保证工程师等等,有一系列人员架构的体系。所以在这方面来讲,百度非常重视人员的培养,也非常重视对优秀人员加盟的渴望。所以,我认为人还是排在首位的。

于波:毋庸置疑,最重要的肯定是人。但是以往只强调的是人,尤其是在中国这个环境下。中国从80年代开始有软件这个产业,我国软件产业的发展,一些国外公司在本土的落户对带动中国公司的不断发展的作用是很大的。因为计算机首先在美国诞生,之后发展起来的软件产业也起源于美国。国内软件产业起步较国外略晚些,开始时也是重点跟踪国外的技术,而没有更多地考虑到过程的建立和管理方面的跟进。另外中国人是很聪明的,再加上我们国家传统的环境和习惯的特点,就更加强调人和技术的作用,没有及时地对过程这个质量三角形的第三点充分地发挥作用。进几年来我们已经开始逐步认识到这一点,并在逐步地发挥过程对人员和技术与工具的支持作用了,即过程为行为主体的人和有效地利用技术和工具搭建一个更好发挥的平台。前面我说过,人、技术与工具、过程是一个很重要的三角形。三个点不可偏废,只有平衡了才能实现高的生产率和高的产品质量。