聚焦民生、强化公共服务是十二五期间政府重点工作内容。随着政府职能的转变,开展政府公共服务创新,强化“公共服务、社会管理”的职能成为电子政务发展的目标。与此同时,伴随政府服务功能的不断创新,信息系统的复杂程度和实施难度肯定会不断增加,信息安全也就成为焦点问题,而这一切都对电子政务如何做好质量管理,确保IT系统安全、稳定、高效运维提出了更高要求。记者日前就电子政务系统如何做好质量管理采访了某政府部门信息化建设负责人和我省唯一一家信息系统综合测评机构山东省软件评测中心负责人韩庆良副主任。
该政府部门是某市政府综合监督食品、保健品、化妆品、药品安全管理的直属机构。主要负责以上行业法律、法规的贯彻执行,地方性法规、规章的起草,以及食品、药品、保健品行业的监督管理工作。据该局信息化建设负责人讲,他们局的业务专业性强,流程复杂。他们对信息化建设的质量非常重视,从项目立项、建设方案评审到项目招投标、方案设计、过程监控,再到项目试运行、验收,每一步都邀请相关专家进行论证,并邀请IT监理公司进行过程控制,严守质量关,努力保证每一环节都是采用最优、最安全方案,每走一小步都是如履薄冰,小心谨慎。但实际结果却总是很受伤,或总会有这样那样的遗留问题,不能尽如人意。
如此前建设的“综合业务管理信息系统”,该系统由国内知名软件企业承担建设。项目建设方案通过了专家评审,并邀请监理进行项目管控。但项目验收阶段在请第三方软件测试机构做验收测试时还是测出了许多问题,两轮回归测试后测出问题仍多达近300个。其中高风险问题约占46%,此类问题必须修改,否则系统无法正常使用。更让人悲观的是,测试所发现的一些严重问题,修改起来成本很高,如该系统中许多功能响应时间过长,要对系统架构进行调整。而架构的调整,会影响到很多功能模块。软件开发企业无力承受修改所带来的成本支出。
在信息化建设过程中如此谨慎,请了专家评审、监理控制、验收测试,但信息系统的质量还是让人很“受伤”,为什么?
该单位信息化负责人在分析总结该项目的建设经验时,归纳出了如下五方面的原因:
一、专家评审不够充分。邀请专家评审,一般也就是一天,最多两天的时间。即使是资深专家,也很难在如此短的时间里对整个项目的所有细节面面俱到。再者,专家一般来自各行各业,隔行如隔山,很多情况下专家组只是从宏观上对项目的可行性进行评审,避免一些方向性的错误,无法发现一些具体实现细节方面的问题。
二、IT监理人员有心无力。“IT监理”的概念来自于建筑工程监理。强调的是“三控制、两管理、一协调”,既通过成本控制、进度控制、质量控制,文件管理、合同管理,甲乙方关系协调,确保项目在规定的时间内完成,并实现项目建设的目标。鉴于软件系统本身的特殊性,产品内部不可见,难以制定具体的、量化的质量标准。“监理人员”即使采用传统的“站场监理”方式,让监理工程师现场全程监督,也难以了解软件开发工程师的工作内容和细节。再者,一般IT监理取费较低,监理公司不可能投入过多的人力对项目的具体实现进行测试、评审,即使他们有这个意愿,往往又因为专业技能的欠缺而无法完成。所以监理人员通常只是通过工作计划、工作报告、过程文档等角度来审核,达到控制软件项目目的,无法深入软件系统内部,也就无法真正保障软件质量。
三、软件开发团队管理不规范。所开发的软件业务复杂、规模大,建设周期长,集成度高,对软件开发团队提出了较高要求。而软件开发商对项目难度预估不够,投入的人员应对该复杂项目缺乏经验和能力。同时在项目开始实施后,由于我们缺乏软件工程经验,所有的事务都由开发商完成,由于业务理解、沟通等问题,后期需求变更较多,为整个项目开发带来了较多风险。同时,开发人员也没有及时配合进行修改,很多问题到验收测试时才发现。整个开发过程中,开发团队中专职测试人员很少,很多测试工作交给业务人员来完成,造成软件测试很不充分。总之,软件开发团队的不规范,是软件质量存在问题的重要原因。
四、我们建设单位在旁边干着急。我信息中心总共只有3个人,技术力量比较薄弱。在软件项目的整体规划、技术方案和项目选型方面依靠自身的力量难以做出有效决策,项目过程中的质量保障更是无从谈起。
五、验收测试发现的问题很多已无法弥补。验收测试在一定程度上保证了软件的质量,但是该阶段的测试在一定意义上说近乎于亡羊补牢,对于一些缺陷问题可以修修补补,进行更正。但有些架构设计上的缺陷问题已经难以更改。如软件性能问题。
信息系统尤其是软件系统的质量就这么难以保障吗?难道我们就无能为力?带着这样的疑问,我们采访了为该项目提供验收测试的山东软件评测中心副主任韩庆良。山东省软件评测中心是山东省经济和信息化委员会授权山东省计算中心成立的一个软件质量服务机构,主要为软件企业、政府、企事业单位等提供软件质量相关的咨询、检测等服务。
该中心的韩庆良副主任如是说:软件系统的质量状况就像一个黑盒子,即使系统的开发者和使用者也无法清楚地了解系统的内部质量。只能通过测试人员运用专业的测试工具和测试技术,才能帮助人们了解系统质量是否能够满足当前上线的需要。而如何充分保障软件系统质量,需要在软件研发过程的早期就引入测试、质量控制,才可以减少后期的问题,才可以防患于未然,从而降低后期软件修改和维护成本。软件生命周期是一个包括项目规划、需求分析、软件设计、系统集成、软件测试、系统验收及运行维护几大阶段的漫长过程,其质量保障是一个系统工程。山东省软件评测中心提出了一个“全程软件质量保障”的解决方案,针对软件生命周期的不同阶段及其特点,分别在规划、实施、交付、运维等不同阶段计划并实施一系列质量管控活动,对软件产品的开发过程和交付成果进行质量保证和质量控制。通过软件开发过程中引入第三方质量保障单位,将完整有效的质量控制手段灌装到软件工程的各个阶段,从而将软件开发过程透明化、数字化,软件质量度量才更有依据、更加可信,项目的有关决策才更加客观、合理。从而保障项目的顺利成功。据韩主任介绍,引入第三方进行软件开发质量控制的做法,在美国等信息产业发达国家,已经得到很好地应用。
采访的最后,某市局信息化负责人表示,为充分保障软件(电子政务)项目建设的质量,非常必要在软件项目建设初期就引入独立的第三方质量保障服务机构,由他们独立担负软件开发过程中的质量保证和软件测试工作。他们独立于软件开发企业之外,与软件开发企业构成对立、协同的关系,一方负责开发,一方负责测试,相互监督,相互制约,相互促进,共同完成项目的建设工作,从而可以保障软件项目的进度和质量,从而为电子政务保驾护航,充分提高政府信息化建设投资绩效。