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

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

质量这个词究竟有多重要,没有切身体会真的很难说的出来,在社会上实习之后,现在这个词理解更加深刻了些。这么说吧,质量在的研发领域几乎可以说是重过其他一切,开发进度来不及可以延期,方案搞不定可以变更,裁决不做,唯有质量不可妥协。为什么质量这么重要?简单说几点:

(1) 质量是一个企业的代名词,质量都做不好,客户肯定会有不好的体验,并质疑你的能力。

(2) 对于大型的软件工程活动,如果前期版本到处挖坑,那么后期版本将会越做越痛苦,而且定位和解决问题所消耗的时间和金钱将会更多(这点感触颇深)。

(3) 从软件开发的角度来看,越早引入问题,带来的人力消耗和经济损失就越大,具体多大呢?据说有专门的团队研究过是成指数形式增长的(具体数字我不记得了,但是从切身体会来讲我是深信不疑的),举个例子,如果开发阶段,引入一个和其他地方关联性比较强问题,一直没被发现,然后几个版本之后发现,那么可能很多代码都是基于这个错误的逻辑继续开发的,到时候修改起来,很可能会牵一发而动全身。再比如,需求分析没做好,或软件架构设计不合理,开发完之后才发现,那代价就会更大。

如果我是一个项目的QA,那么你认为你的工作职责范围有很多,在需求定义流程中,审查是更适合质量保证(QA)测试人员的角色,而不是定义;但QA测试人员需要学习如何高效执行审查。对于QA测试人员来主产,在于需求定义审查中成功获得支持关键在于,找到对于其它参与人员重要的问题,这就意味着找出需求内容相关的问题,避免投入过多的精力在形式和可测试性上。在我的书中,或相关的讨论坛中,我描述了许多方法来识别需求问题——包括清晰度和可测试性——以及如何使用强大的方法来检测出错误和疏忽的内容。

有些组织让业务分析师负责定义需求和开发测试,从而证明需求已经达到要求。这类双重角色常常会因为测试方法和知识的不足,而导致测试被忽略掉。另外,分析师的测试不可能显示他们需求问题。这类弱点也还会更严重,当开发人员是定义需求和测试的人时。

如果我是一个项目经理,我认为这我的项目中需要专职的QA,也需要有Test,这样分工更加明确,出了事情之后,可以把责任落实,个人的身上。

posted @ 2019-09-23 20:16  杨吉  阅读(116)  评论(0编辑  收藏  举报