技术开发 频道

用面向服务架构改进医疗系统表现

【IT168 SOA文档】

医疗领域中的SOA

技术迅速的发展及其在医疗领域中的应用导致医疗组织堆积了许多不能彼此交互的系统。但是,从业务上来说,这些系统不仅需要组织内协同工作,而且还要求能从外部访问。在这种状况下,集成的负担往往落在了那些为完成一项任务而不得不访问多个系统的使用者身上。但是,使用面向服务架构(SOA)可以改善重要信息的交付,而且能在成本、安全和部署风险均可接受的条件下使得数据在整个医疗社区内共享。

管理不断增长的系统集合是当今医疗组织要面临的挑战。创建、集成和维护这些系统的代价越来越大,同时对系统用户的要求也在提高。组织必须解决不断发展的临床需求,同时还需支持营收循环和管理商务功能。另外,为了支持区域性医疗服务的交接,与其他医疗组织进行互操作的需求也在增加。面向服务架构为整个医疗组织的系统资源重用与共享提供了系统设计和管理原则。SOA不要求对现有系统进行再造。通过SOA,现有流程可以与新功能结合构建一个服务库,其中的每个服务是解决方案的组成部分。使用那些与业务过程一致的共享服务,SOA在加强互操作性的同时减少了孤立系统间同步数据的需求。无论服务位于何处,它们都可以被用来创建超越桌面、部门、以及医疗组织的解决方案。

医疗信息技术中SOA使用介绍

如果某个医疗组织只依赖单个系统支撑企业各部门工作和提供医疗服务,那么他们往往已经有了一个共享和重用系统资源的解决方案。但是,更典型的是这种组织:它依赖一个或多个企业内部系统,支持部门特定需求的额外系统,设备有自己的系统,互操作使用复杂的数据接口网络完成。在拥有大量系统集合的组织中应用 SOA更容易显出它的优势。一个SOA环境可以使系统资产能被整个组织访问,并为现有孤立的系统功能提供了共享的可能。例如,SOA无需购置额外系统就能帮助满足那些未被履行的过程需求,并为标准化流程和数据管理提供了机会。这意味着现有系统功能会因为它们打包成可共享服务而获得升值。图1显示了医疗系统功能和相关应用的例子。尽管这个图表没有包含一个功能或系统的完整列表,但是它展示了在一个典型医疗环境中系统功能的冗余。


图1 医疗系统和功能

SOA将一个服务定义为一个自包含、定义良好、可理解功能的独立工作单元。工作单元可以是一个整体流程,一个支持流程的功能,或是一个业务流程的一个步骤。通过SOA,服务可以直接支持业务流程,原因在于它们是作为一个系统解决方案被“发现”和编制的。那些跨系统、部门和组织使用的功能极有可能通过 SOA提高重用性和被标准化。如果系统功能在系统间是冗余的,那么相应的业务流程有可能是关联的并且很可能表明该流程需要作为服务共享。图1中,大量冗余的功能有:

  • 患者挂号
  • 入院、出院和转院
  • 记录病情和诊断
  • 缴费和记录费用
  • 创建临床记录

每个系统功都可以被分成任务以进一步提高服务的重用性。例如,“患者挂号”功能可能会被分成“查找和浏览病人病历”、“创建和更新病人病历”、“核实保险资质”、“历史建档”(新建或者更新)以及其它在挂号过程中完成的业务活动。这种划分使其他服务和应用可以使用“患者挂号”的部分功能。任务“查找和浏览病人病历”可能会被绝大多数组织使用,而任务“创建和更新病人病历”可能只会被入院和前台服务人员使用。在某些情况下,其他系统提供的功能可能会比目前流程中使用的要好。例如,另一系统使用的“核实保险资质”功能可能比处理“患者挂号”的系统中相应功能提供了更多功能。在SOA 环境中,功能可以被标准化并被不同系统与流程使用。

图2显示了“患者挂号”服务功能的概念视图:


图2 “患者挂号”系统功能

随着SOA在医疗行业进一步的推广,服务集和其他特殊服务有望得到使用,使用者可能是某个医疗组织的服务采购(Service Procurement)组织功能(详见第二章)。由于系统提供的服务是位置透明的,这些被购买的服务可能在组织外托管。例如,诊断相关组(Diagnostic Related Group,简称DRG)或者其它类似受控药品词汇编码这样的服务可供集成进一个组织的解决方案。这个服务可能位于一个外部的代理系统,被不同医疗组织使用。SOA提供的一个附加好处就是可以方便地为整个组织以及所有使用该服务的医疗组织维护单独一份最新的DRG代码集。图3显示了一个医疗行业服务分类的例子。


图3 医疗行业服务分类举例

0
相关文章