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

软件的质量,从我自己的意见来看,软件的质量就是从用户角度主观发出的一些评论,对软件的支持和评判。

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

一、程序的质量

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

二、软件工程的质量

    软件在功能、成本、时间三方面要满足客户的需求。软件工程的质量需要长时间的过程来提高。

1.软件开发的可见性

2.软件开发过程的风险控制

3.软件内部模块,项目中间阶段的交付质量,项目管理工具的因素

4.软件开发成本的控制

5.内部质量指标的完成情况

三、软件工程的质量如何衡量

    对于软件工程质量衡量有成熟的理论是CMMI(Capacity Maturity Model Integrated,能力成熟度模型集成)。资料显示,运用CMMI理论的项目,不仅降低了成本,而且提高了项目的质量和按期完成率。

1.实施CMMI的意义

(1)CMMI一级,初始级。
(2)CMMI二级,管理级。
(3)CMMI三级,明确(定义)级。
(4)CMMI四级,量化管理级。
(5)CMMI五级,优化级。
    有以上的5个级别可以看出。每一个级别都是更高一级的基石,要上高台阶必须先踏上较低一层台阶。

四、质量的成本

    要达到一定的软件质量,是要付出相应的成本的,总体分为以下几个方面。

1.预防(Proevention)

2.评审(Appraisal)

3.内部故障(Internal Failure)

4.外部故障(External Failure)

5.流程改进分析(Process Enhancement)

6.提高职业技能(Enhance Professional Skills)

7.技术投资(Invest in Tehnology)

五、提出问题

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

    我觉得首先应该实行CMMI,其次对不同的分工进行独立,以达到更好的预期效果。这样在每一个方面都有独立的人员去负责,可以更好的保证软件的质量。

(2)如果我是一个项目的QA,那么你认为你的工作职责范围是什么?

1)保障软件组织流程体系得到遵守;
2)促使软件组织过程改进;
3)指导项目实施流程;
4)增加开发活动透明度;
5)评审项目活动;
6)审核工作产品;
7)协助工作产品问题解决;
8)度量数据采集分析,提供决策参考;
9)进行缺陷预防;

(3)如果你是一个项目经理,那么你认为你的项目中需要专职的QA吗?还是只需要TEST即可?如果一旦出现问题,你如何界定由谁担责?

    我认为需要专职的QA。首先,分工是好事,所有人都可以参与QA的工作,但是最后要有一个角色对QA这件事负责。不但角色要独立,而且在最后软件发布时,必须得到此角色的签字保证。分工是社会和行业进化的结果,开发和测试其实是软件工程的两个分支,对于不同的软件/服务,测试的方式和程度有所区别。独立的测试角色从用户的角度出发验证产品质量。独立专业的测试等同于代表客户对产品进行认证。但是,尽管有专人负责测试工作,但是保证质量仍然是所有成员的职责。培养大家都要做QA,专人负责量化测试,有条件多做测试自动化的文件。
    一旦出现问题,QA应该负主要责任,团队其他人员负次要责任,大家一起协商解决,而不是互相推诿,这样会更有利于解决问题。所以在我看来软件工程的质量不单单是靠开发者,同时也需要这些独立的,专业的专职的QA与text并行,这样才能更好的保证软件的质量。

猜你喜欢

转载自www.cnblogs.com/gaocongshuai/p/11575550.html