《软件验收标准探讨.pdf》由会员分享,可在线阅读,更多相关《软件验收标准探讨.pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件验收标准探讨宾建伟(信息产业部电子第五研究所,广东广州510610)摘要!目前,软件产品在验收过程中,常常会因各种原因发生纠纷,对此,提出了一套可参考的验收标准,对软件开发合同的签订和验收工作具有指导意义。关键词!软件验收;严重性等级;验收标准中图分类号!TP 311.5文献标识码!A文章编号!1672-5468(2005)04-0010-04!#$%&(&)*+,$-.)+)/$+/-BIN Jian-wei(CEPREI,Guang?Au 510610,CinaB012$-)$A CeDeCenEe ECiFeCia AD GADFwaCe aEEeHFanEe FaF GHeEiDi
2、EaIIJ KeLeIAHeK DAC LaCiAuGenFangIeMenFG in GADFwaCe aEEeHFanEe waG HCeGenFeK AD eIH Fe EAnFCaEFing anK aEEeHFanEe ADGADFwaCe.3+4%52GADFwaCe aEEeHFanEe;GeLeCiFJ IeLeI;aEEeHFanEe ECiFeCiAn电 子 产 品 可 靠 性 与 环 境 试 验!#$%&(#)%&*+,$%!(-.($/-*!0(#&1!$-$!2$(3软件可靠性与评测技术1引言目前,国内软件产品在验收过程中发生各种纠纷的情况层出不穷,甚至还有对簿公堂的
3、情况。在其中一个软件采购合同的纠纷中,采购合同的验收标准一栏描述为 供(需双方按照中标的投标文件中的)验收标准*或双方认可的标准分别对平台软件进行验收。而追溯到投标文件中的)系统验收*条目,只列出了验收时间(验收项目(验收工作程序,而没有列出相关的验收标准。业界都存在一种共识 一个软件存在缺陷或错误是不可避免的。因此,软件在提交验收时,往往还会存在一些错误,如果只是比较少的(且危害性不大的错误,开发方在更正之后,用户一般都会接受。那么,究竟软件的错误数量是多少,其危害的程度又如何,才是用户不能接受,或者开发方也承认是不能接受的呢+目前国内还没有一个统一的标准,在开发合同中一般也没有列明这些条款
4、。这样,必然会在验收时,发生相互扯皮(推卸责任的事情。而且,国内大部分的软件开发商还没有建立起一支训练有素的测试队伍,对测试也不重视,往往是开发人员自己进行设计(编码后,再进行简单的测试就提交给用户,将实际的测试工作交给了用户去做。而开发方在提交后的半年内,通常会留下1N2个程序员去专门更改用户方发现的各种错误。一般来说,一个软件,特别是业务类的软件通常会涉及到各个部门,其工作人员只会对自己负责的相关业务的软件模块感兴趣,并且往往只对试用过程中发生的业务种类感兴趣,一收稿日期!2004-07-13修回日期!2005-07-04作者简介!宾建伟(1974-),女,湖南衡山人,信息产业部电子第五研
5、究所软件评测中心工程师,主要从事软件测试工作。455$年%月 第&期Aug.2005 NA.4!#$%$($)*)#+!$,-.#$/$,0-#$(!#$%$($)*)#+!$,-.#$/$,0-#$第4期般不会主动地测试软件是否能在各种情况下完成任务。所以即使是在试用半年后,软件仍会残留错误,有时会更加激发用户和软件开发商之间的矛盾。目前,国内软件的验收没有可参照的强制性标准,就软件测试和评价来说,参照的标准是GB/T 17544和GB/T 16260,它们都是推荐性标准,且都是定性而非定量的标准,这样,对于软件的验收来说,存在很大的分歧和不确定性。为了改变这种状况,更好地规范软件的
6、开发和验收工作,中国赛宝试验室软件评测中心和广东省信息中心合作,积极开展第三方验收测试工作。为此,在软件开发合同的签订阶段就提出软件验收项目和验收通过标准的意见;在软件的需求评审阶段,仔细审阅软件的需求规格说明书,指出不利于测试和可能存在歧义的描述;在开发方开发完软件并经过开发方内部仔细的测试后,对完成的软件进行第三方的验收测试,提供完整的错误报告,提交给用户方,由用户方根据之前签订的开发合同中相应的验收标准判断是否进行验收。2验收项目和验收标准2.1验收项目a)功能项测试对软件需求规格说明书中的所有功能项进行测试。b)业务流程测试对软件项目的典型业务流程进行测试。c)容错测试容错测试的检查内
7、容包括:1)软件对用户常见的误操作是否能进行提示;2)软件对用户的的操作错误和软件错误,是否有准确、清晰的提示;3)软件对重要数据的删除是否有警告和确认提示;4)软件是否能判断数据的有效性,屏蔽用户的错误输入,识别非法值,并有相应的错误提示。d)安全性测试安全性测试的检查内容包括:1)软件中的密钥是否以密文方式存储;2)软件是否有留痕功能,即是否保存有用户的操作日志;3)软件中各种用户的权限分配是否合理。e)性能测试对软件需求规格说明书中明确的软件性能进行测试。测试的准则是要满足规格说明书中的各项性能指标。f)易用性测试易用性测试的内容包括:1)软件的用户界面是否友好,是否出现中英文混杂的界面
8、;2)软件中的提示信息是否清楚、易理解,是否存在原始的英文提示;3)软件中各个模块的界面风格是否一致;4)软件中的查询结果的输出方式是否比较直观、合理。g)适应性测试参照用户的软、硬件使用环境和需求规格说明书中的规定,列出开发的软件需要满足的软、硬件环境。对每个环境进行测试。h)文档测试用户文档包括:安装手册、操作手册和维护手册。对用户文档测试的内容包括:1)操作、维护文档是否齐全、是否包含产品使用所需的信息和所有的功能模块;2)用户文档描述的信息是否正确,是否没有歧义和错误的表达;3)户文档是否容易理解,是否通过使用适当的术语、图形表示、详细的解释来表达;4)用户文档对主要功能和关键操作是否
9、提供应用实例;5)用户文档是否有详细的目录表和索引表。i)用户有特别要求的测试。2.2验收标准2.2.1软件错误的严重性等级(如表1、2所示)2.2.2验收标准1)测试用例不通过数的比例 3%;2)不存在错误等级为1的错误;3)不存在错误等级为2的错误;4)错误等级为3的错误数量 10;5)所有提交的错误都已得到更正。宾建伟:软件验收标准探讨11!#$%$($)*)#+!$,-.#$/$,0-#$电子产品可靠性与环境试验2005年2.3验收标准的详细说明验收项目的划分参照GB/T 16260标准。在该标准中,将软件的质量特性分为6大特性、21个子特性,而对于具体的软件,并非都要进行这21个
10、特性的测试和评价。本文选取的是最通用的子特性部分,当然,针对各种不同的软件,可以对验收项目进行剪裁或扩充。鉴于目前软件验收没有相关的国家强制性标准的情况,我们自行制定了上述验收标准。首先,在表1中定义了软件错误的严重性等级,将错误分为15个等级,等级1为最严重的错误,而等级5为最轻微的错误。a)1级错误的描述这一级别的错误一般包括以下内容:没有实现或错误地实现重要的功能;软件在操作过程中由于软件自身的原因自动退出系统或出现死机的情况;软件在操作过程中由于软件自身的原因对系统或数据造成破坏;特殊软件在操作过程中可能危及人身安全等。b)2级错误的描述这一级别的错误一般包括:没有实现基本功能,并且不
11、存在替代办法;没有实现重要功能中的部分功能,并且不存在替代办法;没有满足系统的性能要求。c)3级错误的描述这一级的错误是与第2级别的错误相对应的,在第2级错误中,不存在替代方法,而第3级错误则存在替代方法。d)4级错误的描述这一级别的错误通常为易用性方面的错误。e)5级错误的描述通常为文档方面的错误,如安装手册、操作手册、维护手册中的描述错误。其次,对发现的每一个错误都要确定相应的严重性等级,如表2中的说明。最后,需要制定验收标准,即每一级别的错误量的可接受范围。一般来说,不允许存在1级和2级错误,而3级错误的数量则可由用户方和开发方根据软件的规模和复杂程度进行商定,并在软件开发合同中明确地列
12、出。在软件验收测试中,测试的依据包括软件的投标文件、开发合同、需求规格说明书,同时还包括表2错误与严重性等级对应表严重性等级说明1不能执行正常功能或重要功能,或者危及人身安全。2严重地影响系统要求或基本功能的实现,且没有办法解决。3严重地影响系统要求或基本功能的实现,但存在合理的解决办法。4使操作者不方便或遇到麻烦,但不影响执行正常功能或重要功能。5其它错误。测试特性错误严重性等级功能没有实现应有的功能;1没有实现部分功能,并且没有替代方案;2没有实现部分功能,但有替代方案。3业务业务流程存在重大的隐患;1业务流程衔接错误。2性能不能满足性能指标。2容错由误操作或错误输入等导致死机或系统自动退
13、出;1对误操作、错误输入没有提示;3没有识别非法值和错误输入,导致错误数据存储到数据库中。3安全性密钥以明文方式存储;2没有留痕功能;2各种用户的权限分配不合理。2易用界面不友好,出现中英文夹杂的界面;4提示不清楚,出现原始的英文提示;4界面风格不一致;4查询结果输出方式不直观。4适应在特定的软、硬件环境下,不能实现应有的功能;1在特定的软、硬件环境下,不能实现部分功能,并且没有替代方案;2在特定的软、硬件环境下,不能实现部分功能,但有合理的替代方案。3文档文档错误。5表1严重性等级定义表12!#$%$($)*)#+!$,-.#$/$,0-#$第4期特定软件的相关行业标准(这些行业标准应在
14、开发合同中明示出来)。在进行第三方的验收测试后,软件评测中心将发现的所有错误进行总结和归纳,并提交完整的错误报告,在错误报告中包括每一级别的错误数量和错误清单(所有的错误都需经过用户方和开发方的确认)。用户方根据错误报告中每一级别的错误数量和错误清单与软件开发合同中的验收标准进行对照,如错误的级别和数量在合同可接受的范围内,用户方认为软件可以验收,但要求开发方对错误报告中的所有错误进行整改,并提交给软件评测中心进行回归测试,确认错误报告中的所有错误全部改正方可;如错误的级别和数量在合同可接受的范围外,用户方认为软件不可验收,要求开发方在规定的时间内全面整改软件,提交给软件评测中心再次进行完整的
15、验收测试。结束语实践证明,上述的软件验收标准是可行的,对软件开发合同的签订和验收工作有一定的指导作用,但还比较粗略,需要在实践中不断完善。参考文献!#$%&()$*+44,$-.,信息技术-软件包-质量要求和测试#/%0#1%&()$2123,$-2,信息技术-软件产品评价-质量特性及其使用指南#/%4针对美国企业在欧洲和中国面临的 标准壁垒 问题,133+年3+月$日,美国众议院科学委员会环境科技和标准分会在华盛顿组织召开了一场听证会,会议主题为 中国、欧洲启动标准壁垒,美国该如何应对?会议对目前美国产业界在对外贸易中存在的标准壁垒 问题进行了详细的讨论。会议提出:技术标准和技术规范与.3
16、5的全球贸易额直接相关,对美国公司而言至关重要,而中国、欧洲等国家和地区开始利用 标准壁垒 的行为对美国的 相 关 产 业 造 成 了 威 胁。中 国 的)6,/7689、/7689、9:/;视频编码标准/;闪联标准?=6;射频识别标准等都被此次会议贴上了 标准壁垒 的标签。会议代表还建议美国政府采取相关的协调行动。美国人认为,只有几家中国公司拥有无线局域 网 加 密 标 准(9A=)的 授 权,任 何 想 生 产9A=设备的国外公司都必须与这些公司合作,这让他们最难以接受。9A=争端反映了美国产业界面临的、来自中国和欧洲的挑战。对于9A=标准,美国政府已经通过相关的渠道迫使中国政府作出了让步
17、。前不久召开的国际标准化组织法兰克福会议指出:9A=进入国际标准快速通道的道路受阻后,中国正计划为本土市场单独制造9A=产品,希望市场力量和市场规模可以让该标准被广泛接受。尽管面对许多压力,中国仍将继续在国内推行该标准,同时没有放弃通过国际标准化组织让该标准成为国际标准的努力。据悉,美国国家标准学会(9B/=)会同美国商务部、独立标准公会等相关机构正在制定美国的标准战略,目前已经形成草案,该草案指出,政府和产业界应该更紧密地合作,保证战略的胜利实施;对如何应对 标准壁垒 问题也作了详细的布置;同时,建议联邦政府与其贸易伙伴协作,为战略实施提供良好的通道。(本刊讯)!信 息 与 动 态美国欲遏制!#$中国标准在美国推行宾建伟!软件验收标准探讨13