软件工程第三次作业——关于软件质量保障初探

《我们需要专职的QA吗?》


 

  1.什么是专职QA?

简单了解QA即英文QUALITY ASSURANCE 的简称,中文意思是品质保证,专职QA也就是注重品质上的问题保证,从事技术质量和服务质量等的研究、管理、监督、检查、检验、分析、鉴定等。


    两位老师都在文中多次强调了不该设立单独的QA部门,许多公司的QA部门都不懂开发,然而不懂开发的人必然做不好测试。  

  2.文章简单笔记

    表达出改变现状的方法:是让Dev去进行测试,并表明不懂测试的开发人员是做不好开发的。

    QA与Dev的关系是紧连在一起的,测试人员要懂开发和开发人员要测试。

    作为程序员需要吃狗食——如果不能切身体会到自己干的烂事,自己的痛苦,你就不会有想要去改进的动机。

    没有痛苦,就不会真正地去思考,没有真正的思考,就没有真正的进步。

  3.邹老师留下的思考题

    要有自己独特方面的见解,然而这谈何容易。文中其实也提到部分,假如你做自动化测试,每次大量的重复同样的测试,往后就很有可能被机械所代替。

    所以当被安排到做测试的时候,其实也是需要更加努力的学习研发的技能,努力的让自己实现能真正自动化的测试小程序。


 

关于软件质量保障你的体会:  

  首先给我们的公式为

软件质量 = 程序质量 + 软件工程质量

   其中,程序的质量体现在软件外的功能的质量,

     软件工程的质量体现在以下反面:

      • 软件开发过程的可见性、风险控制、成本的控制
      • 软件内部模块,项目中间阶段的交付质量,项目管理工具的因素
      • 内部质量指控的完成情况    

  

  软件工程的质量

    用CMMI(全称Capability Maturity Model Integration,即能力成熟度模型集成)来衡量工程质量的意义。

    不仅降低了项目的成本,而且提高了项目的质量和按期完成率。

    (链接提供参考)

  质量的成本

预防 -> 评审 -> 内部故障 -> 外部故障 -> 流程分析改进 -> 提高职业技能 -> 技术投资

(参考 邹欣 构建之法-软件工程)

 

  个人见解

一个好的团队,在遇见一系列的Bug问题时,不仅QA人员要有能力解决,而且Dev也需共同解决,不能出现互相推卸的情况。

既然质量要保证,就必须有进行严谨的测试,在测试的同时要有一个紧扣在一起的团队。

且不说QA的相关事情,Dev在进行项目开发的时候也应注意程序的完整,这也是每个程序员对于程序的专业素养。

 

如果我是一个项目的QA,那么我认为我的工作职责范围是:

  需要注意的首要任务是保证产品的质量。

  假如我是一名项目QA,在完成测试的同时,既要保证产品的质量,也要一并注重在程序上的开发。

  因为不懂开发的人必然做不好测试。

  保证各司其职,对项目共同负责。

 

如果我是一个项目经理,那么我认为这我的项目中无需要专职的QA:

  借鉴两位老师文中的想法后,个人大胆认为在项目中无需专职QA

  但如果仅单单的Test,等到时候程序上线后出现诸多的问题却是要自己吃‘狗食’的。

  总的来说需要的是把现在项目的架构和流程做好,让所有人都能比较容易地进行QA工作,这样,团队的“软件工程质量”才会有提高。

  在最后要有一个角色对QA这件事负责。不但角色要独立,而且最后在软件发布的时候需要得到此角色的签字。

 

  之所以不需要专职QA的原因是专职QA与Dev之间容易出现矛盾,以及互相推卸责任的现象。

  尤其是当一些QA不懂Dev的开发思想以及程序上的如何运行的情况下,会照成时间上大量消耗。

  由开发人员并兼测试人员能最大程度的优化程序,或许这会使开发人员的工作量变大的许多。

  

  这样一旦问题出现的时候,整个团队共同承当责任,相应的QA的责任会偏多一点。

 

——来自小白的我的个人见解

(不知现实中公司是否已经实行相关的操作)

你可能感兴趣的:(软件工程第三次作业——关于软件质量保障初探)