張磊
(九江市婦幼保健院信息科 江西省九江市 332000)
為了滿足婦幼專科醫(yī)療服務(wù)的需要,婦幼平臺(tái)跟蹤婦女兒童的健康狀況并及時(shí)提出合理就醫(yī)意見的過程,對(duì)于及時(shí)掌握患者診療后的康復(fù)情況,提高診療效率和醫(yī)療服務(wù)質(zhì)量具有重要的意義。一些學(xué)者對(duì)此進(jìn)行深入研究并取得可喜成果:黃淵清等提出使用掌上婦幼平臺(tái)進(jìn)行預(yù)約診療的分析;粟泉等提出利用掌上婦幼進(jìn)行分級(jí)診療和中醫(yī)婦科的方式;張文華等提出云服務(wù)在婦幼健康平臺(tái)的應(yīng)用等,王輝提出采用C/S 和B/S 混合模式集成區(qū)域婦幼健康管理平臺(tái)的設(shè)計(jì)方法;但仍存在以下問題:一是未能構(gòu)建通用數(shù)據(jù)模型進(jìn)行數(shù)據(jù)的透明操作;二是未能從架構(gòu)上對(duì)各構(gòu)件功能的無縫集成;三是未能構(gòu)建統(tǒng)一的交互服務(wù)模式,信息采集不足和數(shù)據(jù)的不規(guī)范、不一致給數(shù)值統(tǒng)計(jì)分析帶來困難。對(duì)此提出一種領(lǐng)域適配的系統(tǒng)架構(gòu),構(gòu)建了領(lǐng)域服務(wù)單元,并利用通用的數(shù)據(jù)解析構(gòu)件,應(yīng)用靈活配置的模式,屏蔽了技術(shù)細(xì)節(jié),實(shí)現(xiàn)了不同婦幼健康專題的有效集成,提高了系統(tǒng)開發(fā)效率,滿足了醫(yī)院婦幼專科的業(yè)務(wù)需求。
領(lǐng)域架構(gòu)采用分層結(jié)構(gòu)設(shè)計(jì),采取領(lǐng)域角度看待問題,構(gòu)建了領(lǐng)域服務(wù)單元,有效地將技術(shù)與業(yè)務(wù)進(jìn)行分離,屏蔽了技術(shù)服務(wù)的細(xì)節(jié),滿足醫(yī)療服務(wù)的需要如圖1 所示。
圖1: 系統(tǒng)總體架構(gòu)
系統(tǒng)架構(gòu)可以分為:應(yīng)用服務(wù)層、業(yè)務(wù)服務(wù)層和數(shù)據(jù)服務(wù)層。應(yīng)用服務(wù)層也稱領(lǐng)域?qū)?,可以分為孕產(chǎn)婦系統(tǒng),兒童保健系統(tǒng),婦女保健系統(tǒng)等。孕產(chǎn)婦系統(tǒng)包括婚前檢查、圍產(chǎn)保健、高危管理、新生兒篩查、聽力篩查等;兒童保健系統(tǒng)包括出生證管理、兒童體驗(yàn)等;婦女保健系統(tǒng)包括婦女體檢、兩癌篩查、PAC 人流關(guān)愛等功能。業(yè)務(wù)服務(wù)層根據(jù)業(yè)務(wù)功能不同構(gòu)建的服務(wù)有:時(shí)間管理服務(wù)、權(quán)限管理服務(wù)、建檔管理服務(wù)、健康管理服務(wù)和統(tǒng)計(jì)分析服務(wù)等服務(wù)單元,由于病人基本信息是不會(huì)變化的,而計(jì)劃時(shí)間和內(nèi)容是隨著特定患者的不同而不同,可以通過領(lǐng)域適配服務(wù)實(shí)現(xiàn)婦幼健康服務(wù)靈活統(tǒng)一配置。數(shù)據(jù)服務(wù)層根據(jù)數(shù)據(jù)結(jié)構(gòu)的不同構(gòu)建了通用的數(shù)據(jù)引擎包括:SQL 主要用于關(guān)系數(shù)據(jù)庫,XML 用于用戶業(yè)務(wù)的配置,JSON 用于關(guān)系數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),關(guān)系數(shù)據(jù)以鍵值對(duì)表示,而非結(jié)構(gòu)數(shù)據(jù)以數(shù)據(jù)流形式加載到頁面中,HL7 標(biāo)準(zhǔn)消息服務(wù)提供了區(qū)域間異構(gòu)系統(tǒng)的消息同步。需要進(jìn)行集成的業(yè)務(wù)數(shù)據(jù)有HIS 數(shù)據(jù),電子病歷EMR數(shù)據(jù),檢驗(yàn)系統(tǒng)LIS 數(shù)據(jù)和超聲影像PACS 數(shù)據(jù)等。分層架構(gòu)的設(shè)計(jì),屏蔽了底層異構(gòu)的數(shù)據(jù)環(huán)境和業(yè)務(wù)邏輯,透明化實(shí)現(xiàn)了數(shù)據(jù)在不同領(lǐng)域靈活地集成;采用了軟件服務(wù)的思想,使分層架構(gòu)的粒度更細(xì)了,通過開放的服務(wù)接口向不同領(lǐng)域、不同平臺(tái)系統(tǒng)提供了對(duì)接服務(wù),有效地屏蔽異構(gòu)平臺(tái)數(shù)據(jù)不一致的現(xiàn)象,也使服務(wù)單元在復(fù)用中提高了應(yīng)用的魯棒性,提高了診療的效率和醫(yī)療服務(wù)的質(zhì)量。
領(lǐng)域適配的設(shè)計(jì)方法,主要包括兩方面內(nèi)容:一是領(lǐng)域服務(wù)的設(shè)計(jì),將不同的領(lǐng)域元素(約束條件、建檔信息、健康狀態(tài)、處置信息等)構(gòu)建成一個(gè)個(gè)的不可拆分的服務(wù)單元,實(shí)現(xiàn)業(yè)務(wù)流程的靈活配置;二是通用數(shù)據(jù)引擎的設(shè)計(jì)。從數(shù)據(jù)結(jié)構(gòu)層面更好地進(jìn)行實(shí)現(xiàn)異構(gòu)數(shù)據(jù)的集成與共享,醫(yī)院數(shù)據(jù)中心為各系統(tǒng)在數(shù)據(jù)無縫對(duì)接上提供了有力支撐,但是仍然存在消息發(fā)送延遲、消息字段發(fā)送錯(cuò)誤等問題,領(lǐng)域適配方法提供了松耦合的服務(wù)單元,利用通用的數(shù)據(jù)引擎建立起服務(wù)單元的拓?fù)潢P(guān)聯(lián),能很好解決領(lǐng)域間異構(gòu)設(shè)計(jì)的問題。
領(lǐng)域適配服務(wù)通過構(gòu)建一個(gè)通用的領(lǐng)域模型,以適配不同醫(yī)療領(lǐng)域婦幼兒童健康情況的跟蹤管理。該領(lǐng)域模型以非完全二叉樹結(jié)構(gòu)進(jìn)行組織,其結(jié)構(gòu)圖如圖2 所示。
在圖2 中,根據(jù)領(lǐng)域模型各節(jié)點(diǎn)的拓?fù)潢P(guān)系,程序的結(jié)構(gòu)模型可定義為:
圖2: 領(lǐng)域模型的設(shè)計(jì)
在公式(1)中,A 表示領(lǐng)域約束條件(包括在醫(yī)療??萍s束,計(jì)劃時(shí)間約束),B 表示病人的建檔信息(包括姓名,年齡,電話等),C 定義了不同的健康管理模式(婦幼體驗(yàn),高危管理,隨訪服務(wù)等),D 表示健康管理通用模板(包括健康狀態(tài),就醫(yī)建議等),E 表示健康管理專用模板(包括病情恢復(fù)記錄,預(yù)約診療情況等),該程序結(jié)構(gòu)模型能有效地控制程序在邏輯層面的復(fù)雜度,滿足復(fù)用度的需求,有效提高程序的可維護(hù)性。樹的分枝節(jié)點(diǎn)是領(lǐng)域的約束條件,那么程序的復(fù)雜度可定義為:
V = P +1 (2)
在公式(2)中,V 表示為程序復(fù)雜度,P 為分枝節(jié)點(diǎn)的數(shù)目,可見約束條件越多,程序的復(fù)雜度越高,結(jié)合在時(shí)間服務(wù)級(jí)別上延時(shí)的約束(即響應(yīng)時(shí)間不得超過8 秒),提出程序復(fù)雜度控制為不得大于10(即約束條件數(shù)量P 不得超過9 個(gè),每個(gè)約束響應(yīng)時(shí)間約為0.88 秒),該程序復(fù)雜度模型能有效地控制服務(wù)質(zhì)量,滿足在系統(tǒng)響應(yīng)時(shí)間級(jí)別上的需求。
??苹颊叩谋=」芾順I(yè)務(wù)要求對(duì)于不同的普通病案,需要提供不同的醫(yī)療服務(wù)計(jì)劃,并對(duì)不同專科患者的健康情況進(jìn)行統(tǒng)計(jì)分析,提供給醫(yī)療保健科進(jìn)行醫(yī)療服務(wù)質(zhì)量指標(biāo)的控制,就要求系統(tǒng)構(gòu)造一個(gè)通用的數(shù)值統(tǒng)計(jì)服務(wù)。通用數(shù)值統(tǒng)計(jì)服務(wù)可以從時(shí)間約束服務(wù)、領(lǐng)域約束服務(wù)等方面進(jìn)行詳細(xì)設(shè)計(jì)
(1)時(shí)間約束服務(wù)的設(shè)計(jì)。因?yàn)闀r(shí)間是線性的,時(shí)間參考點(diǎn)α(通常表示手術(shù)時(shí)間或出院時(shí)間等),時(shí)間特征值λ(通常表示一個(gè)時(shí)間偏差的矩陣值),具體的模型設(shè)計(jì)如下:
(2)領(lǐng)域約束服務(wù)的設(shè)計(jì)。因?yàn)榻y(tǒng)計(jì)粒度的不同,需要構(gòu)建不同層級(jí)的領(lǐng)域約束服務(wù)。如就診科室的約束包括一級(jí)科室和二級(jí)科室,如:一級(jí)科室有新生兒科病區(qū),二級(jí)科室對(duì)應(yīng)的是早產(chǎn)兒病區(qū),足月兒病區(qū),新生兒ICU 病區(qū)等。根據(jù)統(tǒng)計(jì)粒度的不同需要按一級(jí)科室進(jìn)行統(tǒng)計(jì),而醫(yī)療業(yè)務(wù)是按二級(jí)科室進(jìn)行的,需要維護(hù)一個(gè)二維的對(duì)照關(guān)系即dept_vs_subdept(dept_code, sub_dept_code) ,并將二級(jí)科室對(duì)照到一級(jí)科室進(jìn)行統(tǒng)計(jì)。診療組約束是建立以臨床主任負(fù)責(zé)的??平M織結(jié)構(gòu),包括三線醫(yī)生,二線醫(yī)生和一線醫(yī)生,由于病房病人采取管床醫(yī)生負(fù)責(zé),診療過程的值班醫(yī)生參與制,系統(tǒng)需要維護(hù)一個(gè)三級(jí)醫(yī)生的對(duì)照關(guān)系doctor_vs_group(doctor_id, parent_doctor_id, super_doctor_id,doctor_group_id)和診療組關(guān)系doctor_group(doctor_group_id, doctor_group_name),并將三級(jí)醫(yī)生并聯(lián)到診療組進(jìn)行統(tǒng)計(jì)。
數(shù)據(jù)服務(wù)可以采用通用的數(shù)據(jù)結(jié)構(gòu),一般有XML、JSON 可擴(kuò)展型文件類型、數(shù)據(jù)庫類型和HL7 標(biāo)準(zhǔn)消息類型,數(shù)據(jù)庫類型的數(shù)據(jù)能很方便地進(jìn)行查詢與統(tǒng)計(jì),可擴(kuò)展型文件類型和HL7 標(biāo)準(zhǔn)消息類型的數(shù)據(jù)方便了不同領(lǐng)域系統(tǒng)間的集成?;颊逫d,就診時(shí)間,計(jì)劃時(shí)間,患者電話,病種等患者基本信息可以采用數(shù)據(jù)庫類型的數(shù)據(jù)構(gòu)建。采用JSON對(duì)通用數(shù)據(jù)內(nèi)容進(jìn)行構(gòu)建,方便了JavaScript 的調(diào)用,可以存儲(chǔ)于數(shù)據(jù)庫字段中,方便查詢與調(diào)用。鍵值對(duì)的拼接,值也可以是另一個(gè)鍵值對(duì)組,這種結(jié)構(gòu)大大方便了自定義數(shù)據(jù)的構(gòu)建。其結(jié)構(gòu)如圖3 所示。
圖3: 通用數(shù)據(jù)引擎的設(shè)計(jì)
這樣在網(wǎng)絡(luò)端通過JavaScript 進(jìn)行專題領(lǐng)域內(nèi)容的動(dòng)態(tài)構(gòu)建,能提高系統(tǒng)開發(fā)效率,滿足業(yè)務(wù)變更頻繁的要求。計(jì)劃如出院后一周,一個(gè)月,術(shù)后一周、術(shù)后45 天等采用在服務(wù)端構(gòu)建時(shí)間服務(wù)構(gòu)件,通過Ajax 進(jìn)行異步調(diào)用,計(jì)劃時(shí)間默認(rèn)為固定的,也可以由醫(yī)生通過時(shí)間選擇方式進(jìn)行自行選擇。數(shù)據(jù)接口可以是標(biāo)準(zhǔn)的HL7 消息服務(wù),也可以是訪問視圖,存儲(chǔ)過程等多種模式,還可以是頁面的方式,如電子病歷等。HL7 標(biāo)準(zhǔn)消息型數(shù)據(jù)可以滿足了轄區(qū)間異構(gòu)平臺(tái)多個(gè)終端如手機(jī)端、PC 端和自助機(jī)等終端間系統(tǒng)的實(shí)時(shí)數(shù)據(jù)通訊。集成多源異構(gòu)診療數(shù)據(jù)能防止異構(gòu)系統(tǒng)在數(shù)據(jù)的重復(fù)采集和數(shù)據(jù)不一致現(xiàn)象,以提高醫(yī)生的工作效率,并且使婦幼健康??漆t(yī)療業(yè)務(wù)更加具備針對(duì)性和專業(yè)性。
婦幼平臺(tái)運(yùn)行在Tomcat7.0 應(yīng)用服務(wù)器環(huán)境中,采用mysql5.0 數(shù)據(jù)庫,采用Spring+Hibernate+Struts2 整合開發(fā),系統(tǒng)實(shí)現(xiàn)的功能有: 病人信息錄入,歷史病人查詢,月統(tǒng)計(jì)報(bào)表、轄區(qū)統(tǒng)計(jì)報(bào)表等功能模塊,如圖4-6 所示。
圖4: 病人信息錄入
圖5: 系統(tǒng)統(tǒng)計(jì)報(bào)表
圖6: 轄區(qū)唐氏高危統(tǒng)計(jì)報(bào)表
從2019 年投入運(yùn)行至今,系統(tǒng)滿足了婦幼專科患者提供不同的健康管理服務(wù),根據(jù)病情進(jìn)行風(fēng)險(xiǎn)等級(jí)管理服務(wù),提供了診療服務(wù)計(jì)劃的自動(dòng)生成或由醫(yī)生自主選擇終止服務(wù)計(jì)劃的功能,提供了不同??朴?jì)劃月報(bào)表功能,實(shí)現(xiàn)了婦幼健康信息的跨轄區(qū)、全周期管理,有效提高了我院的婦幼??漆t(yī)療服務(wù)質(zhì)量,如何在診療后提供醫(yī)療服務(wù)質(zhì)量抽簽功能,進(jìn)行患者滿意度管理,滿足了我院醫(yī)療保健科和質(zhì)控科對(duì)婦幼??瓶剖裔t(yī)療質(zhì)量的監(jiān)督,是今后系統(tǒng)研發(fā)的一個(gè)方向。