羅軼瑋,姚建文,徐 斌,宋貴峰,石 濤,謝 穎
1 同濟大學附屬東方醫院教學辦公室, 上海 200120;2 上海諾基亞貝爾股份有限公司, 上海 201206
傳統的軟件架構已難以適應互聯網時代用戶需求的快速變化,微服務(microservices)應運而生。微服務的核心理念是細粒度模塊劃分、服務化接口封裝、輕量級通信交互,其具有以下兩大優勢:①模塊自治性強,能很好地滿足互聯網應用訴求變化快、模塊獨立更新的需求;②模塊擴展性好,能很好地滿足互聯網應用用戶難預測、資源動態分配的需求。因此,微服務正逐漸成為構造互聯網應用的主流架構模式[1-3]。目前,輕量級容器技術由于其資源占用少、應用啟動快等特點,正逐步成為支撐微服務運行的主流架構平臺[4]。
同濟大學附屬東方醫院是一所集醫療、教學和科研為一體的三級甲等綜合性公立醫院。2001年成為同濟大學的附屬醫院,目前承擔著來自同濟大學等多所院校的臨床各專業本科、研究生以及留學生的理論見習課程和臨床實習輪轉帶教任務。目前,在院本科生、研究生和留學生600余名。醫院成立教學辦公室作為專職的教學管理機構。
東方醫院臨床醫學教學管理系統在進行信息化改造的過程中有以下需求:①需要對學生和教師的全流程行為進行跟蹤管理;②需要保障教學質量并進行量化評估,實現教學管理任務過程的可視化;③需要通過信息化改造進一步提升醫學教育的效率,即通過引入人工智能技術提高自動化、智能化水平,同時不增加人力資源;④建立臨床教學管理相關數據的科學性管理體制,挖掘臨床教學管理的數據價值。
該系統在信息化改造方面有以下難點:
①臨床課程教學形式和方法多樣,課時數多,排課難度和工作量大。近年來,東方醫院的教學業務范圍擴展迅速,接收國內多所醫學院校、多個專業的理論授課和實習教學,且長、短期實習的留學生眾多。其臨床教學系統的課程復雜,涉及學科多,課程類型復雜,包括理論教學、見習、PBL授課、CBL授課、教學查房、小講課、技能訓練等,課時數龐大,每年完成56門課程授課,總學時達3000以上,人工排課效率低且易出錯。
②各專業實習輪轉和實踐課程同步進行,管理難度大。該院實習生來自多所醫學院校,專業多、人數多,實習大綱和實習進度不統一。以臨床醫學專業為例,學生需要進行內、外、婦、兒多個科室輪轉實習,且各個院校進出實習日期不一致,實習輪轉計劃和實踐課程制定須在符合實習大綱的基礎上,兼顧多個教研室實習人數的均衡性。
③學生成長軌跡可視化分析需求。醫學教育應以學生為中心,學生成長軌跡可視化分析是教育轉型實踐的新探索。在信息化助力下,系統自動生成各種數據統計圖表,形成多維度成長檔案,包括過程記錄、師生互動、形成性評價、終結性考核、技能操作等方面,學生的成長不再是枯燥的分數,而是全面成長的軌跡。可視化的數據分析,使教師因材施教更加科學。
④智能化教研室及教師績效管理需求。通過教學軌跡跟蹤,系統即時動態生成教研室及教師的教學績效。通過數據的專業解析和深層挖掘可以找到各個教研室及教育管理中的潛在問題,對已經發現的一些教育問題,可通過數據分析找出癥結。
根據實際調研結果,以及綜合評定各種微服務技術方案的具體特點,結合用戶需求,我們選擇了基于Docker容器技術的Kubernetes微服務框架,通過利用Kubernetes等技術將東方醫院臨床醫學教學管理系統的各種應用跨主機編排在一起,實現彈性、易擴展的架構,從而輕松應對不斷變化的臨床醫學教學管理系統。在該系統中,Docker容器是資源分割和調度的基本單位,并封裝整個軟件運行的環境。它是一個跨平臺、可移植并且簡單易用的容器解決方案,可在容器內部快速自動化地部署應用,并通過操作系統內核技術為容器提供資源隔離與安全保障。該系統所采用的微服務架構如圖1所示。

圖1 微服務架構示意圖
首先,該系統架構設計了能力支撐微服務層,包括三方面:人臉識別微服務、圖像轉換微服務和消息通知微服務。
其次,在能力微服務層上面構建了應用微服務層,包括學籍管理微服務、考勤管理微服務、課程管理微服務、實習輪轉微服務、教學互動微服務,以及數據分析微服務。
第三,該架構的最頂層是客戶端層,支持PC Web瀏覽器、移動端瀏覽器、手機微信客戶端、手機APP這4種直接訪問方式,客戶端層通過http、websocket、no- tification這3種輕量級通信協議與應用微服務層相聯并獲取所需數據。
另外,該系統架構還設計了數據庫微服務,包括教師數據庫、學生數據庫、考勤數據庫、教學數據庫4個數據庫,共同為該系統其他模塊提供數據庫服務。
與圖1中應用微服務層的六項微服務相對應,該系統有六大功能:學籍管理、考勤管理、課程管理、實習輪轉、教學互動、數據分析(如圖2 所示)。

