吳芾 陳立 劉一丹 曹永志
摘要:組織能力驗證的機構(gòu)在向參測實驗室發(fā)送樣品時,必須檢驗樣品的穩(wěn)定性特性。為了減少能力驗證機構(gòu)在計算穩(wěn)定性時的人工差錯并提高檢測工作效率,在樣品穩(wěn)定性研究模型的基礎(chǔ)上,設(shè)計并實現(xiàn)了樣品穩(wěn)定性計算系統(tǒng)。首先整理了業(yè)務(wù)需求和安全需求,在此基礎(chǔ)上設(shè)計了系統(tǒng)流程圖、數(shù)據(jù)字典和數(shù)據(jù)庫ER圖并完成系統(tǒng)開發(fā)。系統(tǒng)交付后總體運行良好,符合需求方預(yù)期。
關(guān)鍵詞:能力驗證;樣品穩(wěn)定性;穩(wěn)定性計算系統(tǒng)
中圖分類號:TP311? ? ? 文獻標(biāo)識碼:A
文章編號:1009-3044(2020)35-0074-04
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
Design and Development of Samples Stability Calculate System
WU Fei, CHEN Li, LIU Yi-dan, CAO Yong-zhi
(Network and Information Center, Nanjing Institute of Technology, Nanjing 211167, China)
Abstract: The organization holds proficiency testing must test the stability of the samples when sending them to the participating laboratories. To reduce the manual calculation error and increase the efficiency of testing, a system is designed and developed based on the sample stability study model. First, the business requirements and security requirements are sorted out, and on this basis, the system flowchart, data dictionary and database ER diagram are designed and the system is developed. After the delivery of the system, the overall operation is sound, in line with the expectations of the demand side.
Key words: proficiency testing; stability of samples; samples stability calculate system
1 背景
能力驗證是利用實驗室間比對確定實驗室的檢測或校準(zhǔn)能力的過程。能力驗證機構(gòu)組織實驗室參加能力驗證測試時,需要向所有實驗室提供檢測樣品。在穩(wěn)定的待測樣品的基礎(chǔ)上產(chǎn)生的可疑結(jié)果才能反應(yīng)實驗室能力的差異,因此用于能力驗證的試樣的穩(wěn)定性很重要[1]。在向?qū)嶒炇野l(fā)送樣品前必須測量計算一定時間段內(nèi)的樣品穩(wěn)定性,為此相關(guān)組織制定了評估樣品穩(wěn)定性的研究模型[2]:
Y=[β0+β1X+ε]? ? ? ? ? ? ? ? ? ? (1)
在進行穩(wěn)定性研究時,X為時間,Y為標(biāo)準(zhǔn)樣品的特性量值。對于穩(wěn)定的標(biāo)準(zhǔn)樣品,[β1]的期望值為0。
[β0=Y-β1X]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(3)
線性回歸各點的標(biāo)準(zhǔn)差為:
[β1]的標(biāo)準(zhǔn)偏差:
如果[β1]小于t[(α,n-2)]×s([β1]),表示樣品穩(wěn)定,反之則不穩(wěn)定,其中n為穩(wěn)定性檢驗的次數(shù),[α]為t檢驗分位數(shù)置信水平。
文章將介紹在以上研究模型的基礎(chǔ)上,設(shè)計和開發(fā)穩(wěn)定性檢驗系統(tǒng)的過程。
2 需求整理
文章中的需求方原來使用Excel完成穩(wěn)定性計算工作,當(dāng)數(shù)據(jù)行數(shù),列數(shù)發(fā)生變化的時候需要手工調(diào)整公式,可能帶來的人為的差錯。而且各次測量計算結(jié)果的保存格式可能不一致,導(dǎo)致發(fā)布結(jié)果時產(chǎn)生歧義。經(jīng)過溝通,整理需求如表1所示。
需求方未提及安全需求,在國家和個人日益重視信息安全的背景下,建議程序增加安全運行模式。是否啟用安全模式由使用人員自行決定,默認使用。比較如表2所示。
3 系統(tǒng)設(shè)計
3.1 系統(tǒng)架構(gòu)
由于系統(tǒng)功能較為單一,不需要多人協(xié)作,且運行在個人電腦上,所以采用Windows桌面應(yīng)用程序?qū)崿F(xiàn)需求。
3.2 系統(tǒng)流程圖
根據(jù)需求分析,設(shè)計流程圖如圖1。
系統(tǒng)在登錄和保存結(jié)果兩個結(jié)點出現(xiàn)分支,安全模式將提供更安全的處理方式。系統(tǒng)運行在安全模式時,系統(tǒng)啟動需要登錄校驗身份,保存后要有禁止編輯功能,以防止結(jié)果中數(shù)據(jù)或檢驗人員被篡改。
3.3 系統(tǒng)功能模塊
系統(tǒng)主要分為5個功能模塊:登錄、數(shù)據(jù)錄入/導(dǎo)入、計算、結(jié)果保存和管理。
登錄功能主要實現(xiàn)在安全模式下的身份驗證。
數(shù)據(jù)錄入/導(dǎo)入功能主要用于手工錄入或從Excel文件導(dǎo)入實驗數(shù)據(jù),錄入時需要檢驗數(shù)據(jù)格式。
計算模塊主要根據(jù)引言中的模型計算待測樣品的穩(wěn)定性結(jié)果。
結(jié)果保存功能實現(xiàn)將實驗數(shù)據(jù)和計算結(jié)果保存為Excel文件。如果是安全模式,則提供sheet頁的保護功能,即禁止編輯sheet頁。如果在普通模式下運行,保存后的Excel文件可以自行修改。
管理模塊主要實現(xiàn)安全模式下的人員管理,包括新增檢驗員、修改登錄密碼、鎖定/解鎖檢驗員賬號和數(shù)據(jù)導(dǎo)出功能。所有的操作的日志記錄在數(shù)據(jù)庫中。
3.4 數(shù)據(jù)庫主要字段說明以及ER圖
為了實現(xiàn)安全模式,需要使用數(shù)據(jù)庫。數(shù)據(jù)庫中增加5張數(shù)據(jù)表,分別為:用戶表users、賬戶操作日志表userlog、保存日志表savelog、其他操作日志表otherlog和流水號計數(shù)器表serialcounter。
用戶表users的user_no字段為表userlog、savelog和actlog的user_no字段的外鍵。流水號計數(shù)器表serialcounter的serial_type字段為表userlog、savelog和actlog的serial_type的外鍵。
數(shù)據(jù)庫主要字段說明如表3所示。
為避免數(shù)據(jù)冗余以及數(shù)據(jù)插入、刪除和更新異常,數(shù)據(jù)庫設(shè)計達到第三范式。數(shù)據(jù)庫ER圖如圖2所示。
4 系統(tǒng)實現(xiàn)
考慮到系統(tǒng)運行在Windows環(huán)境中,且運行環(huán)境配置較低,選擇開發(fā)環(huán)境如下:
開發(fā)語言:Visual Basic.net。
IDE: Microsoft Visual Studio 2019。
數(shù)據(jù)庫: Access2010。
編譯環(huán)境:Windows10 32位操作系統(tǒng)。
系統(tǒng)功能較為單一,實現(xiàn)過程并不復(fù)雜,主要功能及界面實現(xiàn)如下。
4.1 加載配置文件
程序啟動時加載配置文件config.xml,包括:程序運行模式(安全模式、普通模式)、t分布(雙邊、單邊)、t分布置信區(qū)間(如95%)、計算過程中小數(shù)位數(shù)(3位)、安全模式下保存文件時是否記錄保護密碼(是、否)、本機用戶號號段范圍以及數(shù)據(jù)備份時需要導(dǎo)出的表名(users等)。
程序啟動時加載t分布的文件t_d.xml,系統(tǒng)提供t分布備查表。
對配置文件的修改在程序下次啟動時生效。
4.2 登錄功能
當(dāng)程序運行在安全模式的時候,啟動時默認打開登錄窗口,界面如圖3所示。
用戶編號和密碼文本框設(shè)置按鍵捕獲事件,按下回車鍵時調(diào)用“登錄”按鈕事件。用戶編號或密碼為空不能登錄。輸入后,前臺計算密碼hash值與數(shù)據(jù)庫中保存的hash值做比較,如果一致則認為密碼時正確的。如果密碼正確且賬戶狀態(tài)為“正?!眲t登錄成功。登錄的信息保存在父窗體的全局變量中。
4.3 輸入/導(dǎo)入以及計算
直接輸入測量結(jié)果時,第一列“分析時間”為固定列,其他的列可以自行增加或刪除。輸入列名點擊“增加列”即可增加一列。圖中的“苯”和“乙苯”列都是通過這種方式添加的??梢渣c擊“刪除列”從表格的最后一列開始刪除手工添加的列。
數(shù)據(jù)輸入完畢后,點擊“開始處理”按鈕開始計算各項指標(biāo)。最后一行計算結(jié)果>0表示待測樣品較為穩(wěn)定。
點擊“繼續(xù)輸入”可以清除計算結(jié)果。
點擊“保存”按鈕將界面數(shù)據(jù)保存為Excel文件。如果檢測內(nèi)容文本框為空或數(shù)據(jù)處理人文本框為空則不能保存。檢測內(nèi)容需要檢驗員手工輸入作為保存后文件的標(biāo)題。安全模式下,數(shù)據(jù)處理人取自登錄信息,否則由檢驗員手工輸入??紤]到用戶名可能重復(fù),在安全模式下數(shù)據(jù)處理人信息中應(yīng)包含用戶編號,如上圖中數(shù)據(jù)處理人中括號內(nèi)的1即用戶編號。
在安全模式下保存時,程序?qū)xcel的sheet頁增加保護功能,保護密碼為用戶的登錄密碼。
需要注意的是,為了避免檢驗員遺忘密碼導(dǎo)致無法對Excel文件解除保護,可以將保護密碼記錄在數(shù)據(jù)庫的savelog表中。是否記錄由配置文件config.xml中的配置項
可以采用導(dǎo)入Excel文件的方式導(dǎo)入數(shù)據(jù),如圖6所示。
點擊“打開”按鈕選擇Excel文件,導(dǎo)入后在Excel中的數(shù)據(jù)在程序窗體中展示。導(dǎo)入后不能在界面上修改。加載完畢后點擊“開始處理”計算穩(wěn)定性結(jié)果。
為了方便檢驗員查表,系統(tǒng)提供t分布備查表,該表格由系統(tǒng)啟動時加載t_d.xml生成。
4.4 管理功能
管理界面如圖8所示。
管理功能只有管理員(8888)可以使用。
新增用戶:輸入用戶名和密碼,點擊“增加”按鈕。增加成功后顯示對應(yīng)用戶號??紤]到用戶可能重名,所以單向增加的用戶編號是唯一標(biāo)識。用戶使用用戶號登錄,即上圖中的2號。由于各計算系統(tǒng)彼此獨立,為了防止用戶號重復(fù),增加時會讀取本機配置文件中的用戶號號段范圍,生成的用戶號不能超出此范圍。增加成功后記錄一條賬戶操作日志(userlog)。
修改密碼:輸入用戶號和新密碼后,點擊“修改”按鈕??紤]到只有管理員使用此功能,所以不要求輸入原密碼。修改成功后,將密碼的hash值存入用戶表users中,同時記錄一條賬戶操作日志(userlog)。
鎖定用戶:輸入用戶編號后,當(dāng)輸入框失去焦點時,顯示對應(yīng)的用戶信息。點擊“鎖定”或“解鎖”后完成操作。被鎖定的賬號不能登錄??紤]到用戶表、相關(guān)日志表及歷史計算結(jié)果的關(guān)聯(lián)性,系統(tǒng)不提供用戶刪除功能,無效的賬戶可以通過鎖定的方式禁止使用。當(dāng)然這個功能僅限于安全模式。
導(dǎo)出數(shù)據(jù):選擇導(dǎo)出路徑后,根據(jù)配置文件config.xml導(dǎo)出指定的數(shù)據(jù)表為csv文件;這些數(shù)據(jù)有兩個作用,一是數(shù)據(jù)庫數(shù)據(jù)的備份,二是用于管理員查找操作日志記錄。
參考文獻:
[1] 王承忠.實驗室間比對的能力驗證及穩(wěn)健統(tǒng)計技術(shù) 第四講 能力驗證試樣的均勻性和穩(wěn)定性檢驗[J].理化檢驗(物理分冊),2004,40(10):533-538.
[2] 李寧,郭健,王倩,等.趨勢分析法評價苯系物標(biāo)準(zhǔn)氣體的時間穩(wěn)定性[J].中國環(huán)境監(jiān)測,2012,28(5):130-133.
[3] CNAS-GL003:能力驗證樣品均勻性和穩(wěn)定性評價指南.pdf[S].2018.
[4] 金獻忠,鄭曙昭,丘寅.能力驗證樣品均勻性和穩(wěn)定性檢驗的統(tǒng)計方法[J].現(xiàn)代測量與實驗室管理,2003,11(4):35-37.
[5] 王冬妍,郭霞,李興權(quán).能力驗證樣品均勻性、穩(wěn)定性檢驗方法研究[J].品牌與標(biāo)準(zhǔn)化,2016(4):49-50.
[6] 李林元.能力驗證評價及其結(jié)果在實驗室質(zhì)量體系中的應(yīng)用[J].硬質(zhì)合金,2018,35(5):366-372.
[7] 張紅艷,王璐,華震宇,等.EXCEL在能力驗證樣品均勻性和穩(wěn)定性評價中的應(yīng)用[J].冶金分析,2015,35(4):77-81.
[8] 李明貴.MATLAB在能力驗證樣品均勻性和穩(wěn)定性評價中的應(yīng)用[J].電腦知識與技術(shù),2016,12(13):233-234.
[9] 崔曉斌.基于Access數(shù)據(jù)庫企業(yè)計量管理系統(tǒng)設(shè)計與開發(fā)[J].上海計量測試,2019,46(5):59-62.
【通聯(lián)編輯:謝媛媛】