祁少鍔
摘 ?要:醫院應用信息系統開發過程中,用戶的需求層出不窮,這就要求應用軟件開發商和開發工程師針對用戶的需求不斷改進產品。軟件開發商和開發工程師也有各自應對不斷變化需求的方式。例如增加配置、采用組件編輯器、采用可視化編輯器、采用多層開發結構等。為了應對用戶需求,該文開發了一種適應醫院應用需求的可視化編輯器,它不但能夠應對普通的用戶對話界面,還能夠應對復雜的對話界面,包括護理評估單、護理記錄單等。
關鍵詞:編輯器;可視化;軟件工程;信息管理
中圖分類號:TP393 ? ? ? ? ? ? 文獻標志碼:A
1 行業綜述
1.1 軟件工程理論
軟件工程是指應用計算機科學、數學及管理科學等原理,用工程化的原則和方法來解決軟件工程的問題。其目的是提高軟件的生產率,提高軟件的質量,降低軟件的成本。軟件的生存周期是指可行性的分析與項目的開發計劃、需求分析、概要設計、詳細設計、編碼、測試、維護等活動。軟件生存周期模型有瀑布模型(按順序階段性開發)、演化模型(先構造一個初始版本再不斷改進)、螺旋模型(制定計劃、風險分析、實施工程、用戶評估)、噴泉模型(重視用戶需求,允許各步驟交叉進行)。軟件開發方法有結構化方法(面向數據流,自頂向下逐層分解)、Jackson 方法(面向數據結構),原型化方法(開發一個對用戶透明的框架,然后根據用戶需求壯大)、面向對象的開發方法。需求的分析是指確定應用軟件系統的綜合要求,分析應用軟件系統的數據要求,導出信息系統的邏輯模型。
1.2 軟件理論在實際應用中的情況
基于以上理論基礎,各個醫院的應用信息系統軟件開發廠商都有自己的應對策略和成熟經驗。
1.2.1 開發部門與項目實施部門責任嚴格分開
開發工程師根據項目現場提交的需求文檔,在公司開發應用產品程序代碼,不直接到項目現場工作。現場工程師則負責整理需求,與用戶交流。當開發工程師完成開發程序代碼,測試程序2項工作后,提交給項目現場工程師進行部署,根據用戶測試結果,針對問題,由現場工程師匯總反饋給公司進行修改,直至滿足客戶要求。
這種方式使開發工程師與項目現場工程師責任清晰。現場工程師不更改程序代碼,有需求提交公司進行開發。這種方式的缺點是對開發工程師和現場工程師的能力有較高要求。現場工程師要能清晰領會用戶的需求并形成文檔交給開發工程師,開發工程師能夠根據文檔進行開發。如果某個環節薄弱就會造成效率低下,影響工作推進。優點程序版本控制相對容易。
1.2.2 開發工程師與項目工程師之間沒有嚴格的界限
開發工程師直接進駐項目現場與用戶直接溝通交流,根據項目現場需求對版本進行修改。優點是對項目工程師的要求不高,問題處理效率高,用戶體驗好。缺點是程序版本不容易控制。
1.2.3 開發工程師與項目工程師之間有一定的界限
研發工程師在公司工作,現場工程師負責整理需求,與用戶交流。在開發與項目之間還有一個技術支持團隊,他們負責項目的需求開發與交流。采用這種方式,新產品的研發和控制均在公司完成,現場個性化需求定制,由技術支持工程師完成,提高了解決需求的效率,也提高了用戶的體驗效果,并且拉近了項目與研發的距離。
產品應用靈活度對于產品的上線、實施有著重要作用。如果每個需求都需要開發工程師來處理,那么效率低且不利于項目的推進。如果通過靈活的配置來解決用戶需求,那么對于用戶和軟件廠商來說,便 是一個完美的工作方式。同時對于實施人員來說,也是一個容易接受的方式。然而對于技術支持人員來說,通過一些配置解決用戶的需求,可能要求就太低了。對于他們來說,通過一些便捷的開發工具、后臺代碼的編寫,就能處理相對復雜的用戶需求,是個不錯的解決方案。
傳統的Visual Basic(簡稱VB)是微軟公司開發的一種通用的基于面向對象的程序設計語言,為面向對象的結構化、模塊化,包括協助IDE開發環境的事件驅動為機制的可視化的程序設計語言。
PowerBuilder美國的Sybase公司開發研制的一種新型的、快速的開發工具,是客戶機/服務器(C/S)結構下,基于Windows3.x、Windows95和WindowsNT的一個集成化開發工具套件。它包括一個直觀可視化的圖形界面和可擴展的面向對象的編程語言PowerScript,并且提供與當前流行的大型數據庫匹配的通用接口,并可通過ODBC與單機數據庫相連。
Delphi是Windows平臺下著名的快速應用程序開發工具(Rapid Application Development,簡稱RAD)。它的前身,即是DOS時代盛行一時的“BorlandTurbo Pascal”,最早的版本由美國的Borland(寶蘭)公司于1995年研發。主創者為Anders Hejlsberg。經過數年的發展,該產品也轉移至了Embarcadero公司旗下。Delphi是一個可視化集成開發環境(IDE),使用的核心是由傳統的Pascal語言發展而來的Object Pascal,以圖形化的用戶界面為開發環境,透過IDE、VCL工具與編譯器,配合連結數據庫的功能,構成了一個以面向對象程序設計為中心的應用程序開發工具。
以上這些傳統的C/S架構快速開發工具,目前已退出主流市場行列,取而代之的是Visual Studio.NET 開發套件和Java相關產品。
2 研究成果
利用Visual Studio.NET 開發工具,采用C#語言開發環境開發的可視化界面編輯器是一個集界面編輯、打印界面編輯、知識庫編輯于一體的可視化編輯器,后臺數據庫存儲使用的是美國Inter Systems公司產品CACH ?數據庫。
該界面編輯器的特點是可以編輯普通對話界面以及復雜評估單界面。支持界面的元素有普通文本框、綁定知識庫的富文本編輯框、下拉框、單選框、日期、時間框、多選框,并支持對控件元素屬性的編輯。界面元素運用拖拽的方式進行版面編輯。并實現界面在各項目之間通過XML結構文檔的導入導出。
表格編輯器的特點:表格元素可以實現多種屬性的元素集合(文本、日期、下拉框、多選框),元素可以隨意調整位置,不用改變后臺程序。表格的表頭可以實現三層分組結構。表格可以關聯綁定數據庫記錄集。
界面結構化存儲特點:編輯的界面按照XML結構存儲,實現界面的序列化和反序列化,數據以流的方式存儲到后臺數據庫中。
知識庫編輯特點:能夠滿足護理、醫療等方面常用的知識庫使用(護士、醫生可以編輯一套文本)功能,編輯方面包括下拉框、單選框、日期、時間框、多選框等知識庫元素,實現了XML結構存儲以及各項目之間XML結構的導入導出。
打印界面編輯特點:實現了打印內容與界面元素的綁定。打印元素實現可視化編輯,包括了配置紙張、綁定對應的界面、綁定界面表格數據、運用拖拽的方式編輯界面元素,還可以利用畫筆進行表格、直線、圓形、矩形繪制等功能,并實現各項目之間XML結構導入導出。
Ext.JSON結構界面生成器特點:可以將C/S結構界面生成為JSON結構的Ext界面。實現對于護理記錄單、評估單等復雜界面的處理。醫院的臨床護理記錄單、評估單對于各個廠商來說都是很難處理的。該產品處理復雜的護理記錄單、多種樣式的評估單時,在技術支持層面就能夠得到完美解決,無須專門的研發人員進行開發,并且使護理表單與知識庫完美結合。可以有效地滿足用戶需求,降低開發復雜度。
以上功能的實現,使現場技術支持工程師不但能夠快速滿足用戶的各種需求,而且在滿足用戶的個性化需求方面有著不錯的表現。
3 落地使用效果
該產品在多家大型三甲醫院得到應用。主要應用于護理管理系統、護理病歷系統、健康宣教系統、移動護理APP系統等。使用過程靈活、方便,對于處理復雜表單有著不可取代作用。復雜界面配以通用的后臺處理程序,加上個性定制,可適用于不同項目的用戶需求。編輯器在將護理病歷從臺式桌面應用延伸到移動智能設備APP過程中起到至關重要的作用,包括入院評估單、護理記錄單從桌面應用延伸到移動APP,使桌面護理應用在移動APP上操作更加便捷。
4 優缺點展望
4.1 優點
該產品具有9個優點。1)該產品界面操作簡單,功能強大。2)同時支持C/S結構與B/S結構界面編輯。3)程序部署方便,更新程序在服務器端就能完成。4)可作為信息系統應用界面的定制,快捷方便。5)界面結構XML文件導入導出功能,實現不同項目之間的成果共享。6)實現了界面的目錄管理,并可以實現整個目錄的導入導出,節省操作時間。7)復雜的表格單元實現文本、日期、下拉框、多選框等多種屬性元素同時使用,簡單方便。8)打印模板編輯功能實現了可視化編輯修改,無需更新程序,給項目帶來極大方便。9)護理復雜評估單可拆分成多個界面作為移動APP應用界面使用,實現界面的一對多綁定劃分。
4.2 缺點
界面維護目前只實現了單人操作,不能多用戶同時編輯,這個有待后續新版本處理;界面編輯器僅支持一種C/S界面結構;Web界面僅支持Ext.JSON的解析,如果能夠支持jQuery EasyUI或者更多其他前臺技術就更好了,目前無法跨平臺部署程序。
參考文獻
[1]胡思康.軟件工程基礎(第三版)[M].北京:清華大學出版社,2019.
[2]本杰明·帕金斯.NET開發經典名著[M].北京:清華大學出版社,2019.
[3]Robert C.Martin.敏捷軟件開發[M].北京:清華大學出版社,2003.