1、软件验收标准探讨摘要:现在,软件产品在验收过程中,常常会因多种原因发生纠纷,对此,提出了一套可参考验收标准,对软件开发协议签署和验收工作含有指导意义。关键词: 软件验收; 严重性等级; 验收标准 中图分类号: TP ;311.5文件标识码 :A文章编号:1672-5468()04-0010-04一、引言现在,中国软件产品在验收过程中发生多种纠纷情况层出不穷,甚至还有对簿公堂情况。在其中一个软件采购协议纠纷中,采购协议验收标准一栏描述为(供需双方根据中标投标文件中)验收标准或双方认可标准分别对平台行验收。而追溯到投标文件中系统验收条目,只列出了验收时间(验收项目(验收工作程序,而没有列出相关验收
2、标准。业界全部存在一个共识一个软件存在缺点错误是不可避免。所以,软件在提交验收时,往往还会存在部分错误,假如只是比较少(且危害性不大错误,开发方在更正以后,用户通常全部会接收。那么,到底软件错误数量是多少,其危害程度又怎样,才是用户不能接收,或开发方也认可是不能接收呢现在中国还没有一个统一标准,在开发协议中通常也没有列明这些条款。这么,肯定会在验收时,发生相互扯皮(推卸责任事情。而且,中国大部分软件开发商还没有建立起一支训练有素测试队伍,对测试也不重视,往往是开发人员自己进行设计(编码后,再进行简单测试就提交给用户,将实际测试工作交给了用户去做。而开发方在提交后六个月内,通常会留下1N2个程序
3、员去专门更改用户方发觉多种错误。通常来说,一个软件,尤其是业务类软件通常会包含到各个部门,其工作人员只会对自己负责相关业务软件模块感爱好,而且往往只对试用过程中发生业务种类感爱好,通常不会主动地测试软件是否能在多种情况下完成任务。所以即使是在试用六个月后,软件仍会残留错误,有时会愈加激发用户和软件开发商之间矛盾。现在,中国软件验收没有可参考强制性标准,就软件测试和评价来说,参考标准是GB/T17544和GB/T16260,它们全部是推荐性标准,且全部是定性而非定量标准,这么,对于软件验收来说,存在很大分歧和不确定性为了改变这种情况,愈加好地规范软件开发和验收工作,中国赛宝试验室软件评测中心和广
4、东省信息中心合作,主动开展第三方验收测试工作。为此,在软件开发协议签署阶段就提出软件验收项目和验收经过标准意见;在软件需求评审阶段,仔细审阅软件需求规格说明书,指出不利于测试和可能存在歧义描述;在开发方开发完软件并经过开发方内部仔细测试后,对完成软件进行第三方验收测试,提供完整错误汇报,提交给用户方,由用户方依据之前签署开发协议中对应验收标准判定是否进行验收。二、验收项目和验收标准2.1验收项目1)功效项测试对软件需求规格说明书中全部功效项进行测试。b)业务步骤测试对软件项目标经典业务步骤进行测试。c)容错测试容错测试检验内容包含:1)软件对用户常见误操作是否能进行提醒;2)软件对用户操作错误
5、和软件错误,是否有正确、清楚提醒;3)软件对关键数据删除是否有警告和确定;4)软件是否能判定数据有效性,屏蔽用户错误输入,识别非法值,并有对应错误提醒。d)安全性测试安全性测试检验内容包含:1)软件中密钥是否以密文方法存放;2)软件是否有留痕功效,即是否保留有用户操作日志;3)软件中多种用户权限分配是否合理。e)性能测试对软件需求规格说明书中明确软件性能进行测试。测试准则是要满足规格明书中各项性能指标。f)易用性测试易用性测试内容包含:1)软件用户界面是否友好,是否出现中英文混杂界面;2)软件中提醒信息是否清楚、易了解,是否存在原始英文提醒;3)软件中各个模块界面风格是否一致;4)软件中查询结
6、果输出方法是否比较直观、合理。g)适应性测试参考用户软、硬件使用环境和需求规格说明书中要求,列出开发软件需要满足软、硬件环境。对每个环境进行测试。h)文档测试用户文档包含:安装手册、操作手册和维护手册。对用户文档测试内容包含:1)操作、维护文档是否齐全、是否包含产品使用所需信息和全部功效模块;2)用户文档描述信息是否正确,是否没有歧义和错误表示;3)户文档是否轻易了解,是否经过使用合适术语、图形表示、具体解释来表示;4)用户文档对关键功效和关键操作是否提供给用实例;5)用户文档是否有具体目录表和索引表。i)用户有尤其要求测试。2.2验收标准2.2.1软件错误严重性等级如表1、2所表示2.2.2
7、验收标准1)测试用例不经过数百分比3%;2)不存在错误等级为1错误;3)不存在错误等级为2错误;4)错误等级为3错误数量10;5)全部提交错误全部已得到更正表1严重性等级定义表严重性等级说明1不能实施正常功效或关键功效,或危及人身安全2严重地影响系统要求或基础功效实现,且没有措施处理3严重地影响系统要求或基础功效实现,但存在合理处理措施4使操作者不方便或碰到麻烦,但不影响实施正常功效或关键功效5其它错误表2错误和严重性等级对应测试特征错误严重性等级功效没有实现应有功效1没有实现部分功效,而且没有替换方案2没有实现部分功效,但有替换方案3业务业务业务步骤存在重大隐患1业务步骤衔接错误2性能性能不
8、能满足性能指标2容错由误操作或错误输入等造成死机或系统自动退出1对误操作、错误输入没有提醒3没有识别非法值和错误输入,造成错误数据存放到数据库中3安全性密钥以明文方法存放2没有留痕功效2多种用户权限分配不合理2易用界面不友好,出现中英文夹杂界面4提醒不清楚,出现原始英文提醒4界面风格不一致4查询结果输出方法不直观4适应在特定软、硬件环境下,不能实现应有功效1在特定软、硬件环境下,不能实现部分功效,而且没有替换方案2在特定软、硬件环境下,不能实现部分功效,但有合理替换方案3文档文档错误52.3验收标准具体说明验收项目标划分参考GB/T16260标准。在该标准中,将软件质量特征分为6大特征、21个
9、子特征,而对于具体软件,并非全部要进行这21个特征测试和评价。本文选择是最通用子特征部分,当然,针对多种不一样软件,能够对验收项目进行剪裁或扩充。鉴于现在软件验收没有相关国家强制性标准情况,我们自行制订了上述验收标准。首先,在表1中定义了软件错误严重性等级,将错误分为15个等级,等级1为最严重错误,而等级5为最轻微错误。a)1级错误描述这一等级错误通常包含以下内容:没有实现或错误地实现关键功效;软件在操作过程中因为软件本身原因自动退出系统或出现死机情况;软件在操作过程中因为软件本身原因对系统或数据造成破坏;特殊软件在操作过程中可能危及人身安全等。b)2级错误描述这一等级错误通常包含:没有实现基
10、础功效,而且不存在替换措施;没有实现关键功效中部分功效,而且不存在替换措施;没有满足系统性能要求。c)3级错误描述这一级错误是和第2等级错误相对应,在第2级错误中,不存在替换方法,而第3级错误则存在替换方法。d)4级错误描述这一等级错误通常为易用性方面错误。e)5级错误描述通常为文档方面错误,如安装手册、操作手册、维护手册中描述错误。其次对发觉每一个错误全部要确定对应严重性等级,如表2中说明。最终,需要制订验收标准,即每一等级错误量可接收范围。通常来说,不许可存在1级和2级错误,而3级错误数量则可由用户方和开发方依据软件规模和复杂程度进行约定,并在软件开发协议中明确地列出。在软件验收测试中,测
11、试依据包含软件投标文件、开发协议、需求规格说明书,同时还包含特定软件相关行业标准(这些行业标准应在开发协议中明示出来)。在进行第三方验收测试后,软件评测中心将发觉全部错误进行总结和归纳,并提交完整错误汇报,在错误汇报中包含每一等级错误数量和错误清单(全部错误全部需经过用户方和开发方确实定)。用户方依据错误汇报中每一等级错误数量和错误清单和软件开发协议中验收标准进行对照,如错误等级和数量在协议可接收范围内,用户方认为软件能够验收,但要求开发方对错误汇报中全部错误进行整改,并提给软件评测中心进行回归测试,确定错误汇报中全部错误全部更正方可;如错误等级和数量在协议可接收范围外,用户方认为软件不可验收,要求开发方在要求时间内全方面整改软件,提交给软件评测中心再次进行完整验收测试。结束语:实践证实,上述件验收标准是可行,对软件开发协议签署和验收工作有一定指导作用,但还比较粗略,需要在实践中不停完善。参考文件:GB/T 17544-1998信息技术-软件包-质量要求和测试;GB/T 16260-1996 信息技术-软件产品评价-质量特征及其使用指南。