APP下载

基于Web Service的电子病历系统的设计与应用

2012-01-15宋莉莉郭雪清黄正东

电子设计工程 2012年15期
关键词:病历组件信息系统

宋莉莉,郭雪清,李 进,黄正东

(广州军区武汉总医院信息科 湖北 武汉 430070)

电子病历系统[1-3]是由贯穿完整诊疗过程(包括门急诊、住院、体检等)的一系列以支持临床医师诊疗为基础的业务系统组成的有机整体或综合性系统。它是建立在医院基础临床信息系统(如放射、超声、检验、医嘱、病程以及护理等)之上的综合应用系统,是对病人在院所有医疗活动的完整记录。电子病历系统要求在任何时间任何地点都能够为授权医疗服务人员提供所需的有关病人的诊疗信息,以支持高质量的医疗服务。

近年来,随着医疗改革的不断深入,建立支持电子病历全面共享的区域医疗卫生信息系统或平台已成为当前我国卫生信息化建设的一项重要内容。但由于我国卫生信息化发展不平衡,存在大量的孤立系统、烟囱系统,以及采用不同平台实现的临床信息系统,严重阻碍了电子病历的全面共享。平台无关的Web Service技术使得异构系统的集成成为可能[4-6],本文结合我院电子病历系统的实施与应用情况,探讨基于Web Service的电子病历系统的体系结构的设计。

1 Web Service相关技术介绍

Web服务是一种新型的Web应用模式,是Web技术与分布式组件技术融合的产物。在传统的分布式组件技术中,服务是一个可以通过编程接口访问的软件组件,用户通过使用相应的分布式组件协议 (如DCOM、CORBA和RMI等)访问这些服务,由于这些协议大都与具体的编程语言(如C++、Java和JavaBeans)或平台(如DCOM只能在Windows系统中使用)相关,因此应用程序与服务是一种紧耦合的关系,而Web服务技术的出现改变了这一状况。使用不同平台和编程语言实现的应用程序与服务通过标准的Web协议 (如HTTP,FTP等)和XML进行通信,为跨领域的异构应用集成提供了全面的技术支持。

W3C组织对Web服务的定义为:“Web服务是由统一资源标识符标识的软件应用,通过XML实现接口和绑定的定义、描述和发现,同时支持通过基于Interact的协议 (如SOAP)直接与其他使用XML信息的软件应用程序进行交互"。因此,可以说Web服务是能够通过使用一系列标准的网络协议描述、发布、定位和调用的组件,通过标准的接口对软件组件进行包装,实现了组件实现与组件描述的分离,服务之间通过调用这些接口来进行交互,从而屏蔽了不同软件组件之间的具体实现细节。目前有关Web服务技术标准化的研究正在Web服务描述、服务发现和服务组合等各个层次展开,并且已经在工业界和学术界形成了一套广为接受的基本协议栈,其基本构成如图1所示。

图1 Web Service协议栈Fig.1 Web Service protocol stacks

2 基于Web Service的电子病历系统设计

2.1 需求分析

Web Service技术是面向业务的应用集成技术,因此既可以支持医院内部临床信息系统的集成也可以支持医院与其他医疗机构之间的异构集成。目前,医院内部的集成一般采用基于数据库和接口的数据集成方式进行集成,很少考虑各临床信息系统与整个医院信息系统之间的业务逻辑,甚至存在原有系统与新系统业务之间存在矛盾的情况,给系统部署升级工作带来了很大麻烦,对工作人员要求也比较高(需要了解所有的业务逻辑)。对于外部集成,采用医院内部集成方式显然是不可取的,一方面不利于保护医院的电子病历及相关资源的私有性,另一方面也存在较大的安全隐患。

2.2 基于Web Service的电子病历系统体系结构

Web Service强调将业务封装成服务进行发布,并支持跨平台的服务调用,给出一个基于Web Service的电子病历系统体系结构如图2所示。基于Web Service的电子病历系统逻辑上可以分为3个层次:基础业务层、服务层和集成应用层。

图2 基于Web Service的电子病历系统体系结构Fig.2 Architecture of Web Service-based electronic medical records system

基础业务层由数据层和医院内部应用系统两个层次,这样区分的原因是在对遗留系统的集成中,对于采用基于数据库进行集成的子系统,封装的服务一般直接操作数据库来实现数据集成(没有达到业务集成水平),而对于原来采用基于接口方式进行集成的子系统可直接将接口封装成服务进行发布,而不是直接访问数据库。

服务层是整个体系结构中最关键的部分,是整个系统的核心。从理论上来说,存在集成应用的系统(如门急诊医生站、住院医生站、体检信息系统等)都通过服务层提供的服务接口来实现各临床子系统数据的集成。服务层是Web Service技术应用的集中体现,包括服务的定义、发布、注册、发现、绑定、协作、事务协调,以及服务质量管理等,还需要保证XML文档的高效解析、SOAP消息的可靠传输、网络负载均衡,以及服务状态持久等关键技术问题。内部集成服务主要面向医院内部各个子临床信息系统的集成应用,外部集成服务主要是各种对外业务服务接口,如网上预约挂号、跨院转诊,以及数据上报等。

