, ,,,
(解放軍總醫院 南樓心血管內科,北京 100853)
心血管病人24 h液體出入量是機體維持水、電解質、酸堿平衡,腎功能代償、失代償的標志之一,也是監測心血管病人心臟負荷的一個重要參數。記錄誤差控制程序設計是研究心血管病人出入量的先提條件,醫學與社會系統日漸融合,醫生、病人越來越依賴先進的醫療設備,同時醫療設備的復雜性也在不斷增加,對于傳統出入量程序設計方式提出了嚴峻的挑戰。心血管病人液體出入量程序設計的主要目的是在臨床上了解心血管病人真實的病情提供準確信息,幫助主治醫師對心血管疾病進行及時診斷。心血管疾病發生的原因有很多種,包括休息時間不足、心臟功能欠佳、孕婦貧血、心力衰竭、呼吸道感染等,該疾病的發生會使心室進出口血液流動受到阻礙,導致身體活動機能下降,嚴重情況下可使成年人脈搏停止跳動[1]。該病導致胎兒的心血管發育異常的現象較為明顯,種類也較為復雜,雖然現在對于心血管病人出入量的記錄儀器較多,但也存在出入量記錄存在誤差的情況。為了降低記錄誤差的風險,需對記錄誤差控制技術進行設計。采用傳統誤差控制技術設計的程序對心血管病人出入量進行記錄存在運行誤差較大的問題,已經不能滿足臨床工作需求,因此,提出了心血管病人出入量記錄誤差控制技術。
針對心血管病人出入量記錄誤差控制技術的研究,需先對語言使用環境與詞素構造進行探討,以C++編程語言為基礎對程序進行編譯,根據編譯結果對心血管病人基本信息檔案文件、入量項目檔案文件、出量項目檔案文件、護士病情描述文件、心血管檢測要點出入量記錄結構展開分析,并對數據錄入與信息查詢的誤差控制界面進行設計。
出入量記錄誤差控制程序設計語言是程序設計的基礎,也是系統設計中軟件工程的核心內容。語言使用環境與詞素構造等因素都影響心血管病人出入量記錄誤差控制程序運行效率,并以該語言編譯出入量記錄誤差控制程序。
1.1.1 語言使用環境
出入量記錄誤差控制程序語言開發是以心血管病人液體出入信息處理為基礎,使用前端工具作為數據庫開發工具,面向集成開發環境,采用Visual Studio系列作為程序語言開發工具,后臺使用DBMS數據庫服務器來管理數據[2]。開發語言環境應考慮如下幾點:1)心血管病人液體出入量信息;2)開發主機軟、硬件的設計和應用在相應程序上所能實現的功能;3)誤差控制程序具有可維護性。傳統出入量記錄誤差控制程序設計語言是偽代碼語言,該語言是在隨機存取存儲器QRAM上實現的,記錄誤差較大。為此,在實際程序設計過程中使用FoxPro數據庫編程軟件,尤其是具有強大輔助功能的Visual FoxPro數據庫開發軟件已經成為了心血管病人出入量記錄誤差控制程序語言設計的主要工具,將C++作為程序設計語言可滿足對心血管病人出入量記錄誤差的要求[3]。
1.1.2 詞素構造
根據語言使用環境,首先要對出入量記錄誤差控制程序的詞素進行解析。自由構造詞素形成的詞典可加重某些詞法特征,通過詞素抽象構建新詞典,在實際C++編程語言應用環境中,一個句子的單詞可用動詞、名詞或形容詞等詞進行連接,這種抽象連接方式可突出句子整體結構。比如:C++編譯器中的詞法分析器定義了100種詞素構造種類,其中包括同形同義詞和異形同義詞兩種。對詞素構造的解析,可以有利于C++編程語言更加快速、準確的使用。
同形同義詞的詞素內容一致,但是編譯效果不同,在C++中,詞素“Harvest”可能是由“C++.utill.Map.Harvest()”調用獲得的,也可能是由“C++.utill.List.Harvest()”調用獲得的,在這種情況下,設定限制名可區分同形同義詞調用方式。異形同義詞是通過將不同詞素映射到不同單詞上獲取的,將具有相同執行行為的不同詞素進行抽象化處理,轉換為相同的單詞,模糊詞法之間的差異。在程序設計語言環境分析下,使用變量標識的方法可對具體詞素替換。比如:
Private static void bubbleSort (int array[])(
Int length =array.length;
for (int i=0;i< length;i++)(
for (int j=0;j< length-i;j++)(
if(array[j-1]>array[j])(
int temp=array[j-1];
array[j-1]= array[j];
array[j]=temp;
)
)
)
)
將上述bubbleSort方法參數“array”標識為“values”,那么通過抽象處理與映射能夠得到異形同義詞。
1.1.3 誤差控制程序動態編譯
為了提高C++編程程序編譯效率,根據上述分析的語言使用環境以及構造的詞素對程序進行動態編譯。編譯原理主要分為4個階段,如圖1所示。