圖2 系統主要功能示意圖
東方醫院臨床醫學教學管理系統的特點如下:
高效化:提供考勤、輪轉、評價、考核等功能,提高了教學管理的工作效率。
專業化:遵循頂層設計、分級管理、過程管理的原則,緊扣教學管理工作中的難點,統一管理教學培訓數據,使管理工作科學化、專業化。
智能化:通過引入多項人工智能技術,系統實現了醫學教育信息化系統的智能化改造,完善了教學工作中的數據記錄與分析功能,挖掘出了醫學教育環節中的數據價值。
采用基于容器的微服務架構進行上層應用開發,并進行個性化應用及需求的彈性擴展與開發,該系統有以下創新點:①引入“睿眼”人臉識別引擎,成功實現人臉數據的采集及自動識別;②基于大數據分析技術進行數據挖掘和深入分析,建立臨床醫學教學大數據分析及能力,對于醫學教育過程中產生的各種數據進行分析,有針對性地改善教學環節中的薄弱環節;③采用統一的數據采集平臺,構建分布式基礎數據庫,實現各種數據文件的共享。
基于人臉識別的考勤是該系統主要創新點之一。為解決考勤問題,在能力微服務層引入了人臉識別微服務。通過1080 P高清網絡攝像頭對進出人員進行人臉檢測,并通過“睿眼”人臉識別引擎進行人臉數據的采集及自動識別,識別成功率高達99.83%,有效提高了課程考勤的效率(如圖3所示)。

圖3 人臉識別系統架構及消息流程示意圖
人臉識別考勤功能的實現步驟如下:
步驟1:RTSP視頻流。攝像頭對著閘機持續進行視頻流拍攝,所生成的RTSP視頻流經局域網傳輸給圖像轉換微服務模塊。
步驟2a:定時抓取圖像。圖像轉換微服務模塊從RTSP視頻流中定時抓取圖像,發送給圖像轉換微服務模塊。
步驟2b:視頻圖形數據。在執行步驟2a的同時,圖像轉換微服務模塊還將視頻經局域網發送給位于PC客戶機上的Web瀏覽器,供管理員用戶進行隨時查看。
步驟3:檢測人臉。采用“睿眼”人臉檢測算法,人臉檢測微服務模塊負責從圖像轉換微服務模塊所傳送來的圖像中檢測人臉信息。
步驟4:通知檢測到人臉。人臉檢測微服務模塊一旦檢測到人臉信息就立即將該消息傳給Web Soc- ket消息通知微服務模塊,Web Socket消息通知微服務模塊會通過Web Socket接口將該消息立即傳給位于PC客戶機上的Web瀏覽器,提醒管理員用戶及時查看。
步驟5:人臉識別請求。位于PC客戶機上的Web瀏覽器向人臉識別微服務模塊發出人臉識別請求。
步驟6:人臉識別結果。采用“睿眼”人臉識別引擎,對數據庫中原有人臉信息進行比對,人臉識別微服務模塊對人臉信息進行識別,并將識別結果發給位于PC客戶機上的Web瀏覽器,供考勤人員實時查看。
該系統在東方醫院的實際應用效果十分明顯:
①提高了教學管理水平:系統的應用真正幫助教務管理人員從繁雜的教務事項中解脫出來,縮短了排課、整理數據等時間,能夠一鍵生成學科、科室、教師、學生的過程化管理信息,極大地提高了教學管理效率,高效地解決了傳統教學管理的方式落后、事務繁雜且易出錯等問題,進而真正達到教學管理的系統化、信息化和智慧化。
②網絡化系統是臨床教師教學的有力保障:如圖4所示,通過系統,教師能夠在手機上隨時查看教學、實習進度,并收到系統的定時提醒,不僅促進了教師隊伍信息化素養的發展,而且還可以通過查看學生個性化成長軌跡進行因材施教,有效保證了臨床教學質量的穩步提升。
③個性化信息促進學習效率的提高:學生可隨時通過系統在手機上查詢學習、實習進度,在課堂、實習之外與教師進行互動、反饋,通過個人成長軌跡及時調整學習目標與計劃,不僅提高了學習的自主性,增強了學習歸屬感,而且節約了教學成本,提高了學習效率。
利用微服務架構所具有的小型化、自治性、輕量級通信、技術中立、靈活部署等特點,也利用容器技術的優點,我們設計并實現了一套基于微服務架構的臨床醫學教學管理系統。該系統不僅能夠以智能化的手段實現臨床醫學教學管理的各項功能,還具有部署靈活、管理簡便、容易維護和擴展等優點。另外,在教學數據的可視化方面進步明顯,用戶體驗優異。

圖4 該系統在手機上的應用界面示意圖
總之,該技術方案不僅能夠有效解決綜合性附屬醫院臨床醫學教學管理系統的信息化建設的難點,而且性價比很高、智能化突出,有著重要的實用價值和推廣價值。