医院信息系统再工程实践探讨
2013-09-12任凯江苏省肿瘤医院南京210009
任凯 江苏省肿瘤医院 (南京 210009)
0.引言
医院信息系统(HIS,Hospital Information System)自上世纪90年代末开始正式在国内各大医院启用,至今已摸索运行了十多年。我院于2000年3月经过招标,选择一家当时公司规模较大、用户较多的专业开发HIS的厂商,2007年由于该公司资产重组后经营理念发生变化,对软件开发部门投入逐步减少,开发人员相继离职,几个核心软件工程师另立门户,成立了新的软件公司,导致一些用户陆续更换HIS。
为此,医院相关部门对是否更换HIS进行调研和论证。经过反复讨论,大家认为,我院是一所三级甲等肿瘤专科医院,复查病人比例较高,如果将信息系统推倒重来,七年来的数据无法导入新系统,将会给医院造成较大的信息资源浪费;同时,系统运行正常,各科室的使用人员已熟练掌握了现有系统的操作,如果更换新软件,从购买到培训再到使用将投入大量人才物力和时间,将给医院造成较大的经济损失。最后决定不换HIS,与新公司签订维保协议,走引进吸收、自主创新之路。
1.软件再工程
如何保持软件的生命力,是软件工程界经常 思考的问题。20世纪90年代美国科学家将软件再工程理论引入软件工程方法学,所谓软件再工程是对一次工程后的成品软件进行再次开发,它面对的是既存软件,即从既存软件开发出新软件的过程。
软件再工程是对既存对象系统进行调查,并将其重构为新形式代码的开发过程,最大限度地重用既存系统的各种资源是再工程的最重要特点之一。再工程主要分三个阶段,即再分析、再编码和再测试。
1.1 再分析
再分析阶段的主要任务是对既存系统的规模、体系结构、外部功能、内部算法等进行调查分析,这一阶段最直接的目的就是调查和预测工程涉及的范围。再工程分析者最终提出的重用范围和重用策略将成为再工程成败的关键因素。
1.2 再编码
根据再分析阶段做成再工程设计书,再编码过程将在系统整体再分析基础上对代码做进一步分析,产生编码设计书。
1.3 再测试
如果能够重用原有的测试用例及运行结果,将能大大降低再工程成本。对于重用部分,特别是可重用的局部系统,可以免测试,这也是重用技术被高度评价的关键原因之一。
2.系统升级改造
随着医院对信息系统的依赖和需求越来越高,从2008年开始,我院着手对现有的信息系统进行升级改造。原HIS系统是由Visual FoxPro(简称VFP)开发,VFP是桌面型数据库管理开发工具,控件贫乏简单,因此程序的界面相当单调,不够美观,另外,VFP无法胜任系统级开发与大型数据库开发的能力。现在,VFP属于非主流软件开发工具,熟练掌握该工具的工程师越来越少,为今后的系统维护工作带来隐患。
通过调研,我们选择了目前使用较广泛的开发工具——C#,它是一种精确、简单、类型安全、面向对象的语言,C#基于C语言和Microsoft.NET平台开发,它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,主要应用在网络编程、数据库和窗体编程等领域。
表1. 医院信息系统再工程项目各阶段的重用率
我们将既存HIS系统划分成界面、逻辑、数据三个层次,每个层次的再工程采用不同的策略以实现最大程度重用的重构方法。再工程项目各阶段的重用率见表1。
2.1 界面重用策略
重新开发界面看上去没有重用既存界面代码,其实不然,新软件的界面设计完全重用了原来的模式,只是做了一些优化,不仅节省设计时间,而且操作员可轻易掌握。
2.2 逻辑层封装原则
通过对逻辑层的分解可以得到可重用和不可重用的两部分代码。对可重用部分可直接使用,对于不可重用部分则应尽量通过各种封装技术按统一标准将其改造成可重用构件。
2.3 数据层重用策略
数据层的重用率最高的。逻辑和数据休戚相关,如果改动数据库,逻辑势必不能正常运行,对逻辑部分的重用也就无从谈起。如果非改不可的话,也要以保证最大限度的重用为原则,做到只增加数据表或表字段而不做删除工作,以保证数据的完整性。
四年来,医院信息系统的升级改造经历了从无到有、从简单到复杂、从粗放到精细的过程, 系统模块不断完善,见表2、表3。
表2. 系统升级后特征表
表3. 系统模块升级后情况
3.总结
3.1 培养软件工程师至关重要
医院信息系统建设是一个长期的系统工程,不可能一劳永逸,后期维护工作纷繁复杂,各部门需求永无止境,如果仅靠厂家的力量是不可能实现快捷优质的技术服务、不可能提高各部门对信息科的满意度。为了保持信息系统可持续发展,更好地为临床一线提供优质服务,多年来,培养软件开发人员成了我院信息科的重点工作之一,此次医院信息系统再工程的顺利实施,信息科的软件工程师起到了关键作用。
3.2 系统过渡平稳
软件再工程是在原系统的基础上再次开发,由于服务器端数据库基本保持不变,客户端新旧程序可以并行,完全不影响医院正常工作流程;同时,新程序和旧程序的操作局面基本一致,操作人员无须再次培训即可熟练使用。
3.3 更换信息系统要慎重
每家医院都希望拥有一套好用、易用、耐用和高效的信息系统,通过与兄弟医院信息科的同行交流,了解到真正对HIS使用满意的非常少,最不满意的是服务跟不上,系统修改缓慢,影响信息化进程。因为对HIS不满意,不少医院更换了信息系统,省内有家医院十年间更换了四家HIS厂商,仍然不满意。可以说,轻易更换信息系统并非上策。
总之,充分利用已有的资源,才是最明智、最经济的做法,但在实际运作时,许多人会被所谓更具创造性的新东西所吸引,而不顾及是否有浪费的行为。实际上,越是庞大、悠久的系统,沉积的历史信息越丰富,越不能淘汰,继承过去是软件的立身之本,软件不应像硬件那样彻底地更新换代,而应在再工程基础上系统地不断完善。
[1]计算机世界2002,918(44):B1-B7