全面软件质量管理_第1页
全面软件质量管理_第2页
全面软件质量管理_第3页
全面软件质量管理_第4页
全面软件质量管理_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全面软件质量管理——剖析软件质量的内涵——内建高质量而非修补质量

目录1.引言2.软件质量属性和质量要素3.商业目标决定质量目标4.质量保证能够保证质量吗5.质量人员的状况6.全面软件质量管理:模型7.全面软件质量管理:制定质量计划8.全面软件质量管理:技术评审9.全面软件质量管理:软件测试10.全面软件质量管理:过程检查11.全面软件质量管理:缺陷跟踪工具1.引言

软件质量管理是充满争论的话题。被人们奉为软件质量管理圣经的CMM和ISO9001似乎并不奏效,现实和理想之间的差距太大。经典软件工程教科书以及CMM和ISO9001总是抛开商业目标谈质量管理,本末倒置,纸上谈兵,误导了大量读者,所以质量管理才变得那么艰辛。世界上还没有万能的软件质量管理圣经,我们不要迷信CMM和ISO9000。要多向有实战经验的同行专家请教,但是不要轻信“纸上谈兵”的专家。本文给出了一套实用主义的“全面软件质量管理”方法。重要的理念:商业目标决定质量目标。提高软件质量的最终目的是为了赢利,而不是创造完美无缺的产品。因此对于普通商业软件而言,并不是“质量越高越好”,而是恰好让广大用户满意,并且将提高质量所付出的代价控制在预算之内。2.软件质量属性和质量要素

2.1如何描述质量词典对质量的定义是:①典型的或本质的特征;②事物固有的或区别于其他事物的特征或本质;③优良或出色的程度。CMM对质量的定义是:①一个系统、组件或过程符合特定需求的程度;②一个系统、组件或过程符合客户或用户的要求或期望的程度。上述定义很抽象,人们看了准会一脸迷惘。就让我们用“人的健康”来类比解释软件质量。古时候人们以为长得结实、饭量大就是健康,这显然是不科学的。现代人总是通过考察多方面的生理因素来判断是否健康,如测量身高、体重、心跳、血压、血液、体温等。如果上述因素都合格,那么表明这人是健康的。如果某个因素不合格,则表明此人在某个方面不健康,医生会对症下药。通过类比,我们这样理解软件质量:软件质量是许多质量属性的综合体现,各种质量属性反映了软件质量的方方面面。人们通过改善软件的各种质量属性,从而提高软件的整体质量(否则无从下手)。

软件的质量属性很多,如正确性、精确性,健壮性、可靠性、容错性、性能、易用性、安全性、可扩展性、可复用性、兼容性、可移植性、可测试性、可维护性、灵活性等。上述这些质量属性之间“你中有我,我中有他”,非常缠绵。如果开发人员每天要面对那么多的质量属性咬文嚼字,不久就会迂腐得像孔乙己,因此我们有必要对质量属性做些分类和整合。质量属性可分为两大类:“功能性”与“非功能性”,后者有时也称为“能力”(Capability)。

2.软件质量属性和质量要素

2.2十大软件质量因素功能性质量因素:正确性,健壮性,可靠性非功能性质量因素:性能,易用性,清晰性,安全性,可扩展性,兼容性,可移植性为什么是“十大”质量因素逐一解释“十大”质量因素(参见《高质量程序设计指南——C++/C语言》)2.3软件质量要素什么是软件质量要素?(1)从技术角度讲,对软件整体质量影响最大的那些质量属性才是质量要素;(2)从商业角度讲,客户最关心的、能成为卖点的质量属性才是质量要素。对于一个特定的软件而言,我们首先判断什么是质量要素,才能给出提高质量的具体措施,而不是一股脑地想把所有的质量属性都做好,否则不仅做不好,还可能得不偿失。如果某些质量属性并不能产生显著的经济效益,我们可以忽略它们,把精力用在对经济效益贡献最大的质量要素上。简而言之,只有质量要素才值得开发人员下功夫去改善。2.软件质量属性和质量要素

2.4正确性正确性是指软件按照需求正确执行任务的能力。“正确性”的语义涵盖了“精确性”。正确性无疑是第一重要的软件质量属性。技术评审和测试的第一关都是检查工作成果的正确性。机器不会主动欺骗人,软件运行出错通常都是人造成的,所以不要找借口埋怨机器有毛病。2.5健壮性

