- 浏览: 162701 次
- 性别:
- 来自: 华东
文章分类
最新评论
-
chen_miao:
我是初学者,请问,我在flex设计好了带有按钮和下拉框的界面, ...
ruby+flex实现天气预报 -
barrytyh:
很多技术人员都有想法,但忘了一个根本性的问题,谁在给你MONE ...
互联网创业与软件开发 -
fireflyman:
囧......
关于并发和并行 -
fireflyman:
你老再次出现了
谈谈互联网新产品如何起步 -
qhh394141930:
写得很详细,受教了。谢谢!
从瀑布模型、极限编程到敏捷开发
我最早接触QA是去年在一家大型制造型企业实习的时候,在这种企业中有两类人最NiuBility,一种是保安,搞的和特种部队似的,一种就是QA人员,相当于现在的城管,非常的威风。
经过一段时间的了解发现这个公司非常的重视的QA,当时实行的是全面质量管理,QA具有非常大的权力,可以随时随地对各级经理的工作进行审查。进一步了解发现其实QA的作用其实是非常的大的,我有大量的一手资料表明实行全面质量管理和引入QA后,公司产品的质量确实有很大的提升,QA在日常工作确实可以发现很多不符合流程的东西,减少很多不必要的损失。总之QA给我留下的印象是蛮好的。
最后在一家IT研发企业工作后,也接触了点CMMI/QA工作,开始我对QA的态度是非常的积极的,但最后发现引入QA后,我们的软件产品质量并没有提升,而且我们做了大量的QA工作却并没有收到预期的效果,我反思后觉得有以下原因困扰我们实行QA的地方:
一个是按CMMI的说法,QA主要是检查过程的执行是否符合要求,那么并不能直接作用于产品,只能通过保证过程来间接的保证质量,对于制造型企业,很多东西是依赖于机器化的流水线作业,而对于软件企业来说很多东西很难规程化,人的因素总是琢磨不定的,所以即使过程执行的很完美,但过程所产生的东西不见得同样是完美的。
还有一个变通的做法是,弱化对过程的检查,强化对工作产品的检查,比如对设计 编码 测试等各方面做深入的走查,那么这就要对QA人员的要求非常的高,要求对软件开发的各个环节有很深的认识与经验,但是公司也不大可能会把有这种能力的人放到QA的岗位,很多公司的做法是把新手推到QA的岗位,所以QA检查难免会走形式化的路线。
那么到底如何保证的质量呢?我的一点不成熟的看法是主要由项目经理来保证,理由是做一个项目其实是项目经理对各个环节最了解,也具有一定的管控能力,但这又涉及到一个客观的问题,谁也不知道这个项目经理是不是有很强的自我纠错的能力,QA的理念其实也是想借助于独立的第三方来做客观的审查,但是,我还是认为给予项目经理足够的信任,让他来对质量负责更加实际点。
评论
不过一般来说这个术语已经比较统一了.CMM(I)或者PMBOK等都把QA定义为对流程的保障. 测试(testing)一般就直接说测试.
<div class='quote_div'>楼主说的不对吧?感觉你所说的是SQA,专管流程的。个人认为QA还是负责具体方面的,比如设计test case,编写自动化测试脚本等等。</div>
<p> </p>
<p> 您真逗,您说的是测试吧?QA翻译成中文叫质量保证,哈哈……</p>
而通常软件项目或者软件产品通常并没有成熟的标准。所以独立的质量部门对软件的质量只能是停留在表面的层次上。而最熟悉软件系统的其实就是系统分析员。
根据我的个人经验。QA还是需要一定的独立性,可以有独立的主管。但是QA的工作过程需要系统分析员进行指导。这样QA才能对软件系统质量提高有重大作用。
QA对无主动性,能力高的人有用。
QA对有主动性,能力低的人部分作用。
QA对无主动性,能力低的人没用。
<div class='quote_div'>
<div class='quote_title'>gurudk 写道</div>
<div class='quote_div'>
<div class='quote_title'>由没有软件工程经验的新手去充当QA,效果肯定不会太好。QA一般充当着教练和警察的双重角色。我觉得比较好的应该是教练的角色充当的比较多,而作为警察尽可能少,但不能没有。好的QA应该非常了解项目组的特点,而且对项目质量的控制点有非常好的把握,不给项目组过大的过程压力,又能很好的控制最终产出的质量。这些都需要经验<br/></div>
</div>
<p> </p>
<p>以上说的都有道理,尽管实际可能不是如此</p>
<p> </p>
<div class='quote_title'>gurudk 写道</div>
<div class='quote_div'>想不明白,为什么那么多公司招新人做QA,不过QA用PPMM确实比较好,比较好沟通。 <br/></div>
<p> </p>
<p>这有什么想不明白的,这个道理我和以上各位已经讲到很清楚了呀</p>
</div>
<p> </p>
<p>不知道这些老板是怎么想的,想重视质量,又不重视QA人员的选择,不重视吧,你还设了QA这个职位。是不是矛盾啊</p>
<div class='quote_div'>
<div class='quote_title'>gurudk 写道</div>
<div class='quote_div'>
<div class='quote_title'>这样就更多的依赖于项目经理个人的能力了,如果项目经理没有质量意识,或者不具备很多环节的控制能力,还是起不到应有的作用。有些项目经理不懂技术,对代码质量的控制就无从下手。</div>
</div>
<p><br/>那你说说项目经理懂技术的多还是不懂技术的多?据我所知在国内,项目经理更像是一个技术负责人,您是海归?</p>
<p> </p>
<p>如果项目经理没有质量意识或者不具备很多环节的控制能力,那么我想知道他是怎么当上项目经理的,依我的看法,质量意识是每个相关的人都要有的,特别是开发人员要具备很强的质量意识,为什么?因为质量直接是由这帮人制造出来的。</p>
</div>
<p> </p>
<p>不懂技术的项目经理还是挺多的,一般参与项目的需求调研。因为不懂技术,很难对开发人员的工作量估算做出约束,比如一个任务估计要15天,你根本不知道只需要10天就可以了。</p>
QA应该来自EPG小组
与项目经理也没有上下级关系 直接对EPG小组来负责
EPG小组独立于各个项目,度量和考核各个项目的所有过程
同时也要分清QA和测试之间的区别(Google一下)
相当于逼迫开发人员及一些专家来把握质量。
冒事很多大公司也是这样做的。。。
比如软件项目的质量,首先要看设计师的能力怎么样,其次看开发人员的能力怎么样
要归咎于测试人员和QA,有些治标不治本
这里的前一个过程检查和后一个过程有什么区别?按我理解,后一个主要是指QA和PM一起制定这个过程吗?且不说这个是不是该QA该干的活,那么即使制定的这个过程是科学有效的,那么如来保证这个过程产生的产品也有效的?
过程是否有效就看QA和项目经理的水平了,QA可以帮助项目经理得到组织经验 - 这些组织经验体现在项目具体的流程里。比如时使用什么样的代码规范,测试标准,怎样评估平台和架构的风险,怎样去协调各种级别的沟通等等 - 一个好QA不应该头脑中只有那些条文,其实其他项目的案例以及对当前的组织的了解更有加之。因为好的过程是一个有效的组织的产物,所以QA帮助项目达到的成功应该是组织的成功。我个人觉得项目的成功主要的责任人是项目经理,好的QA可以成为其左右手,从管理方面加强一下,当然项目经理很全能是是用不着QA的。
写道
如果你和项目经理一起规划的过程有价值,难道项目经理会不坚决执行?
我个人觉得项目经理会坚决执行,但……就怕……,这也是QA存在的意义
怕项目经理不执行?对他有利的东西他怎会不执行,当然了QA不直接汇报给项目经理,他不对的地方也没有什么让着他的 - 这也是一种博弈。
写道
至于产品检查,主要应该由测试人员完成。
这个说的在理,我前面所说的PM保证质量其实有些武断,质量这个东西我觉得还是要全员参与,我不敢说QA不能保证质量,但我还是认为QA在质量保证的这个方面产生的作用不是很大,PM可以从通过宏观的管控来保证质量,所以的他的所用是很大的。测试人员可以通过对产品的检查也能够保证质量,尽管质量不是测试出来的,但及早的发现问题并反馈给质量的制造者,从某种程度上我认为是起到一个保证的作用,另外开发的人员的很强的质量意识也可以保证质量,决策者科学的决策也可以保证质量……
产品检查为了解项目质量提供反馈以及产品的风险分析依据,这就已经足够了。
最初,质量是测试出来的。
然后,质量是制造出来的。
再然后,质量是设计出来的。
QA(更确切的说是TQA)是从产品周期的每一个环节上都关注最终的产品质量来保证产品质量的!结果是靠过程的有效性来保证的。
在软件行业,这样做是不是一样有效呢?
我认为是一样有效的。只不过,软件行业有其特殊性,工程性和传统行业差太多,软件产品的质量保证更难。
一、QA不能是一时的、一次性的,有个迭代的过程。
二、QA的目的一定要明确,关注最终的产品质量的保证,不能太强调过程的重要性。
<div class='quote_div'>1.QA独立于项目组,不由项目经理控制绩效,是否这一点看起来像是“外人”?但QA也不是“外人”,与项目组有共同的目标,即促进组织、团队的绩效。在不同的组织QA可能有不同的具体职责,一般都包括作为“高管的耳目”从一个独立的渠道去获取项目信息,识别、报告和跟踪项目执行中的关键问题。从“阴暗”一点的角度看不排除项目经理有报喜不报忧的可能。QA职责还可能包括支持项目组利用过程财富、解决项目组内难以解决的问题的职责,这对QA人员的素质、能力要求就要高一些了。例如有模板中对QA资质要求包括:2年及以上开发经验、半年及以上项目经理经验。还有,即使没有明确规定,QA也有必要把“服务项目组”作为自己的职责,要起到“项目组喉舌”的作用。“外人”体现一种独立的渠道、独立的视角和思考;“难道你认为PM不需要跟踪项目的各项进度和质量指标”好像与独立的QA活动并不排斥,项目经理当然要负责管理项目,这并不排除其他人员来跟踪项目组的计划符合性和工件正确性! </div>
<div class='quote_div'><br/>2.首先要看什么是“更充分和准确的信息”,拿这个信息干什么。项目不同的涉众需要不同的信息,信息用于不同的目的,离开这一点去谈“充分”、“准确”没有意义。称职的QA可以通过项目会议跟踪、配置库审计、过程审计、项目组成员访谈、客户沟通等方式获得项目组提供信息以外的信息应该没有疑问!例如客户可能向他们信任的QA提出不想向项目组提出的抱怨。这些信息的用途包括:判断项目组提供的信息是否可信、从独立于项目组的角度识别项目运行中的重大风险是否发生等;QA的信息一般侧重于高管宏观上要了解的信息。作为称职的QA,应该具备综合各方面信息识别关键问题的能力。如果QA只是从项目会议记要、状态报告等介质中获取信息,重复这些信息来完成QA报告,那只能说是这位QA人员的问题,不是整个QA角色的问题。 </div>
<div class='quote_div'><br/>3.关于“贡献到底在哪里”,基础该是支持过程财富复用,维护风险库、案例库、基础数据库等,特别是资质稍短的项目经理很愿意得到这方面支持,在人员流动率较高的组织中支持财富复用更为重要。不同组织的QA职责规定可能不同,这样具体的贡献也不相同,例如规定QA要直接执行SPTO/PMC职责也没有什么不可以。就个人感受而言,除过程支持外,贡献较明显的活动包括识别、报告影响项目业绩的重大问题,促进高管与项目组、项目组与客户沟通更顺畅、无误解,支持项目组解决组内难以解决的问题等。至于项目经理、高管对QA工作认可,整体上答案是肯定的,做了几年QA好像还没有项目经理表示不欢迎、高管表示做了没有什么用的表现;我的公司中的开发项目、服务项目以及营销经理都相当欢迎项目QA人员。具体例子这里就不必要讲了,事情信则灵、认真做则有效,如果不相信就不做好了。 <br/> 至于“警察,老师,医生,律师”还是在于自己怎么看、怎么做了,如果简单地“就不用引用了”那也没有什么好讲的;花花世界,见仁见智。说远一点,谈到企业文化有说法认为个人创造性重要或重在团队协作不强调个人发挥都没有什么不可以,关键是团队成员有一致的价值观和行为规则。我很认同我的咨询师,听过“警察,老师,医生,律师”的培训,也很认同。咨询师介绍的顺序与楼主的不同,是“老师、医生、律师、警察”,这个顺序体现了“警察”的角色其实是最后的、相对次要的。就我自己的体会,还要加上“学生、助手”的角色,特别是对过程不成熟、认识不一致的组织,“学生、助手”更为重要。如果QA以当警察为首要任务未免本末倒置了。我的咨询师也很强调处理好“过程域、方法域”与“问题域、目标域”的关系,我也很认同。SW-CMM/CMMI不是不关注问题域,但执行中一些人往往会注重方法、注重过程,忽视目标、忽视问题。归根结底,QA也是为了组织、团队的业绩而存在,执行QA活动需要以团队业绩为目标,促进组织绩效,而不简单地是有计划、有报告、有形式上验证度量什么的就可以了,通过CMMI某级评估毕竟和促进绩效不完全是一回事。重复一下,对QA信则灵、认真做则有效,如果不相信就不做好了。</div>
<p> </p>
发表评论
-
谈谈互联网新产品如何起步
2011-02-16 17:56 1270很多时候, 我们刚做完一个互联网产品,由于产品很粗糙, 功 ... -
育娃网---探索国内育儿社区的新思路
2009-12-22 19:55 310个人认为,这个市场是一个充满前景的垂直行业,到底应该从哪 ... -
关于社交网络的一点思考
2009-09-23 12:16 1717只要是给人设计的 ... -
对产品和运营的几点思索
2009-09-07 22:04 20951、做一个产品需要首先考虑,是卖内容还是卖功能, 切不可都做 ... -
命运掌握在自己手中
2009-09-07 13:57 747李彦宏独家撰文:命运 ... -
强者必学的定律
2009-07-06 10:03 7911、蓝斯登原则:在你往 ... -
如何快速通过CMMI评估
2008-12-15 11:39 1399终于访谈结束 ... -
对WebGame行业的一点看法
2008-09-22 10:20 1373之前不怎么上 ... -
如何进行项目跟踪
2008-09-08 19:52 1838项目跟踪主要针对计划,是为了了解项目的实际进展情 ... -
CMMI 名词辨析:检查点 里程碑 基线
2008-09-06 10:02 2575我实施CMMI的过 ... -
互联网创业与软件开发
2008-09-04 22:57 2137最近与一位创业公司的朋友私下交流了一些项目管理和软 ... -
创业公司如何用人(转CSDN老紫竹的一篇颇有见地的文章)
2008-08-29 14:32 4171创业不是用钱就能堆 ... -
新手到底新在什么地方
2008-08-22 21:29 2147接触项目管理也有一段时间了,给我感触比较深的还是 ... -
从瀑布模型、极限编程到敏捷开发
2008-08-18 21:11 2872软件开发是一种对人 ... -
我们不是在做技术决策,我们在玩
2008-07-31 12:58 3347在这里我不想一 ... -
小公司如何做项目管理(下)
2008-07-22 10:09 1771在上篇文章里, ... -
小公司如何做项目管理(上)
2008-07-21 08:09 2329我所在的公司和大多数国内IT公司一样,十几到几十人的规模,每 ... -
如何编制软件测试用例
2008-06-20 12:52 1983如何设计编制软件测试 ... -
阿里要走102年 阿里的工程师能走多远?
2008-03-19 20:30 1226转载自 http://java.csdn.net/index. ... -
如何快速通过CMMI评估
2008-03-14 22:12 1253终于访谈结束 ...
相关推荐
质量保证计划的目的在于确保软件产品的质量达到预期的标准,确保工作产品和活动遵守适用的标准、规程和需求的情况得到客观的验证,并及时上报在软件工程部不能解决的不符合问题给高级经理。 2. 方案维护 质量保证...
QA,通常指的是质量保证(QualityAssurance)工程师,但我更喜欢定义敏捷中的QA为质量分析师(QualityAnalyst),主要基于以下几个方面的原因:质量保证更偏向于工业说法,称参与软件测试的人员为质量分析师感觉更恰当;...
质量手册QA-01B是炬星电子(惠州)有限公司制定的一份详细的质量管理体系文档,旨在遵循ISO9001标准,确保公司的产品质量和客户满意度。手册共分为多个章节,涵盖了从管理职责到资源管理,再到产品实现和持续改进的...
质量保证(QA)在整个软件开发过程中扮演着至关重要的角色。它确保软件开发过程遵循既定的标准和流程,以生产高质量的软件产品。QA团队负责监控开发过程,验证软件是否符合功能需求、性能需求和其他质量标准。 **2.2 ...
评审和检查是保证质量的重要环节。软件需求评审、概要设计评审、详细设计评审、功能检查和物理检查确保设计符合需求,而综合检查则关注整个系统的集成。此外,软件配置管理涉及版本控制、变更管理和版本追踪,以保证...
一个好的QA不仅要能发现问题,而且要懂得如何说服DEV心甘情愿的fix这个问题。 2.充分的自信心。QA在bug处理上很大程度上会收到开发人员的影响,在关键问题上决不能妥协。 3.高度的警觉性(洞察力)和怀疑精神。不要...
通过对这些文档的深入理解和应用,不仅可以提升软件项目的质量管理效率,还能为组织建立一套完善的质量保证体系,提高客户满意度,降低维护成本,并最终增强企业的竞争力。在实际操作中,应结合具体项目需求灵活调整...
软件测试质量保证检查表是QA工程师用来系统化、规范化测试过程的一种工具,它能帮助检测并预防潜在的质量问题。下面,我们将详细探讨这个主题,并结合“模板E3-质量保证检查表.doc”来理解其内容和应用。 首先,...
【标题】:“ST&QA NIIT PPT(软件测试质量控制)”是一份关于软件测试与质量保证领域的专业讲座材料,由知名的IT培训机构NIIT提供。这份PPT详细讲解了在软件开发过程中如何进行有效的测试以及如何确保软件产品的质量...
软件质量保证PPT QA 如何做QA,QA职责 建立质量管理体系 建立质量计划 质量保证 质量控制的输入 质量控制的手段和技巧
在软件开发及质量管理领域中,QM(Quality Management,质量管理)、QA(Quality Assurance,质量保证)与QC(Quality Control,质量控制)是三个核心概念,它们分别代表了不同的活动和目标,共同构成了确保产品质量...
QA关注的是整个质量保证体系,而QC则侧重于具体的检查和测试工作。 QA(质量保证)是预防性的,它的目标是建立一套系统和流程,以防止缺陷的产生。这包括制定质量标准、执行规范、培训员工以及持续改进开发过程。QA...
一个清晰、详尽的QA工作流程图不仅能够帮助团队成员理解各自的角色与责任,还能够提高项目的透明度和效率,从而确保软件开发过程中的每一个阶段都能达到预定的质量标准。 ### QA工作流程概览 #### 项目参与与计划...
质量保证(QA)和质量控制(QC)是软件项目中两个经常混用的术语,但它们的性质和需求却截然不同。QA 是针对项目实施过程的管理手段,旨在确保项目以一套成熟高效的方法开展和实施;QC 是针对项目产品的技术手段,...
QA,全称为Quality Assurance,中文译为“品质保证”,是ISO8402:1994标准中的定义,指的是为确保实体能满足品质要求,而在品质管理体系中进行的一系列有计划和有系统的活动。这些活动旨在提供足够的信任,证明组织...
**QA Distiller** 是一款强大的双语文档比对与检查工具,专为处理语言文档的质量保证而设计。这款软件能够帮助用户在翻译过程中确保源文本和目标文本的精确度,从而提升翻译质量和效率。它主要适用于专业翻译人员、...
在此背景下,QA(Quality Assurance,质量保证)作为确保软件开发过程和产品质量的关键环节,扮演着至关重要的角色。 ##### QA的目标 - **减少并纠正不符合情况**:通过早期发现和纠正开发过程中出现的问题,减少与...