摘要:闡述了基于SOA構架研發的農民健康檔案信息系統相關設計要點。這一設計能有效解決健康檔案信息系統建設中社區衛生服務信息、新型農村合作醫療信息等醫療衛生信息資源不能綜合利用的技術難題,對促進和推廣此類系統的開發,提高此類系統的建設水平有積極意義。
關鍵詞:信息系統;SOA架構;農民健康檔案;設計
0 引言
2005年8月浙江省全面實施農民健康工程。其中一項內容是為參加新型農村合作醫療的農民建立健康檔案,每兩年為農民免費進行一次健康體檢,患病農民將作為社區(鄉鎮、村)衛生服務的重點對象,由社區責任醫生上門進行跟蹤服務。為了落實這一惠民政策,我們借助數字化、信息化、網絡化的技術手段,在個人健康檔案的基礎上建立了連續、完整、動態的電子健康檔案系統。利用這一系統,不但能很好地掌握個人健康狀況,采取優先的預防保健和疾病治療措施,而且能建立起健康信息的收集渠道和評價系統,有助于預防疾病、提高農民的生活質量、消除或減輕影響健康的危險因素。
那么,如何在個人健康檔案的基礎上建立連續、完整、動態的電子健康檔案系統呢?我們認為關鍵是要實現農民健康檔案信息與社區衛生信息系統、新型農村合作醫療信息系統的有機結合,實現資源共享,減少信息孤島,減少重復投資。下面我們圍繞基于SOA構架研發的農民健康檔案信息系統相關設計要點,具體談談系統建設的關鍵點和難點。
1 農民健康檔案與其它相關系統
建立人生各階段的健康檔案,使之貫穿人的一生,完整動態地反映從出生到死亡全過程的個人健康信息,是全世界衛生工作者的努力目標。應用現代信息技術是實現這一目標的必然選擇。
目前,我國健康檔案大體包括門診病歷、住院病歷、體檢保健卡片等幾個彼此孤立的部分,其內容、形式和信息收集缺乏標準、信息收集不連續且方式單一,不同的系統獨立運行,重復采集信息,資源不共享,信息利用不充分。
為了解決這個問題,一些地區正在試點建設社區衛生服務信息平臺,試圖逐步整合相關資源,拼接完整的個人健康檔案,真正建立以健康為核心,貫穿整個生命過程,涵蓋各種健康相關因素,實現信息多渠道、動態收集的信息系統。
農民健康檔案系統是社區衛生服務系統與新型農村合作醫療系統的交集子系統。所以設計時必須要考慮系統與醫院HIS、婦幼保健系統、兒童計劃免疫系統、計劃生育系統,與新型農村合作醫療系統之間的數據共享與交換問題。以SOA構架設計數據交換共享協同平臺是解決這一問題的理想方案。
2 面向服務的體系結構(SOA)簡述
面向服務的體系結構(service-oriented architecture,SOA)是一個組件模型。它是以通用為目的,具有可擴展性、聯合協作性的架構。它將所有流程都定義為服務,將應用程序的不同功能單元(稱為服務)通過服務之間定義良好的接口和約定聯系起來。接口是采用中立的方式進行定義的,它獨立于實現服務的硬件平臺、操作系統和編程語言。這使得構建在這樣的系統中的服務以一種統一和通用的方式進行交互。
這種具有中立的接口定義(沒有強制綁定到特定的實現上)的特征稱為服務之間的松耦合。對松耦合系統的需求,來源于業務應用程序,需要不斷修改,以適應不斷變化的環境,比如經常改變的政策、業務級別、業務重點、合作伙伴關系以及其他與業務有關的因素——這些因素甚至會影響業務的性質。我們稱能夠靈活地適應環境變化的業務為按需(On demand)業務。在按需業務中,一旦需要,就可以對完成或執行任務的方式進行必要的更改。
SOA可以看作是B/S模型、XML/Web Service技術之后的自然延伸。Web是實現SOA的具體方式之一。其他使用WSDL直接實現服務接口并且通過XML消息進行通信的協議也可以包括在SOA之中,如CORBA。這樣就有了面向消息的中間件(Message-Oriented Middleware)系統,比如IBM的MQseries。SOA能夠幫助我們站在—個新的高度理解企業級架構中的各種組件的開發、部署形式,幫助企業系統架構者以更迅速、更可靠、更具重用性架構整個業務系統。較之以往,SOA架構的系統能夠更加從容地面對業務的急劇變化。
SOA可以與許多其他技術結合在一起使用,其中,組件的封裝和聚合扮演著重要的角色。如前所述,SOA可以是一個簡單對象、復雜對象、對象的集合、包含許多對象的流程、包含其他流程的流程,甚至還可以是輸出單一結果的應用程序的整體集合。
3 SOA構架的健康檔案數據交換平臺設計
3.1 原理機制
(1)基于消息機制的數據交換;
(2)異構平臺的應用系統接入;
(3)采用異步消息隊列技術確保交換數據包不丟失。
從水平層次來理解,整個平臺起著消息總線的作用,發送端需要與其他系統交換數據則只需直接往總線發消息,由總線負責送達消息到接受端。和交互平臺進行數據交換的格式遵循XML協議標準,遵循其他協議標準的數據由平臺進行轉換,因此在數據交換平臺(消息總線)內流轉的消息為標準格式,易于以后擴展接入其他系統。
3.2 相關數據中心的接入