健壮性是指在异常情况下,软件能够正常运行的能力。正确性描述软件在需求范围之内的行为,而健壮性描述软件在需求范围之外的行为。开发者往往把异常情况错当成正常情况而不作处理,结果降低了健壮性。用户才不管正确性与健壮性的区别,反正软件出了差错都是开发方的错。所以提高软件的健壮性也是开发者的义务。健壮性有两层含义:一是容错能力,二是恢复能力。从语义上理解,恢复不及容错那么健壮。Unix容错能力很强,可惜不好用。Windows容错能力较差,但是恢复能力很好,而且很好用。占了90%的操作系统市场。

2.软件质量属性和质量要素2.6可靠性可靠性是指在一定的环境下,在给定的时间内,系统不发生故障的概率。可靠性本来是硬件领域的术语。比如某个电子设备在刚开始工作时挺好的,但由于器件在工作中其物理性质会发生变化(如发热),慢慢地系统的功能或性能就会失常。所以一个从设计到生产完全正确的硬件系统,在工作中未必就是可靠的。

软件在运行时不会发生物理性质的变化,人们常以为如果软件的某个功能是正确的,那么它一辈子都是正确的。可是我们无法对软件进行彻底地测试,无法根除软件中潜在的错误。平时软件运行得好好的,说不准哪一天就不正常了,如有千年等一回的“千年虫”问题,司空见惯的“内存泄露”、“误差累积”问题等等。

软件可靠性分析通常采用统计方法,遗憾的是目前可供第一线开发人员使用的成果很少见,大多数文章限于理论研究。口语中的可靠性含义宽泛,几乎囊括了正确性、健壮性。只要人们发现系统有毛病,便归结为可靠性差。从专业角度讲,这种说法是确切的。时隐时现的错误一般都属于可靠性问题,纠错的代价很高。例如当维护人员十万火急地赶到现场时,错误消失了;等维护人员回家后,错误又出现了。…软件可靠性问题主要是在编程时候埋下的祸害(很难测试出来),应当提倡规范化程序设计,预防可靠性祸害。2.软件质量属性和质量要素2.7性能性能通常是指软件的“时间-空间”效率,而不仅是指软件的运行速度。人们总希望软件的运行速度高些,并且占用资源少些。既要马儿跑得快,又要马儿吃的少。性能优化的关键工作是找出限制性能的“瓶颈”,不要在无关痛痒的地方瞎忙乎。例如在大学里当教师,光靠使劲讲课或者埋头做实验,职称是升不快的。有些人找到了突破口,一年之内“造”它几十篇文章,争取破格升副教授、教授。程序员可以通过优化数据结构、算法和代码来提高软件的性能。例如数据库程序的优化。算法复杂度分析是很好的方法,可以达到“未卜先知”的功效。性能优化就好像从海绵里挤水一样,你不挤,水就不出来,你越挤海绵越干。有些程序员认为现在的计算机不仅速度越来越高,而且内存越来越大,因此软件性能优化的必要性下降了。这种看法是不对的,殊不知随着机器的升级,软件系统也越来越庞大了和复杂了,性能优化仍然大有必要。最具有代表性的是三维游戏软件,例如《DeltaForce》、《古墓丽影》、《反恐精英》等,如果不对软件(关键是游戏引擎)做精益求精的优化,要想在一台普通的PC上顺畅地玩游戏是不太可能的。2.软件质量属性和质量要素2.8易用性易用性是指用户使用软件的容易程度。现代人的生活节奏快,干啥事都想图个方便。所以把易用性作为重要的质量属性对待无可非议。

导致软件易用性差的根本原因:理工科大学教育存在缺陷:没有开设人机工程学、美学、心理学这些必修课,大部分开发人员不知道如何设计易用的软件产品。开发人员犯了“错位”的毛病:他以为只要自己用起来方便,用户也就会满意。

软件的易用性要让用户来评价。当用户真的感到软件很好用时,一股温暖的感觉油然而生,于是就用“界面友好”、“方便易用”等词来评价软件产品。

2.9清晰性清晰意味者所有的工作成果易读、易理解,可以提高团队开发效率,降低维护代价。开发人员只有在自己思路清晰的时候才可能写出让别人易读、易理解的程序和文档。可理解的东西通常是简洁的。一个原始问题可能很复杂,但高水平的人就能够把软件系统设计得很简洁。如果软件系统臃肿不堪,它迟早会出问题。所以简洁是人们对工作“精益求精”的结果,而不是潦草应付的结果。与简洁对立的是“罗里罗嗦”。千万不要把在学校里“造文章”的手法用于开发产品!如果把文章写得很简洁,让人很容易理解,投稿往往中不了;只有加上一些玄乎的东西,把本来简单的弄成复杂的,才会增加投稿的命中率。2.软件质量属性和质量要素2.10安全性

