信息化项目一般包括硬件设备、网络和软件系统三部分组成。国内知名的硬件设备厂商,例如浪潮、华为、联想等生产的设备质量较为稳定,一般不会存在严重的缺陷。中国移动、联通、电信三大网络服务商的网络通讯也比较可靠。实践表明,信息化建设主要的质量安全问题集中在软件系统开发环节,由于软件系统的特殊性和隐秘性,需求方很难发现存在的问题,验收移交后带来严重后果。中科软件测评(广州)有限公司质量负责人钟庆兰将软件系统的缺陷总结为以下四个方面:
1.软件功能与需求不匹配。
项目需求理解过程中,会出现开发人员需求理解与客户需求不一致、或测试人员与客户需求理解不一致,或者测试人员和开发人员的需求理解都与客户需求不一致等原因,产生的风险不仅影响整个项目的进度,严重情况下产生大量无效bug,导致软件系统质量验收不合格。总结为以下情况:
(1)存在未完成要求的开发功能和开发任务,软件功能不完善,不具备正常使用要求。就像汽车缺失车轮胎或者某些必须零件,导致这辆汽车无法正常使用。
图1 没有轮胎的汽车
(2)软件开发完成,功能完善但不够人性化,软件使用起来不友好。就像车有汽车,拖拉机等,拖拉机使用体验感受没有汽车的友好。
图2 轿车变拖拉机
(3)多余开发功能,就有多余代码的存在,会加大后期维护技术人员理解程序的难度,也会增加很多的安全风险,意外执行这些代码可能会导致系统严重故障等。就像摩托车后加上多余降落伞,不仅阻碍前行速度,而且增加了驾驶者的安全风险。
图3 长尾巴的摩托
2.软件开发方隐瞒危害不大的缺陷,导致后续系统维护和二次开发难度陡增。
在软件编码阶段,开发者根据软件系统详细设计方案中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。其中软件的开发过程中,可能会存在危害不大的缺陷。这些缺陷可能会造成界面不规范等问题。若开放商有意将
软件代码的辅助说明描述不清晰,隐瞒危害不大的缺陷、架构说明文档和数据字典框架说明等,后续维护和二次开发的技术人员看不懂代码或需花费很多时间理解代码,将导致后续系统维护和二次开发难以进行,难度陡增。
3.存在恶意代码。
恶意代码是不需要的文件或程序,它们可能会对计算机造成损害或破坏计算机上存储的数据。这些而已代码会主动的调用、损坏、窃取、监控计算机系统上的各类命令和数据资料,造成重大情报泄密或者损失。
4.软件存在安全漏洞。
一个软件系统可能存在接口漏洞,例如:暴露的网络通信端口,如FTP 21、SSH 22、Telent 23等端口;操作系统中某些命令;输入域:如输入恶性脚本、长字符串/超过数字边界造成缓冲区溢出等;代码中安全性问题,如SQL/XML注入式漏洞;子系统的接口、外部系统的参数调用、错误代码或返回值;不安全的数据存储或传递;错误的认证和会话管理;有问题的访问控制,权限分配有问题等等。这些入口很可能大开方便之门,导致整个信息系统安全性问题。
中科软件测评(广州)有限公司董事长王含博士介绍,国家财政部、国家发改委、北京市、上海市、广东省等中央单位和地方政府出台了信息化建设验收相关管理办法,将客观、公正、独立的第三方测评纳入到信息化项目验收环节中,第三方测评报告是项目验收的必要材料。中科软件测评(广州)有限公司是经国家实验室认可委员会认可的软件测评机构,具有通用软件、行业软件、工业软件、网络通信等测试能力,是华南地区第一家区块链平台软件测评机构,承担了国家电网、南方电网、北京市政府、301医院、中山大学、复旦大学等单位的信息化项目测评任务。
免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。