集成应用系统层主要关注数据的一体化表现和业务逻辑的实现,比如医院内部医生站中对病人所有诊疗信息的一体化表现,医生不需要登陆专门的业务子系统进行察看;还可以在门户网站中提供预约挂号、跨院转诊,以及数据上报等对外服务连接。

2.3 基于Web Service的电子病历系统运行支撑框架

电子病历系统运行支撑框架的主要功能是处理基于Web Service的服务和数据调用的相关问题,如SOAP消息的封装与解析,消息的传输等,将其进行封装提供给用户使用,从而使Web Service的调用像调用本地接口程序一样简单。基于Web Service的电子病历系统采用三层架构进行设计,因此运行支撑框架主要由3个部分组成:

1)数据库访问模块:数据库访问模块实现对数据库的直接操作,以消除其他应用系统和模块对数据库的直接依赖性和耦合性。该模块以DLL动态库形式实现,且支持以集群服务器的模式对外提供服务),能够被任何需要直接访问数据的应用程序使用。

2)数据库访问服务模块:数据访问服务模块通过数据库访问模块为一体化医护工作站提供面向业务的数据访问服务。该模块以Web Service的形式实现,且支持以集群服务器的模式对外提供服务,主要部署在Web Service服务器上。

3)数据访问服务调用模块:数据访问服务调用模块对数据访问服务模块进行封装,以动态库的形式部署在客户端供一体化医护工作站调用。该模块主要实现对Web Service形式的数据访问服务的访问以及相关的安全控制机制,模块的接口与数据访问服务模块提供的接口一致。

3 基于Web Service的电子病历系统的应用

为了顺应医疗改革需求,2011年我院组织实施了基于Web Service的电子病历系统,该系统组织结构如图3所示。该组织结构从逻辑上可分为4个部分:客户端、中间层服务器、电子病历服务器和数据库系统,其中中间层服务器、电子病历服务器和数据库可分开部署也可部署在同一台计算机上。客户端对数据库的访问均通过中间层服务器提供的Web Service标准接口实现。在具体实施过程中,为了保证我院1 200多台客户端对服务层和数据层的访问效率,一共部署了4台中间层服务器、一台电子病历服务器和一台HIS数据库服务器。

图3 电子病历系统组织结构Fig.3 Structure of electronic medical records system

目前,基于Web Service的电子病历系统已实现了与我院多个临床信息系统的集成 (如图4所示),如合理用药系统、检验系统、PACS影像系统,以及移动医护系统等。

图4 基于Web Service的电子病历系统应用Fig.4 Application of Web Service-based electronic medical records system

4 结 论

电子病历系统是医疗过程和活动的全面信息化,不仅仅是病历的电子化,更重要的价值是能够为医护人员提供满足临床诊疗的信息需求,并能够及时有效的辅助和改善医护人员的临床决策。采用平台无关Web Service技术能够为电子病历的跨平台区域共享提供技术支持,有利于电子病历的深度利用(科学研究)和基于电子病历的居民健康档案的信息化管理。目前,Web Service相关技术在医院信息系统集成和区域医疗信息化中的运用还处于起步阶段[5-7],其应用潜力还需要进一步深化,比如当前使用Web Service技术主要用于数据共享,很少利用其业务层次的共享和协同优势。从技术角度来看,要在卫生信息化领域充分利用其优势,一方面需要标准化,建立医疗业务规范和数据标准,并采用平台无关的WSDL技术进行描述,另一方面还需要进一步提高安全性,减少医患纠纷,保护病人隐私。

[1]电子病历基础架构与数据标准(试行)[S].北京:中华人民共和国卫生部国家中医药管理局,2009.

[2]薛望国,李包罗.临床信息系统与电子病历[J].中国护理管理,2009,9(2):77-80.XUE Wang-guo,LI Bao-luo.Clinical information system and electronic medical record[J].Chinesf Nursing Management,2009,9(2):77-80.

[3]陈金雄.电子病历与电子病历系统[J].医学卫生装备,2010,31(10):1-4.CHEN Jin-xiong.Electronic medical record and electronic medical record system[J].Chinese Medical Equipment Joural,2010,31(10):1-4.

[4]Anzbock R,Dustdar S.Modeling and implementing medical web service[J].Data&Knowledge Engineering,2005(55):203-206.

[5]Carlson B.Implementing SOA at the Duke University Health System-The Journeys and How it Enabled Big Wins[C]//Chicago, USA:SOA in Healthcare workshop,2008:15-17.

[6]李玉杰,熊文举,姜浩娜.基于SOA架构的医院信息系统集成[J].中国数字医学,2008,3(8):54-56.LI Yu-jie,XIONG Wen-ju,JIANG Hao-na.Hospital Information System Integration Based on SOA Architecture[J].China Digital Medicine,2008,3(8):54-56.

[7]W3C.Web Service Architecture[EB/OL].(2004-11) http://www.w3c.org/TR/ws-arch.

猜你喜欢

病历组件信息系统
无人机智能巡检在光伏电站组件诊断中的应用
企业信息系统安全防护
强迫症病历簿
“大数的认识”的诊断病历
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
基于区块链的通航维护信息系统研究
信息系统审计中计算机审计的应用
为何要公开全部病历?
基于SG-I6000的信息系统运检自动化诊断实践