科研课题结题的第三方软件测试是以独立视角对软件成果的质量、创新点达成度与技术度进行符合性验证,而不是单纯的软件验收。
一、体系定位和创建原则
科研课题结题的第三方软件测试是以独立视角对软件成果的质量、创新点达成度和技术度进行符合性测试,而不是单纯的软件验收:
独立公正:机构和课题无利益关联,测试过程、数据、结果完全透明。
标准兼容:以 GB/T 25000.51(就绪可用软件质量要求)为主框架,兼容 GB/T 15532(软件测试规范),并融入科研特点。
创新导向:不只看有没有缺陷,更要测试创新点是不是实现、技术标准是不是达成。
过程和结果:文档规范、代码资产、测试过程、产品质量四维一体,结题可追溯。
二、四层递进模型
体系是一个质量-创新测试-技术-综合决定的四层递进模型。
第一层:质量
此层任何一条不满足,直接决定不通过,无法进入后续评分。具体否决项如下:
功能不可用:需求规格说明书中标明的功能,存在流程中断的1-2级缺陷,即否决。
高危安全漏洞:存在可被远程利用、获取系统控制权、造成数据泄露的高危漏洞且未完成修复。
数据严重失真:在标准测试数据集下,计算结果和理论值偏差超过任务书允许范围的200%。
测试阻断:系统无法正常部署、启动,或频繁崩溃,使测试无法连续执行。
第二层:创新测试
针对课题申报时的创新点和技术标准,测试其真实性和达成度,科研结题测试区别于普通软件测试的差别。
创新点实现评审:将任务书中的创新点逐条转化为可测试的场景。如果提出根据X算法,则需测试该算法是不是确实被系统调用,相比对照算法在标准上是不是有实质性提升。
技术标准标准测试:对任务书承诺的响应时间≤1s、识别准确率≥95%等定量标准,在统一软硬件环境下进行不少于30次重复测试,给出置信区间。
自主可控查验:检查模块的代码贡献率,排除将外购或开源组件包装为创新的情况,必要时进行代码相似度比对。
第三层:技术
功能适用性(权重30分)
功能完整性:测试用例对需求规格的包括率须达到100%,按通过的用例比例得分。
功能正确性:采用缺陷扣分制。致命缺陷每出现1个扣15分,严重缺陷每1个扣8分,一般缺陷每1个扣3分,扣完为止。
性能效率(权重15分)
通过负载或压力测试,考察响应时间、吞吐量、资源占用率等。
和任务书标准对比:完全达到得满分;偏差每超过10%扣2分,直至扣完。
安全性(权重15分)
通过应用安全扫描和渗透测试考虑。
按漏洞等级和数量扣分。注意,存在高危漏洞已在否决层处理,此处无高危,但中危漏洞仍会扣分:每出现一个中危漏洞扣5分,低危扣1分。
可靠性(权重10分)
进行规定时长(如7×24小时)的长稳测试,测量平均无故障时间和故障恢复时间。
符合任务书标准得满分,否则按偏差线性扣分。
易用性和兼容性(权重10分)
易用性考察用户操作途径长度、常见错误防御等,每发现一处交互缺陷扣1分。
兼容性考察多浏览器、多操作系统支持度,每出现一个不兼容平台扣2分。
维护性和可移植性(权重5分)
考虑代码模块耦合度、安装部署的自动化程度、二次开发接口规范性。
以静态分析度量及专家评价综合给分。
技术文档质量(权重15分)
须提交需求文档、设计文档、测试报告、用户手册、部署手册五类文档。
缺失一类扣3分,文档内容和软件实际不符每处扣1分,直至扣完。
将各方面得分按权重折算后相加,得到技术就绪度总分。
第四层:综合决定
结合技术就绪度总分和创新点达成情况,给出结题意见。等级条件如下:
优秀:总分不低于90分,创新点全部实现且有确定佐证,技术标准超额达成,无任何严重缺陷。
良好:总分不低于80分,创新点基本实现,技术标准全部达标,仅有少量一般缺陷。
通过:总分不低于60分,主要创新点有实现,技术标准重要项达标,无未关闭的严重缺陷。
不通过:触碰任一否决项,或总分低于60分,或创新点经检查未实现。
三、标准化流程
课题委托
课题组提交任务书、需求、设计、用户手册、源码(可选)等完整资料包,第三方机构签署保密协议。
标准体系定制
双方根据任务书,从通用模型中选取并实例化具体的测试标准和阈值,形成本次课题专用的《测试考虑大纲》,经签字确定后作为唯一根据。
静态和文档审查
先审查文档完整性和一致性,再利用工具进行代码静态扫描,提前发现编码规范问题和潜在缺陷,输出静态分析问题清单。
动态测试执行
在独立、洁净的测试环境中部署软件,依大纲执行功能、性能、安全、可靠性等全部动态测试,全过程记录并保留录像和日志。
问题流程和回归
出具问题报告,课题组完成整改后,对修改部分及受影响区域进行回归测试,直至所有否决项和严重问题关闭,并测试一般问题修改无新增缺陷。
报告生成和结果输出
出具《科研课题结题软件第三方测试考虑报告》,内容须包含评分、等级、创新点测试证据、技术标准原始测试数据和决定,作为课题验收的正式文件。
四、保障支撑体系
机构准入
承担测试的第三方应有 CMA 或 CNAS 软件测试资质,或得到省级以上科技主管部门认可,测试人员须持有软件评测师、ISTQB 等相关资质证书。
环境和工具
配置独立、受控的测试环境,使用行业认可的测试工具(性能测试如 JMeter/LoadRunner,安全测试如 Burp Suite/AppScan,代码扫描如 SonarQube 等),并在报告中确定声明工具版本和配置参数。
数据和资产保护
测试过程中涉及的样本、源码、数据全部在受控网络内处理,结题后按约定归档或彻底销毁,严格杜绝知识产权泄密风险。
不断迭代
每年吸纳不同学科课题的测试经验,对标准权重、否决项阈值、创新测试方法进行回顾和修订,不断保持考虑体系的科学性和先进性。