这里安全性是指信息安全,英文是Security而不是Safety。安全性是指防止系统被非法入侵的能力,既属于技术问题又属于管理问题。信息安全是一门比较深奥的学问,其发展是建立在正义与邪恶的斗争之上。这世界似乎不存在绝对安全的系统,连美国军方的系统都频频遭黑客入侵。如今全球黑客泛滥,真是“道高一尺,魔高一丈”啊!开发商和客户愿意为提高安全性而投入的资金是有限的,他们要考虑值不值得。

究竟什么样的安全性是令人满意的呢?

一般地,如果黑客为非法入侵花费的代价(考虑时间、费用、风险等因素)高于得到的好处,那么这样的系统可以认为是安全的。对于普通软件,并不一点要追求很高的安全性,也不能完全忽视安全性,要先分析黑客行为。

2.软件质量属属性和质量量要素2.11可扩展性可扩展性反反映软件适适应“变化化”的能力力。在软件开发发过程中,,“变化””是司空见见惯的事情情,如需求求、设计的的变化,算算法的改进进,程序的的变化等等等。由于软件是是“软”的的,是否它它天生就容容易修改以以适应“变变化”?关键要看软软件的规模模和复杂性性如果软件规规模很小,,问题很简简单,那么么修改起来来的确比较较容易,这这时就无所所谓“可扩扩展性”了了。要是软软件的代码码只有100行,那那么“软件件工程”也也就用不着着了。如果软件规规模很大,,问题很复复杂,倘若若软件的可可扩展性不不好,那么么该软件就就像用卡片片造成的房房子,抽出出或者塞进进去一张卡卡片都有可可能使房子子倒塌。现代软件产产品通常采采用“增量量开发模式式”,不断断推出新版版本,获取取增值利润润。可扩展展性越来越越重要。可可扩展性是是系统设计计阶段重点点考虑的质质量属性。。谈到软件的的可扩展性性,开发人人员首先想想到的是怎怎样提高可可扩展性,,于是努力力去设计很很好的体系系结构来提提高可扩展展性,却不不考虑该不不该做这件件事。从商商业角度考考虑,如果果某个软件件将不断地地推出新版版本,那么么可扩展性性很重要。。但是如果果软件永远远都不会有有下个版本本(一次性性买卖),,那么根本本无需提高高可扩展性性,何必自自找苦吃呢呢!2.软件质量属属性和质量量要素2.12兼容性兼容性是指指不同产品品(或者新新老产品))相互交换换信息的能能力。例如如两个字处处理软件的的文件格式式兼容,那那么它们都都可以操作作对方的文文件,这种种能力对用用户很有好好处。兼容性的商商业规则::弱者设法法与强者兼兼容,否则则无容身之之地;强者者应当避免免被兼容,,否则市场场将被瓜分分。如果你你经常看香香港拍的““黑帮”影影片,你就就很容易明明白这个道道理。金山软件公公司的WPS与微软的Word之争。WPS一定要与Word兼容,否则则活不下去去。但是Word绝对不会与与WPS兼容,除非非WPS又在中国称称老大。中国联通和和中国移动动的手机互互联互通问问题。(互互联网的价价值与用户户数量的平平方成正比比)2.13可移植性软件的可移移植性指的的是软件不不经修改或或稍加修改改就可以运运行于不同同软硬件环环境(CPU、OS和编译器))的能力,,主要体现现为代码的的可移植性性。编程语言越越低级,用用它编写的的程序越难难移植,反反之则越容容易。这是是因为,不不同的硬件件体系结构构(例如IntelCPU和SPARCCPU))使用用不不同同的的指指令令集集和和字字长长,,而而OS和编编译译器器可可以以屏屏蔽蔽这这种种差差异异,,所所以以高高级级语语言言的的可可移移植植性性更更好好。。Java程序序号号称称““一一次次编编译译,,到到处处运运行行””,,具具有有100%的的可可移移植植性性。。为为了了提提高高Java程序序的的性性能能,,最最新新的的Java标准准允允许许人人们们使使用用一一些些与与平平台台相相关关的的优优化化技技术术,,这这样样优优化化后后的的Java程序序虽虽然然不不能能““一一次次编编译译,,到到处处运运行行””,,仍仍然然能能够够““一一次次编编程程,,到到处处编编译译””。。软件件设设计计时时应应该该将将““设设备备相相关关程程序序””与与““设设备备无无关关程程序序””分分开开,,将将““功功能能模模块块””与与““用用户户界界面面””分分开开。。3.商业业目目标标决决定定质质量量目目标标3.1教教科科书书的的片片面面观观点点大凡凡软软件件工工程程教教科科书书为为了了强强调调质质量量的的重重要要性性,,总总是是要要举举一一些些历历史史上上发发生生过过的的重重大大软软件件质质量量事事故故,,例例如如航航天天飞飞机机爆爆炸炸、、核核电电站站失失事事、、爱爱国国者者导导弹弹发发生生故故障障等等等等。。这这些些事事故故的的确确不不是是危危言言耸耸听听,,给给人人们们敲敲响响了了质质量量的的警警钟钟。。学术术界界总总是是喜喜欢欢宣宣扬扬质质量量至至上上的的理理念念,,而而忽忽视视企企业业的的商商业业利利益益,,将将质质量量目目标标凌凌驾驾于于商商业业目目标标之之上上。。我我不不能能评评判判这这种种现现象象是是好好还还是是坏坏,,但但是是的的确确误误导导了了大大量量读读者者。。许许多多软软件件人人员员都都有有““质质量量越越高高越越好好””的的观观念念,,这这是是被被教教科科书书灌灌输输的的,,而而不不是是他他自自己己领领悟悟出出来来的的。。我曾曾在在著著作作《《高高质质量量程程序序设设计计指指南南————C++/C语言言》》中中大大肆肆宣宣扬扬了了高高质质量量程程序序设设计计的的理理念念,,力力求求使使C++程序序达达到到““零零缺缺陷陷””的的质质量量目目标标。。尽尽管管此此书书得得到到了了许许多多程程序序员员的的赞赞同同,,但但是是我我经经过过反反思思之之后后改改变变了了质质量量观观念念,,我我要要着着重重指指出出的的是是::重视视软软件件质质量量是是应应该该的的,,但但是是““质质量量越越高高越越好好””并并不不是是普普适适的的真真理理。。只只有有极极少少数数软软件件应应该该追追求求““零零缺缺陷陷””,,对对绝绝大大多多数数软软件件而而言言,,商商业业目目标标决决定定了了质质量量目目标标,,而而不不该该把把质质量量目目标标凌凌驾驾于于商商业业目目标标之之上上。。3.2严严格格系系统统对对质质量量的的要要求求航空空航航天天等等系系统统对对质质量量要要求求极极高高,,任任何何缺缺陷陷都都有有可可能能导导致致机机毁毁人人亡亡,,所所以以人人们们不不惜惜一一切切代代价价去去消消除除缺缺陷陷。。在在发发射射航航天天器器之之前前,,只只要要发发现现任任何何异异常常,,就就会会立立即即取取消消发发射射指指令令,,直直到到异异常常被被消消除除为为止止。。前前苏苏联联做做得得最最过过分分,,许许多多重重大大武武器器系系统统的的负负责责人人都都签签了了生生死死状状,,系系统统研研制制成成功功则则获获得得英英雄雄勋勋章章,,失失败败则则被被枪枪毙毙。。在在这这种种压压力力下下没没有有人人敢敢对对质质量量有有一一丝丝松松懈懈。。3.商业业目目标标决决定定质质量量目目标标3.3普普通通商商业业软软件件::商商业业目目标标决决定定质质量量目目标标上述述严严格格系系统统毕毕竟竟是是少少数数,,绝绝大大多多数数普普通通软软件件的的缺缺陷陷并并不不会会造造成成机机毁毁人人亡亡这这样样的的重重大大损损失失,,否否则则没没有有人人敢敢从从事事软软件件开开发发了了。。在在日日常常工工作作中中,,我我们们接接触触过过的的软软件件几几乎乎都都是是有有缺缺陷陷的的,,即即便便是是软软件件业业老老大大Microsoft,,它的的软软件件产产品品也也经经常常出出错错甚甚至至导导致致死死机机,,人人们们骂骂几几句句后后还还会会照照样样使使用用有有缺缺陷陷的的软软件件。。企业业的的根根本本目目标标是是为为了了获获取取尽尽可可能能多多的的利利润润,,而而不不是是生生产产完完美美无无缺缺的的产产品品。。如如果果企企业业销销售售出出去去的的软软件件的的质质量量比比较较差差,,轻轻则则挨挨骂骂,,重重则则被被退退货货甚甚至至被被索索赔赔,,因此此为为了了提提高高用用户户对对产产品品的的满满意意度度,,企企业业必必须须提提高高产产品品的的质质量量。。但但是是企企业业不不可可能能为为了了追追求求完完美美的的质质量量而而不不惜惜一一切切代代价价,,当当企企业业为为提提高高质质量量所所付付出出的的代代价价超超过过销销售售收收益益时时,,这这个个产产品品已已经经没没有有商商业业价价值值了了,,还还不不如如不不开开发发。企业必须权权衡质量、、效率和成成本,产品品质量太低低了或者太太高了,都都不利于企企业获取利利润。企业业理想的质质量目标不不是“零缺缺陷”,而而是恰好让让广大用户户满意,并并且将提高高质量所付付出的代价价控制在预预算之内。。4.质量保证能能够保证质质量吗4.1美美丽的谎言言CMM对软件质量量保证是这这样描述的的:软件质量保保证(QualityAssurance)的目的是为为管理者提提供有关软软件过程和和产品的适适当的可视视性。它包包括评审和和审核软件件产品及其其活动,以以验证其是是否遵守既既定的规程程和标准,,并向有关关负责人汇汇报评审和和审核的结结果。质量保证((QualityAssurance,QA)是CMM和ISO9001最为推崇的的改善软件件质量的方方法。基于于我亲身实实践和调查查研究,我我敢冒天下下之大不讳讳说一句::质量保证并并不能保证证质量,它它是个美丽丽的谎言。。简而言之,,质量保证证活动就是是检查软件件项目的““工作过程程和工作成成果”是否否符合既定定的规范。。如此简单单的活动为为什么被冠冠以“质量量保证”这这等份量的的术语呢??没有历史史典故,经经我考究,,猜想是源源于一个天天真的假设设:过程质量与与产品质量量存在某种种程度的因因果关系,,通常“好好的过程””产生“好好的产品””,而“差差的过程””将产生““差的产品品”。假设设企业已经经制定了软软件过程规规范,如果果质量保证证人员发现现某些项目目的“工作作过程以及及工作成果果”不符合合既定的规规范,那么么马上可以以断定产品品存在缺陷陷。反之,,如果质量量保证人员员没有发现现不符合既既定规范的的东西,那那么也可以以断定产品品是合格的的。符合既定规规范的东西西并不意味味着质量一一定合格,,仅靠规范范无法识别别出产品中中可能存在在的大量缺缺陷(以高手与与新手的设设计、编程程为例)。。质量保证的的技术含量量太低了,,只能检查查出肤浅的的缺陷,不不能对付有有技术难度度的缺陷。。所以单独独的“质量量保证”其其实并不能能“保证质质量”。4.质量保证能能够保证质质量吗4.2CMM3级企业QA人员的迷惘惘(email摘录)我很迷茫,,很想找一一个人聊聊聊,希望你你能给我点点主意,化化解我心中中的谜团。。昨天我们公公司拿到了了CMM3的证书,但但是我一点点都高兴不不起来。公公司宣称,,我们的软软件质量大大大提高了了,但是我我却没有信信心。我们们的过程执执行得很好好,但是我我觉得并没没有在很大大程度上改改善产品的的质量。今天还有一一个项目经经理跟我诉诉苦:前一一阶段大家家都忙于执执行过程,,但是他的的产品质量量令人很不不满意,尤尤其是测试试做的很不不到位。我我是这个项项目的SQA,所以我很理理解他,但但是我帮不不上他的忙忙。因为他他们的过程程执行得很很好,这个个项目可是是通过CMM3级正式评估估了的。当然,执行行CMM有不少好处处,比如文文档全面完完整了,项项目管理的的可视性提提高了。但但是对于我我们公司而而言,它并并没有在根根本上提高高我们公司司的软件能能力。比如概要设设计,开发发人员根本本就不知道道用来干吗吗的,怎么么能指望他他们写出高高质量的概概要设计说说明书出来来。而在做做技术评审审的时候,,他们很少少能找出逻逻辑性的错错误,只能能发现一些些诸如错别别字之类的的小错误。。我们几乎乎每一个配配置项都要要经过评审审,但是大大部分评审审都只能发发现一些无无关痛痒的的问题。公司已经通通过CMM3级了,我认认为过程执执行得很好好了,可是是软件质量量仍然比较较差。这是是怎么回事事啊,你觉觉得原因在在哪里?结论:公司按照CMM3级的要求执执行,而且且质量人员员也认为执执行过程符符合既定的的规范,但但是软件产产品的质量量仍然低下下。所以说说“质量保保证并不能能保证质量量”,这句句话一点都都不过分。。质量保证对对于保证质质量而言只只是必要的的手段,而而不是充分分的手段。。5.质量人员的的状况5.1郁郁闷QA人员诉苦::我现在觉得得很郁闷,,CMM评估前还有有目标,评评估完了冷冷静下来却却觉得效果果很差,很很没劲。项项目经理向向我诉苦,,他们过程程执行的很很好,但是是对产品质质量很不满满意,我却却无能为力力,我这个个QA还有什么用用处啊!所所以我现在在干活没有有动力,因因为不能产产生效益,,做再多的的工作也觉觉得是白干干。而且我我现在手头头有5个项项目要跟踪踪,还不包包括一些整整理培训记记录的杂活活,我觉得得自己连工工人也不如如。我有一一些很好的的想法却无无处发挥,,所以我很很迷茫,很很矛盾地考考虑去留问问题。郁闷的滋味味各色各样样,只有正正在郁闷的的人感受最最真切。我我发现在软软件职业里里,质量人人员是最郁郁闷的一族族。郁闷的的共同特征征有:(1)在执行质质量保证活活动时,经经常受别人人的气,真真是吃力不不讨好。(2)如果项目目取得成功功,主要功功劳都被项项目主管霸霸占了,领领导们至多多会给质量量人员一些些口头上的的感谢。领领导们嘴上上重视产品品的质量,,但是内心心并不重视视质量人员员。(3)质量人员员没有实质质性的权力力,没有成成就感,但但是却对质质量负有最最多的责任任。(4)待遇一般般,看不到到升迁的机机会,没有有盼头,要要么成为打打杂的,要要么另寻出出路。声援。我也做过伤伤害质量人人员的事情情,非常后后悔。我所认识的的公司内外外的质量人人员都是性性格温和、、细致耐心心的人,他他们的优点点在于人格格而不是技技术。平心心而论,他他们比某些些技术出色色但是情商商不高的技技术人员更更值得交朋朋友。质量量检查是他他们的工作作职责,谁谁也不会有有意干扰项项目,所以以任何人都都不应该向向他们发火火。5.质量人员的的状况5.2路路在何方软件行业里里的人嘴上上都说质量量很重要,,可是大多多数企业并并没有给质质量人员提提供良好的的职业发展展空间。质质量人员通通常仅给企企业起到心心里安慰的的作用。这这样下去,,有能耐的的质量人员员会跑光的的。我所认识的的多数质量量人员要么么改行了((如当老师师),要么么读工程硕硕士,MBA等,以图将将来发展事事业。在大多数的的软件企业业里,男性性处于支配配地位,女女性职位相相对比较低低。而质量量人员通常常是女性,,很多男性性主管从未未真正地把把质量人员员当成企业业的宝贵人人才看待,,这种偏见见是非常有有害的。任何素质合合格的员工工都是宝贵贵的人才,,很多默默默无闻的人人才其实是是被不懂得得质量管理理的领导给给荒废了。。质量人员之之所以没有有发挥预期期的效果,,不是性别别缘故,主主要过失在在于领导者者。建议:(1)无论论是企业领领导还是质质量人员,,都要好好好学习全面面软件质量量管理方法法,结合企企业的特点点给出真正正有效的质质量管理方方案。(2))只有有当企企业领领导采采用了了正确确的质质量管管理方方案,,用了了合格格的质质量人人员,,才可可能看看得到到比较较明显显的质质量改改善,,才能能形成成良性性循环环。(3))如果果想让让质量量人员员负起起比较较重的的责任任,那那么就就要给给她相相应的的权力力。在在企业业中,,责任任和权权利是是成正正比的的。如如果质质量人人员的的地位位无足足轻重重,那那么必必然导导致质质量管管理无无足轻轻重。。(4))给质质量人人员一一个适适宜的的升迁迁机会会和薪薪资待待遇,,让她她能够够快乐乐地工工作,,而不不是成成天无无奈地地检查查质量量。5.质量人人员的的状况况5.3赞赞美诗诗中国遭遭受了了非典典型肺肺炎((SARS))的肆虐虐,人人们在在危难难之际际想起起了医医护人人员的的好处处,因因此涌涌现了了许多多对医医护人人员的的赞美美诗。。我碰巧巧在网网上搜搜索到到一位位软件件诗人人献给给质量量人员员的赞赞美诗诗“晚晚上八八九点点钟的的太阳阳”,,我认认为没没有必必要等等到软软件质质量灾灾难降降临的的时候候才想想起质质量人人员,,于是是摘录录这首首诗公公布于于此。。诗中中的““狼人人”和和“银银弹””是软软件工工程的的典故故,寓寓意深深刻。。衷心心感谢谢这位位不知知姓名名的浪浪漫软软件诗诗人。。晚上八八九点点钟的的太阳阳—献给给软件件测试试和质质保人人员我更喜喜爱晚晚上八八九点点钟的的太阳阳,虽然人人们都都已把把他遗遗忘,,但他还还是艰艰难地地悬挂挂在天天上。。我我更更喜爱爱晚上上八九九点钟钟的太太阳,,因为他他将奏奏出黎黎明的的交响响。没有他他又怎会会呼唤唤出一一片明明亮??我更喜喜爱晚晚上八八九点点钟的的太阳阳,因为他他会化化成早早上的的朝阳阳。没有他他又怎会会有什什么希希望??我更喜喜爱晚晚上八八九点点钟的的太阳阳,因为他他是上上帝的的臂膀膀。没有他他,又怎会会创造造万物物的光光芒。。狼人望望月嚎嚎叫,,它知道道月亮映映出的的太阳阳之光光,终将化化为银银弹,,射入它它的胸胸膛。。我更喜爱爱晚上八八九点点种的的太阳阳。6.全面软软件质质量管管理::模型型6.1郎郎中治治病的的故事事质量的的死对对头是是缺陷陷(defect,bug……),,缺陷是是混在在产品品中的的人们们不喜喜欢、、不想想要的的东西西,它它对产产品没没有好好处只只有坏坏处。。缺陷陷越多多质量量越低低,缺缺陷越越少质质量越越高,,提高高软件件质量量的基基本手手段是是消除除软件件缺陷陷。中国郎郎中看看病的的故事事在中国国古代代,有有一家家三兄兄弟全全是郎郎中。。其中中老三三是名名医,,人们们问他他:““你们们兄弟弟三人人谁的的医术术最高高?””他回答答说::“我我常用用猛药药给病病危者者医治治,偶偶尔有有些病病危者者被我我救活活,于于是我我的医医术远远近闻闻名并并成了了名医医。我我二哥哥通常常在人人们刚刚刚生生病的的时候候马上上就治治愈他他们,,临近近村庄庄的人人说他他是好好郎中中。我我大哥哥不外外出治治病,,他深深知人人们生生病的的原因因,所所以能能够预预防家家里人人生病病,他他的医医术只只有我我们家家里才才知道道。””郎中三三兄弟弟是三三种治治病方方式的的代言言人。。6.全面软软件质质量管管理::模型型6.2消消除软软件缺缺陷的的三种种方式式老大治治病的的方式式最高高明,,如果果人们们能够够预防防生病病的话话,那那么没没病就就用不不着看看医生生了。。提高软软件质质量最最好的的办法法是::在开发发过程程中有有效地地防止止工作作成果果产生生缺陷陷,将将高质质量内内建于于开发发过程程之中中。主主要措措施是是“不不断地地提高高技术术水平平,不不断地地提高高规范范化水水平””,其其实就就是练练内功功,通通称为为“软软件过过程改改进””。即使一个个人严守守养生之之道,身身体状况况良好,,但总是是会意外外地得病病的,得得了病就就要去看看医生。。老二治治病的方方式就是是医院的的模式,,病人越越早看病病,就越越早治好好,治病病的代价价就越低低。同理,在在开发软软件的时时候,即即使人们们的技术术水平很很高,并并且严格格遵守规规范,但但是人非非机器,,总是会会犯错误误的,因因此无法法完全避避免软件件中的缺缺陷。当工作成成果刚刚刚产生时时马上进进行质量量检查,,及时找找出并消消除工作作成果中中的缺陷陷。这种种方式效效果比较较好,人人们一般般都能学学会。最最常用的的方法是是技术评评审、软软件测试试和过程程检查,,已经被被企业广广泛采用用并取得得了成效效。老三治病病的方式式代价最最高,只只能是不不得已而而为之。。可在现现实之中中,大多多数软件件企业采采用老三三的方式式来对付付质量问问题。典典型现象象是:在在软件交交付之前前,没有有及时消消除缺陷陷。当软软件交付付给用户户后,用用着用着着就出错错了,赶赶紧请开开发者来来补救。。可笑的的是,当当软件系系统在用用户那里里出故障障了,那那些现场场补救成成功的人人倒成了了英雄,,好心用用户甚至至还寄来来感谢信信。6.全面软件件质量管管理:模模型6.3模模型借鉴老大大、老二二治病的的方法,,我们提提炼出全全面软件件质量管管理的模模型,如如下图所所示。项项目中的的所有人人员几乎乎都参与与了质量量活动,,只是介介入的程程度不同同而已,,后面几几节将逐逐一介绍绍这些质质量活动动。6.全面软件件质量管管理:模模型6.4角角色职职责谁对软件件质量负负责?是全员负负责。任任何与软软件开发发、管理理工作相相关的人人员都对对质量产产生影响响,都要要对质量量负责。。所以人人们不要要把质量量问题全全部推出出质量人人员或测测试人员员。谁对软件件质量负负最大的的责任??谁的权利利越大,,他所负负的质量量责任就就越大。。质量人人员是成成天与质质量打交交道的人人,但他他个人并并不对产产品质量量产生最最大的影影响,所所以也不不负最大大的责任任。质量人员员的主要要职责::(1)负负责制定定质量计计划(很很重要但但是工作作量比较较少);;(2)负负责过程程检查((类似于于CMM中的质量量保证)),约占占个人工工作量的的20%;(3)参参与技术术评审,,约占个个人工作作量的30%;;(4)参参与软件件测试,,约占个个人工作作量的30%;;(5)参参与软件件过程改改进(面面向整个个机构)),约占占个人工工作量的的20%;*上上述工工作量的的比例仅仅供参考考,在实实际应用用时必须须根据项项目的特特征而定定。7.全面软件件质量管管理:制制定质量量管理计计划质量管理理计划就就是为了了实现质质量目标标的计划划。而质质量目标标则是由由商业目目标决定定的。开开发软件件产品的的最终目目的是为为了赚钱钱,所以以人们为为提高软软件质量量所付出出的代价价是有上上限的,,项目负负责人当当然希望望代价越越低越好好。质量管理理计划是是全面质质量管理理的行动动纲领。。谁制定质质量管理理计划??由项目核核心成员员和质量量人员共共同协商商制定,,主要由由质量人人员起草草,由项项目经理理审批即即可。质量管理理计划的的主要内内容(模模板见word文件)::1.质量要素素分析2.质量目标标3.人员与职职责4.过程检查查计划5.技术评审审计划6.软件测试试计划7.缺陷跟踪踪工具8.审批意见见8.全面软件件质量管管理:技技术评审审8.1概概念技术评审审(TechnicalReview,TR)的目的是是尽早地地发现工工作成果果中的缺缺陷,并并帮助开开发人员员及时消消除缺陷陷,从而而有效地地提高产产品的质质量。技术评审审最初是是由IBM公司为了了提高软软件质量量和提高高程序员员生产率率而倡导导的。技技术评审审方法已已经被业业界广泛泛采用并并收到了了很好的的效果,,它被普普遍认为为是软件件开发的的最佳实实践之一一。技术评审审的主要要好处有有:通过消除除工作成成果的缺缺陷而提提高产品品的质量量;技术评审审可以在在任何开开发阶段段执行,,不必等等到软件件可以运运行之际际,越早早消除缺缺陷就越越能降低低开发成成本;开发人员员能够及及时地得得到同行行专家的的帮助和和指导,,无疑会会加深对对工作成成果的理理解,更更好地预预防缺陷陷,一定定程度上上提高了了开发生生产率。。技术评审审有两种种基本类类型:正式技术术评审((FTR))。FTR比较严格格,需要要举行评评审会议议,参加加评审会会议的人人员比较较多。非正式技技术评审审(ITR)。ITR的形式比比较灵活活,通常常在同伴伴之间开开展,不不必举行行评审会会议,评评审人员员比较少少。8.全面软件件质量管管理:技技术评审审8.2正正式技术评评审的流程程技术评审报报告的模板板见word文档9.全面软件质质量管理::软件测试试9.1观观点技术评审和和软件测试试的目的都都是为了消消除软件的的缺陷,两两者的主要要区别是::前者无需运运行软件,,评审人员员和作者把把工作成果果摆放在桌桌面上讨论论;而后者一定定要运行软软件来查找找缺陷。技技术评审在在软件测试试之前执行行,尤其是是在需求开开发和系统统设计阶段段。相比而言,,软件测试试的工作量量通常比技技术评审的的大,发现现的缺陷也也更多。在制定质量量计划的时时候,已经经确定了本本项目的主主要测试活活动、时间间和负责人人,之后再再考虑软件件测试的详详细计划和和测试用例例。如果机构没没有专职的的软件测试试人员的话话,那么开开发人员可可以兼职做做测试工作作。当项目目开发到后后期,过程程检查和技技术评审都都已经没有有多少意义义了,开发发小组急需需有人帮助助他们测试试软件,如如果质量人人员参与软软件测试,,对开发小小组而言简简直就是““雪中送炭炭”。强调:质量量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论