圖1 編譯原理
心血管病人出入量記錄誤差控制程序編譯在程序設計中占據著重要地位,提出一種分層開放式動態編譯方法,該方法將表示出入量記錄誤差控制程序設計語言源映射到特定技術上,充分體現出心血管病人出入量記錄誤差控制程序的基本操作序列[4]。圖1中的出入量算法集、出入量記錄調整以及出入量記錄構造都是在計算機編譯器上進行的,而機器指令是在模擬器上執行的。源程序是由高級語言進行編寫的,能夠在復雜數據結構下進行程序編程,其中出入量算法集的編譯是通過源程序映射到出入量中間表示的,中間部分是由出入量子位和酉操作線路進行編碼的;出入量記錄調整是將源程序映射到等價的、只包含一個出入量等級之上,通常被稱為出入量匯編程序[5]。對電流調整的目的是為了產生高質量的匯編代碼;出入量記錄構造是針對具有特定屬性的出入量計算實現技術優化的[6]。
使用C++編程語言,將圖形計算程序轉換為直接在目標系統上執行的程序。在轉換過程中需要使用代數規則作為編譯的標準,例如:對心血管病人出入量記錄誤差控制程序W、心臟收縮a與舒張b變量,如果變量b不在程序W和心臟收縮a中單獨出現,那么可將心血管病人中任意一個出入量記錄信息概率編譯成具有隨機性的存儲變量,并跟隨條件選擇語句。該標準能夠保證編譯器正確編譯[7]。
使用C++編程語言對心血管病人出入量記錄誤差控制程序進行動態編譯,可保證編譯內容正確,以該正確內容為基礎,對程序出入量記錄結構展開設計。心血管病人原始出入量數據采樣點為高度密集形式,能夠聚集成較大規模的數據集,原始數據間具有密切的關聯性,具體出入量記錄結構設計規則為:在心血管病人出入量記錄信息檢索、處理基礎上,為了適應不同出入量信息的編譯的動態行為,以出入量記錄誤差控制系統內存為單位集合全部數據,構建關鍵數字索引,進而確定各個原始數據之間的邏輯關聯。以此規則為基礎,將所有心血管病人出入量記錄信息數據分別存儲于各自文件夾中,方便檢索[8]。
1.2.1 心血管病人基本信息
病人基本信息檔案文件—Basic information of the patient.DBF與“醫院心血管病人出入量記錄信息”共享,總機處僅有數據查看權,而在心血管病區護士工作站中具有使用權,病人基本信息檔案文件存儲形式如圖2所示。

圖2 病人基本信息檔案文件
1.2.2 入量項目
入量項目檔案文件—Quantity item.DBF可記錄病人24小時內的入量情況,“入量項目”可分為飲水量、食物含水量、液體量、其它量等4種,對于其中任何一個入量項目都要記錄入量時間,并粘貼復制到具體記錄內容當中,如液體量記錄內容為:主治醫師囑單輸入計算機中,將輸入結果復制到相對藥品瓶上并粘貼到“內容”欄內,等待為病人注射。將該項目內容存儲,并放置在入量項目檔案文件之中[9]。
1.2.3 出量項目
出量項目檔案文件—Output item.DBF可記錄病人24小時內的出量情況,“出量項目”可分為尿量、大便量、嘔吐量、出血量、汗液量、其它量等5種,對于其中任何一個出量項目都要記錄出量時間,并粘貼復制到出量項目檔案文件之中。
1.2.4 護士病情描述
護士病情描述文件—Nurse's condition description document可描述病人病情。護士需將主治醫師對病人的診斷結果進行記錄,其中包括病人的基本信息,入量項目、時間和出量項目、時間、顏色、形狀等。對于其中任何一個信息都要進行詳細記錄,方便醫生或病人家屬對病歷的查詢。
1.2.5 心血管檢測
心血管檢測要點文件—Key document of cardiovascular test是對所有信息的匯總,將選定時間的病人入量和出量自動匯總并記錄,分別設計24小時、12小時和8小時作為檢測時間點,根據病人病情選擇不同時間段進行統一匯總。
根據上述分析的出入量記錄結構研究出入量記錄誤差控制界面包括數據錄入、信息查詢和數據處理,其中數據錄入能夠為心血管病人出入量數據的記錄提供快捷界面;信息查詢能夠為錄入行為提供參考信息;數據處理能夠為總體程序提供必要圖表。這三部分的組合,可以有效降低記錄誤差,以達到對誤差進行有效的控制。
由于數據采集量非常大,傳統設計方式使用鍵盤輸入的方式浪費較多時間,并且容易造成人為記錄誤差,需對數據錄入提供一個較好的、具有容錯功能的界面,為原始數據錄入提供保障,為此設計頁面表格展示數據錄入情況,最大程度減少出入量記錄誤差。
1)表格版式:將心血管病人出入量記錄單設計為A4紙大小,其中眉欄設計包括科室、床號、姓名、住院號、頁碼,入量包括飲水量、食物含水量、液體量和其它量,出量包括尿量、大便量、嘔吐量、出血量、汗液量、其它量,詳細的眉欄設計,可以減少出入量記錄誤差,表格版式具體設計如圖3所示。

