什么软件质量/如何评价软件的质量

news/2024/10/2 20:22:03 标签: 软件测试, 测试, 活动, 产品, 工作, 文档

 

1.       软件质量:

         软件质量是软件的生命,它直接影响着软件的使用和维护。通常软件的质量有下面几个方面来评价质量的优劣:

                  (1)   软件需求是衡量软件质量的基础,不符合需求的软件就不具备质量。设计的软件应在功能、性能等方面都符合要求,并能可靠地运行。

                  (2)   软件结构良好,易读、易于理解,并易于修改、维护。

                  (3)   软件系统具有友好的用户界面,便于用户使用。

                  (4)   软件生存周期中各阶段文档齐全、规范,便于配置、管理。

 

2.       如何评定软件质量(评价模型):

          一个软件,我们如何评定呢?最通用的一个规范标准就是使用ISO/IEC 9126-1991 标准规定的软件质量度量模特。这个标准在网上很容易down到,它不仅对软件质量做了定义,还涉及了整个测试>软件测试的一些规范流程等等,设计测试计划的撰定,测试用例的设计。

 

     ISO/IEC 91261991标准规定的软件质量度量模型,它由3层组成,其中第1层称为质量特性,第2层称为质量子特性,第3层称为度量。

 

1ISO软件质量度量模型

 

 

3.       软件评价的过程(流程):

        软件质量评价的目的是为了直接支持开发并获得能满足用户要求的软件。最终目标是保证产品能提供所要求的质量,即满足用户明确的和隐含的要求。软件产品的一般评价过程是,确定评价需求,然后规定、设计和执行评价,如图所示。

 

 

2:软件评价过程

 

 

4.       怎么去保证软件的质量(执行评价):

         为了在软件开发过程中保证软件的质量,软件的质量保证活动应贯穿整个软件生存周期的每一个阶段。软件的质量保证的措施主要有检查、评审和测试。如图所示,软件质量保证的工作从项目一开始就应介入。

   

      图3:质量保证活动

 

           个人理解:检查和评审一般是由客户,有经验的PM产品经理,测试>软件测试人员等等(广义的QA)参与进来的活动,如项目中demo例会,在demo的同时,大家及时发现问题并讨论分析,以这种方式发现软件的问题。而测试一般是由QA(狭义的QA)参与进来的活动,它是一种普遍的测试行为,QA根据需求分析,设计test plantest case,然后根据项目的schedule去执行测试流程,当然对于测试,不一定就是专业的测试人员,PM产品经理,customer也会参与进来。例如在软件Beta阶段,往往有客户参与进来。

 

5.        测试>软件测试 (图3中的第四步)

 

          简单地说,测试>软件测试就是为了发现错误而执行程序的过程。在IEEE提出的软件工程标准术语中,测试>软件测试被定义为:“使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别。 测试>软件测试是与软件质量密切联系在一起的,归根结底,测试>软件测试是为了保证软件质量。

 

         测试>软件测试是一个找错的过程。测试>软件测试的过程亦是程序运行的过程。程序运行需要数据,为测试设计的数据称为测试用例。测试用例的设计原则是尽可能暴露程序中的错误。

 

         软件是由人来完成的,所有由人做的工作都不会是完美无缺的。软件开发是个很复杂的过程,期间很容易产生错误。无论是软件从业人员、专家和学者做了多大的努力,软件错误仍然存在。因而大家也得到了一种共识:软件中残存着错误,这是软件的一种属性,是无法改变的。所以通常说软件测试的目的就是为了发现尽可能多的缺陷,并期望通过改错来把缺陷统统消灭,以期提高软件的质量一个成功的测试用例在于发现了至今尚未发现的缺陷。

 

          测试>软件测试的目的是以最少的人力、物力和时间找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患所带来的商业风险。

 

具体测试>软件测试的流程,方法,规范等等略。

 


http://www.niftyadmin.cn/n/1221515.html

相关文章

supports-screens 让你的layout适应屏幕的大小包括 平板

<supports-screens> 让你的layout适应屏幕的大小包括 平板 分类&#xff1a; Android2011-11-02 23:233769人阅读评论(1)收藏举报layoutandroidapi手机ui大家都知道&#xff0c;Android 2.3 SDK发布的时候&#xff0c;在SDK中增加了第三方add-ons&#xff0c;其中就包括了…

SQL Replicaton

SQL Replication: 通过Publication去发布自己得数据&#xff0c;供外部系统使用。 通过Subscription去获取其它系统的发布数据为己所有。 Schedule的功能的设置&#xff0c;可以按照自己需要设定数据获取或发布&#xff08;同步&#xff09;的条件&#xff0c;时间等等。 1. L…

托管形象的理解

简单地说&#xff0c;运行在.NET CLR上的代码就叫托管代码。所谓托管&#xff0c;可以理解成委托别人管理&#xff0c;这个别人在.NET framework 里面就是CLR. 形象的比喻&#xff0c;托管解释就是不用你管,就象以前的托儿所 &#xff0c;由了托管后(托儿所),你的程序(Baby)…

Java关键字final、static使用总结

Java关键字final、static使用总结一、final 根据程序上下文环境&#xff0c;Java关键字final有“这是无法改变的”或者“终态的”含义&#xff0c;它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变&#xff1a;设计或效率。final类不能被继承&am…

上传文件最简单的

$FIEL[myfile][name]客户端文件的原名称 $FIEL[myfile][type]文件的mime类型$FIEL[myfile][size]文件的大小$FIEL[myfile][temp_name]储存的临时文件名$FIEL[myfile][error]文件上传错误代码0&#xff1a;文件上传成功1:超过文件的大小MAX_FILE_SIZE选项指定的值3&#xff1a;文…

MarshalByRefObject和Serializable

MarshalByRefObject和Serializable 转自&#xff1a;http://hi.baidu.com/smile8021/blog/item/f6b81e0aa870713db1351d82.html&#xff08;天天向上&#xff09; 最近在看web sevice 方面的东西&#xff0c;顺便看了下序列化&#xff0c;懂了不少啊 &#xff1a; 从MarshalBy…

深入理解Java接口

一、Java接口的基本内容 [1].Java编程语言中不支持多重继承(即Java中一个类不能有多于一个的直接父类)&#xff0c;但可以实现多个接口&#xff0c;这就间接地实现了多重继承。 [2].接口(Interface)将产生一个完全抽象的类&#xff0c;它是用来建立类与类之间的协议的&#x…

Exchange Server2010系列之十六:客户端访问方式

在给某国企邮件管理员进行培训时&#xff0c;很多朋友提出在OutLook里有些功能实现不了&#xff0c;如联系人同步、日历同步等。遇到这种情况可能是Exchange客户端访问方式造成的。在Exchange Server2010 中&#xff0c;客户端访问服务器角色支持 Outlook Web App 、 Microsoft…