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

一、对教材与参考资料阅读后关于软件质量保障你的体会是什么?

软件质量的含义:

概括地说,软件质量就是“软件与明确地和隐含地定义的需求相一致的程度”。具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。上述定义强调了以下三点:
(1)软件需求是度量软件质量的基础,与需求就一致就是质量不高。
(2)指定的标准定义了一组指导软件开发的准则,如果没有遵守这些准则,几乎肯定会导致质量不高。
(3)通常,有一组没有显式描述的隐含需求(如期望软件是容易维护的)。如果软件满足明确描述的需求,但却不满足隐含的需求,那么软件的质量仍然是值得怀疑的。
影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。可划分为三组,分别反应用户在使用软件产品时的三种观点。正确性、健壮性、效率、完整性、可用性、风险(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移植性、可再用性、互运行性(产品转移)。

二、如果你是一个项目的QA,那么你认为你的工作职责范围是什么?

1. QA必须懂开发
一个不懂开发的qa只能做黑盒测试,而有些bug往往是黑盒测试不出来的。

2.  QA必须了解需求
项目中,qa的参与从需求开始。一个不了解需求的qa必然不是一名合格的qa.

3.  QA必须了解项目的上下游的结构
一个不了解上游的qa, 必然无法确定dev对上游的调用是否可靠;
一个不了解下游的qa, 必然无法确定项目的实现是否符合下游的调用场景,接口的QPS是否满足要求,项目对下游影响的范围有多大。

4. QA为整个项目的质量负责
qa在项目中不是为找bug而存在的。项目中找到的bug越多,只能说项目的质量越接近需求要求的质量,但并不能保证真正的质量。
如果一开始需求本身是有问题的,或上下游的衔接是有问题的,那么即便整个项目中没有bug, 那么上线后质量也是不合格的。
qa存在的价值不是来找更多地bug, 而是监督和保证从需求一直到项目上线的质量。也就是说,qa不是证明项目实现的错误性,而是确认实现的正确性。

三、如果你是一个项目经理,那么你认为这你的项目中需要专职的QA么?还是只需有Test即可?如果一旦出现问题,你如何界定由谁担责?

 

我认为项目中需要专职QA,分工明确更能发挥一个团队的作用,独立的质量保障角色是不可避免的。QA和Test在项目中的作用给和体现是由很大区别的,分工明确更能发挥一个团队的作用,当然具体情况还得看项目的大小,团队成员数量以及是否由“不出世的天才”。一旦出现问题,除了负责人以外,每个成员都有不可推卸的责任。

 

posted on 2019-09-24 15:36  M丿先生  阅读(141)  评论(1)    收藏  举报