圖3 表格版式
2)執行單粘貼:在表格下方附屬醫院執行單,證明該表格記錄有效,由每日值班的護士打印執行單并貼在記錄單上,方便日后對照查詢,如果主治醫師有臨時囑咐,則需護士將囑咐內容記錄在執行單上,并貼符在執行單下方,方便出現出入量記錄誤差時,及時給予更正。
設計表格版式和執行單粘貼情況,大大節省了數據采集時間,提高了出入量記錄數據的運行效率,清晰的表格版式下附屬執行單為程序提供容錯處理技術,也為原始數據錄入提供保障。
傳統信息查詢是以心血管病人出入量項目為關鍵詞標志,不同病情以病人編號標識構成,不易護士查詢,為此采用FoxBASE數據庫管理系統為信息查詢提供功能鍵陷阱功能,促使護士在任何需要病人病歷的情況下都能利用該功能快速在屏幕上提供相應信息,最大程度的減少了出入量信息查詢的時間,減少出入量記錄誤差,如表1所示。

表1 病歷清單
由表1中的病歷清單查詢心血管病人出入量,添加陷阱功能鍵為心血管出入量的錄入行為提供參考信息。
出入量記錄誤差控制程序總體設計要求包括:單個病人病情曲線、入量統計直方圖、出量統計直方圖。以菜單選擇的主要形式為數據輸出結果,并以人機應答方式完成病房的選定、病情選定、床位選定和出入量項目選定。經過對數據的處理能夠為出入量記錄誤差控制程序提供必要圖表。
根據上述設計內容可知,心血管病人出入量記錄控制程序設計需充分考慮語言環境來選擇系統程序語言,以該語言為基礎對出入量記錄誤差控制程序進行編譯,根據基本操作序列編譯原理對病人基本信息、出入量項目、護士病情描述、心血管檢測要點等出入量記錄結構展開分析,并設立陷阱功能鍵節省了出入量記錄數據的錄入時間,為了提供程序設計必要信息,需對記錄數據進行處理,減少心血管病人出入量記錄誤差,由此完成心血管病人出入量記錄誤差控制技術的分析。
為了驗證心血管病人出入量記錄誤差控制技術的合理性進行了如下實驗。選擇某醫院病人24小時的出入量作為實驗數據,由于傳統程序的設計需要醫護人員逐一記錄病人在幾點幾分的出入量情況,而采用心血管病人出入量記錄控制程序設計可通過一鍵輸入,病人出入量即顯示在記錄單上,為此分別研究兩種出入量記錄誤差控制程序編譯、出入量記錄結構和誤差控制技術對程序運行效率的影響。
傳統程序采用C語言編譯,而對心血管病人出入量記錄控制程序采用具有特定參數的C++語言編譯。為了驗證不同編譯語言下兩種程序運行效率,將傳統程序與對心血管病人出入量記錄控制程序進行對比,結果如圖4所示。

