李海燕,王樹慶,孫京昇
(北京市醫(yī)療器械檢驗所,北京 101111)
本項目是研究基于oracle中間件產(chǎn)品 (BPM)設(shè)計實現(xiàn)的實驗室信息管理系統(tǒng) (LIMS),充分發(fā)揮BPM的工作流管理、數(shù)據(jù)統(tǒng)計、知識管理等優(yōu)勢,解決現(xiàn)有LIMS系統(tǒng)流程固化、統(tǒng)計和資料管理等缺陷,搭建一個具有統(tǒng)一性、安全性和高效性的業(yè)務(wù)信息門戶平臺。
該項目重點研究內(nèi)容包括兩方面: (1)實驗室業(yè)務(wù)管理流程方面,通過對實驗室檢驗業(yè)務(wù)進(jìn)行業(yè)務(wù)流程梳理,將檢驗業(yè)務(wù)流程與實驗室數(shù)據(jù)管理分離出來,并對提煉出來的業(yè)務(wù)流程進(jìn)行流程建模,通過oracle中間件平臺內(nèi)置的工作流引擎BPMN組件來實現(xiàn)。(2)數(shù)據(jù)管理方面,將其他相對獨立的實驗室數(shù)據(jù)管理模塊整合在一起,完成整個實驗室管理功能整體重組。最終提高實驗室管理流程的可維護(hù)性和可擴(kuò)展性,并且將各個數(shù)據(jù)模塊相對獨立的分離出來,松耦合化處理各個模塊與檢驗業(yè)務(wù)流程之間的關(guān)聯(lián);在數(shù)據(jù)統(tǒng)計和分析方面,采用oracle中間件內(nèi)置的BAM組件來實時展現(xiàn)關(guān)鍵統(tǒng)計數(shù)據(jù)的現(xiàn)狀,為將來的變化趨勢提供有力的數(shù)據(jù)分析和支持。
LIMS(實驗室信息管理系統(tǒng))是利用計算機(jī)網(wǎng)絡(luò)將實驗室的分析儀器連接起來,根據(jù)實驗室管理理論、計算機(jī)技術(shù)和質(zhì)量控制體系來建立的信息管理體系,實現(xiàn)檢驗數(shù)據(jù)網(wǎng)絡(luò)化共享,量化考核等功能,從而提高工作效率,降低運(yùn)行成本,促進(jìn)實驗室的規(guī)范化管理,為提高實驗室整體的管理水平提供先進(jìn)的技術(shù)支持。我們在LIMS 6年多的使用中逐步總結(jié)出了實驗室信息化管理經(jīng)驗,從系統(tǒng)用戶提出的眾多需求中提煉出新的業(yè)務(wù)需求并進(jìn)行了全面系統(tǒng)的分析。對LIMS系統(tǒng)各個功能模塊,核心業(yè)務(wù)流程,異常流程以及統(tǒng)計分析功能進(jìn)行了詳細(xì)的功能分解和業(yè)務(wù)梳理,細(xì)化了LIMS整體架構(gòu)設(shè)計和每個子模塊功能意義,完成了總體的需求方案和系統(tǒng)功能設(shè)計。在系統(tǒng)設(shè)計階段中,根據(jù)LIMS在實驗室管理中的實際應(yīng)用,我們將LIMS的業(yè)務(wù)功能抽象為主業(yè)務(wù)流程和核心功能兩大部分,如圖1所示。
(1)主業(yè)務(wù)流程主要包括以下5個階段:業(yè)務(wù)與受理-業(yè)務(wù)受理-合同評審-合同執(zhí)行-報告管理。其中,合同評審階段包括合同評審、任務(wù)下達(dá)、外出檢測審批、任務(wù)調(diào)整等功能;合同執(zhí)行階段包括實驗室任務(wù)分配、檢驗結(jié)果錄入、異常流程、任務(wù)退費等功能;報告管理階段包括報告的初審、復(fù)審、簽發(fā)、報告打印、報告發(fā)放和報告更改等功能。
(2)核心功能模塊主要包括以下5個模塊:通知管理、樣品管理、費用管理、財務(wù)管理、績效管理。
BPM(Business Process Management,業(yè)務(wù)流程管理),是一種以持續(xù)提高企業(yè)或者組織的業(yè)務(wù)績效為目的的系統(tǒng)化方法,它以構(gòu)造規(guī)范化的端到端的業(yè)務(wù)流程為中心,是一套全面整合企業(yè)或組織內(nèi)各業(yè)務(wù)環(huán)節(jié)的管理模式。Oracle公司對BPM的定義為:“業(yè)務(wù)流程管理是一種結(jié)構(gòu)化的方法,它使用方法、政策、度量、管理實務(wù)和軟件工具來經(jīng)營并持續(xù)優(yōu)化組織的活動和流程。BPM是一種管理實務(wù),它可以提供一套以改善響應(yīng)能力和運(yùn)作績效為目的的業(yè)務(wù)流程,從而支持企業(yè)管理活動”。BPM的生命周期劃分為如下五個階段:
(1)業(yè)務(wù)流程分析。
(2)業(yè)務(wù)流程建模。設(shè)計人員利用建模工具將業(yè)務(wù)流程以圖形化的方式描述出來,并對流程模型通過具體用例進(jìn)行模擬,以保證其正確性。
(3)業(yè)務(wù)流程部署。需要將其各個應(yīng)用程序或者服務(wù)單元集成到一起,部署至流程引擎上。流程開始后,引擎會按照預(yù)定的業(yè)務(wù)規(guī)則和需要對各個單元進(jìn)行調(diào)用。
(4)業(yè)務(wù)流程執(zhí)行。業(yè)務(wù)流程中通常包含自動完成和人工交互兩種類型的業(yè)務(wù)活動。流程部署完成后,業(yè)務(wù)人員即可輕松地對當(dāng)前業(yè)務(wù)規(guī)則進(jìn)行編輯和修改,而無需再有技術(shù)人員的參與,從而實現(xiàn)業(yè)務(wù)流程的動態(tài)化。
(5)業(yè)務(wù)流程監(jiān)控。流程在實際運(yùn)行的過程中,可以實時地對運(yùn)行中的業(yè)務(wù)流程進(jìn)行監(jiān)控,并對業(yè)務(wù)流程運(yùn)行過程中產(chǎn)生的報表進(jìn)行實時分析,以實現(xiàn)對業(yè)務(wù)流程的后期管理和維護(hù)。
基于以上的業(yè)務(wù)功能分析和BPM中間件平臺的功能、技術(shù)特點設(shè)計了本項目的技術(shù)架構(gòu)和功能設(shè)計。根據(jù)項目需求搭建了Oracle中間件的技術(shù)架構(gòu)和開發(fā)環(huán)境,核心技術(shù)ADF和BPMN的開發(fā)標(biāo)準(zhǔn),以及SOA的技術(shù)結(jié)構(gòu)和WebLogic的服務(wù)管理模式。核心功能模塊使用ADF技術(shù)開發(fā)實現(xiàn),核心業(yè)務(wù)流程使用工作流模式設(shè)計實現(xiàn)。因為項目前期已經(jīng)完成了行政辦公門戶平臺的搭建,采用單點登錄和統(tǒng)一身份認(rèn)證管理實現(xiàn)的用戶組織架構(gòu)和用戶管理以及角色管理和權(quán)限管理等基礎(chǔ)功能模塊,因此,LIMS系統(tǒng)直接使用以上登陸管理以及用戶管理模塊即可。
本項目搭建了基于Oracle中間平臺產(chǎn)品BPM搭建的MVC三層技術(shù)架構(gòu),技術(shù)結(jié)構(gòu)如圖2所示。
圖2 技術(shù)結(jié)構(gòu)設(shè)計方案
(1)基礎(chǔ)平臺層:數(shù)據(jù)庫采用Oracle RAC模式,提高數(shù)據(jù)運(yùn)算響應(yīng)速度和數(shù)據(jù)可靠性。Web服務(wù)采用WebLogic管理發(fā)布應(yīng)用服務(wù),采用分布式應(yīng)用部署模式。應(yīng)用服務(wù)采用雙機(jī)模式部署,數(shù)據(jù)存儲磁盤陣列鏡像備份,應(yīng)用冗余部署結(jié)構(gòu)避免了系統(tǒng)單點故障,提高了應(yīng)用服務(wù)的有效性、高效性、可擴(kuò)展性和安全性。
(2)業(yè)務(wù)數(shù)據(jù)模型層:采用SOA、OSB等組件統(tǒng)一管理業(yè)務(wù)應(yīng)用以及核心流程,數(shù)據(jù)總線調(diào)度整個系統(tǒng)I/O進(jìn)程,事件總線、業(yè)務(wù)適配器、業(yè)務(wù)流程管理器和規(guī)則引擎支撐整個業(yè)務(wù)流程的邏輯處理和流程驅(qū)動,整個企業(yè)集成架構(gòu)中心。
(3)信息訪問層:Portal門戶訪問界面,是所有用戶體驗的窗口,我們做了企業(yè)級的客戶化IU定制,即統(tǒng)一了頁面布局和界面風(fēng)格,也保留了部分頁面?zhèn)€性化設(shè)置功能。
在項目實施過程中,我們嚴(yán)格按照BPM的框架標(biāo)準(zhǔn),進(jìn)行需求分解、功能設(shè)計、抽象建模、業(yè)務(wù)部署,最后對業(yè)務(wù)流程進(jìn)行監(jiān)控,建立系統(tǒng)問題跟蹤記錄,控制程序質(zhì)量。按照BPM技術(shù)標(biāo)準(zhǔn),統(tǒng)一設(shè)計規(guī)范和技術(shù)規(guī)范,不斷總結(jié)應(yīng)用開發(fā)經(jīng)驗,減少代碼的規(guī)范性問題和流程邏輯錯誤,不斷的提高代碼質(zhì)量和流程邏輯質(zhì)量。歷時2年的項目周期,已于2014年5月正式上線運(yùn)行。該研究項目的實施具有以下幾點優(yōu)勢:
(1)對業(yè)務(wù)流程和數(shù)據(jù)管理功能的結(jié)構(gòu)分離并進(jìn)行解耦設(shè)計;
(2)業(yè)務(wù)流程由BPMN流程組件實現(xiàn),盡量減少二次開發(fā)代碼量;
(3)數(shù)據(jù)和文檔共享管理同步,安全統(tǒng)一高效;
(4)BPM平臺可擴(kuò)展性和可維護(hù)性較好,節(jié)省費用;
(5)平臺技術(shù)更新較快且有良好的兼容性和可移植性。