請求消息從中心發往子中心時,首先被分中心前置機上的請求分發器讀取;根據請求消息自帶的服務頭信息,查找本中心接入服務的配置表,找到需要執行的服務,請求被轉發執行;服務返回的響應消息,被傳送給數據中心平臺,由平臺返回給服務的調用者。
3.3 內部流轉過程
總體請求響應過程內部流轉過程。
子中心的應用系統發起的請求消息,由前置機上的SrcAdapter(源適配器)負責發送到中心數據交換平臺;中心平臺對信息進行解析后轉發往請求需要訪問的目標子中心。
4 農民健康檔案信息系統的設計
在這個架構中,底層的服務是更高層服務運行和實現的基礎——上層的應用通過底層數據集成服務提供的接口統一訪問下層的數據;通過組合多個單一應用服務,可以形成新的綜合業務。
數據源層包括了現有醫療衛生系統中的不同類型數據源,除了傳統的關系型數據外,還會有文件型數據,或者實時產生的數據流,因此無論是數據源存儲位置,還是數據訪問方式都是多種多樣的。通過對分布數據源的統一管理,所有上層應用都可以實現基于SOA的使用統一方式的數據訪問服務。此外,數據服務層還實現了不同地域范圍的健康檔案信息的交換。通過數據交換服務,數據可以被及時地傳送到其他系統或應用當中,有效地提高了健康檔案信息的使用范圍。
前置應用服務層,利用數據服務層提供的統一數據服務接口,能訪問到完整的集成數據。
數據交換平臺實現各子系統的信息交換,對健康檔案信息進行路由轉發和查詢。
最后,健康檔案服務層將SOA架構底層提供的復合業務服務、單一應用服務和整合數據服務,通過統一的健康檔案信息系統顯示給最終用戶。
5 結束語
基于SOA架構建立的浙江省紹興市區農村居民健康檔案信息系統通過2006下半年的試運行,運行情況良好,初步達到設計目標。它也為進一步建設全面的健康檔案信息系統打下良好基礎。這—健康檔案信息系統,依托已有的醫院HIS、婦幼保健系統、兒童計劃免疫系統、新型農村合作醫療等信息系統,通過數據交換整合相關資源,打破了原來信息傳遞不暢的瓶頸現象。它既提高了社區衛生服務水平和服務質量,完善了社區衛生服務體系,又減少了對信息系統總的資金投入,節約了大量資金。