圖4 不同編譯語言下兩種程序運行效率對比結果
由圖4可知:傳統程序采用C語言對程序進行編譯,運行效率呈曲線狀態,而對心血管病人出入量記錄控制程序采用具有特定參數的C++語言編譯,運行效率呈折線狀態。最初運行效率均在60%以上,能夠滿足系統預備運行需求。一旦開始編譯,兩種程序運行效率均有所下降,當編譯時間為10 s時,傳統程序運行效率比心血管病人出入量記錄控制程序運行效率高10%;當編譯時間為20 s時,心血管病人出入量記錄控制程序運行效率比傳統程序運行效率高60%;當編譯時間為52 s時,心血管病人出入量記錄控制程序運行效率達到最大,為92%,而傳統程序運行效率低于60%。隨著編譯時間的增加,兩種程序運行狀態趨近于穩定,但均比最初運行效率要低,心血管病人出入量記錄控制程序設計的最終運行效率為45%,滿足系統正常運行效率的30%標準。因此,使用特定參數C++語言對程序進行編譯運行效率較高。
心血管病人出入量記錄控制程序出入量記錄結構設計是以系統內存為單位集合全部數據,根據基本操作序列編譯原理構建關鍵數字索引,傳統程序設計是以護士站工作人員對數據進行統計,通過人工方式存儲到系統中。為了統計不同出入量記錄結構下兩種程序出入量記錄情況,將傳統程序與心血管病人出入量記錄誤差控制程序進行對比,結果如圖5所示。

圖5 不同出入量記錄結構下兩種程序出入量對比結果
由圖5可知:傳統程序設計是通過人工方式對數據進行統計的,出入量記錄比較粗糙呈折線式,而對心血管病人出入量記錄控制程序是以系統內存為單位統計全部數據的,出入量記錄較為詳細呈柱狀,降低了出入量記錄誤差。根據該記錄結果對程序運行效率進行對比,結果如表2所示。

表2 不同出入量記錄結構下兩種程序運行效率
由表2可知:在不同出入量記錄結構下的兩種程序運行效率相差較大,當時間為7~14點時,對病人出入量進行統計,采用傳統設計程序無法準確獲取病人的出入量數值,只能查看大致走向,出入量記錄誤差較大,導致程序運行效率降低;而心血管病人出入量記錄控制程序可準確獲取病人的出入量數值,出入量記錄誤差較小,程序運行效率較高。當時間為15~21點時,傳統設計程序已經沒有統計顯示,而心血管病人出入量記錄控制程序仍然保持高精準的病人出入量數據。當時間超過21點時,病人已經休息,入量項目較少,對于夜晚的出入量可待第二天早上7點進行統計。因此,以系統內存為單位集合全部數據,根據基本操作序列設置檢索關鍵詞的心血管病人出入量記錄控制程序運行效率較高。
傳統程序僅對病人基本信息進行設計,而心血管病人出入量記錄控制程序是對數據錄入、信息查詢和數據處理進行設計。為了驗證不同誤差控制界面下兩種程序運行效率,將傳統程序與對心血管病人出入量記錄控制程序進行對比,結果如圖6所示。

圖6 不同誤差控制界面下兩種程序運行效率對比結果
由圖6可知:在時間相同條件下,采用傳統設計的程序初始運行效率為0,之后呈上升—平穩—下降狀態,而心血管病人出入量記錄控制程序初始運行效率較高,之后呈下降—平穩—下降狀態。正是因為傳統程序缺乏對15~21點的數據統計,最初效率需從0開始,中間平穩運行狀態是病人只入不出的量值,當統計時間截止時,運行效率下降到0,增大了記錄誤差。由此可看出,心血管病人出入量記錄控制程序統計數值較多,能夠準確呈現出入量變化情況。因此,在誤差控制界面較為詳細的心血管病人出入量記錄控制程序運行效率較高,降低了出入量記錄誤差。
根據上述實驗內容可知,程序編譯、出入量記錄結構和誤差控制界面技術對程序運行效率具有較大影響,心血管病人出入量記錄控制程序分別采用具有特定參數的C++語言對程序進行編譯,根據基本操作序列編譯原理構建關鍵數字索引,對數據錄入、信息查詢和數據處理進行設計可有效提高程序運行效率。
心血管病人出入量記錄控制程序設計可將出入量表格與粘貼單合二為一,降低護士重復記錄的次數,提高出入量項目記錄精準度。在主治醫師與患者溝通時可通過查詢計算機準確了解患者病癥信息,使醫生更加快速、準確的對患者診治。雖然該程序的設計提高了運行效率,降低了出入量記錄誤差,但是卻無法保證系統的穩定性,因此,在后續研究中設計可以保持穩定運行的程序,提高心血管病人的治療效果。