文 騰,高經(jīng)緯**,張興平,高 云,魏 戌,王 佩,王 浩,陳紅玉,姚曉梅
(1.中國(guó)中醫(yī)科學(xué)院望京醫(yī)院 北京 100102;2.中國(guó)中醫(yī)科學(xué)院眼科醫(yī)院 北京 100040)
膝骨性關(guān)節(jié)炎(Knee Osteoarthritis,KOA)是骨科的多發(fā)及常見疾病[1],主要臨床表現(xiàn)為膝關(guān)節(jié)疼痛、無力和不同程度活動(dòng)受限,甚至畸形[2]。目前對(duì)于KOA的發(fā)病機(jī)制尚未十分明確,高齡、女性、肥胖是國(guó)內(nèi)外認(rèn)可度較為一致的危險(xiǎn)因素。在傳統(tǒng)中醫(yī)學(xué)概念中并沒有關(guān)于膝骨關(guān)節(jié)炎的中醫(yī)病名,根據(jù)本病的臨床表現(xiàn)及癥狀特征的表述,它包括在“骨痹”、“痹證”等范疇。傳統(tǒng)醫(yī)學(xué)認(rèn)為正虛衛(wèi)外不固是骨痹發(fā)生的內(nèi)在基礎(chǔ),感受外邪是骨痹發(fā)生的外在條件。本病發(fā)病在于本虛標(biāo)實(shí)。骨痹的形成與體質(zhì)因素、氣候條件、生活環(huán)境和飲食相關(guān)。因KOA在臨床上早期癥狀不明顯,出現(xiàn)明顯癥狀時(shí)通常處于疾病中晚期且需要通過關(guān)節(jié)置換手術(shù)進(jìn)行治療。但由于本病臨床上缺乏客觀的系統(tǒng)的有效的根治措施,因此,搜尋KOA致病影響因素,尋找有效的干預(yù)管理辦法已經(jīng)引起社會(huì)衛(wèi)生領(lǐng)域的重視。
我國(guó)目前還沒有膝骨性關(guān)節(jié)炎發(fā)病預(yù)測(cè)模型建立。為此,我們應(yīng)用C#編程技術(shù),對(duì)基于膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型[3]的自測(cè)軟件進(jìn)行開發(fā),為廣大患者普及相關(guān)知識(shí),在就診前支持患者自測(cè)并進(jìn)行初步判斷。
預(yù)測(cè)系統(tǒng)軟件以科學(xué)、專業(yè)、可靠、通用為特點(diǎn),以患者為中心,強(qiáng)調(diào)該軟件的使用價(jià)值。
系統(tǒng)數(shù)據(jù)處理模型為依靠臨床科研共享系統(tǒng)[4,5]產(chǎn)出的結(jié)論:膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型。經(jīng)過初步評(píng)估確認(rèn)具有良好的預(yù)測(cè)能力。
模型的數(shù)據(jù)來源來為中國(guó)中醫(yī)科學(xué)院望京醫(yī)院的醫(yī)療電子病歷。為了讓患者便于理解和操作,軟件的內(nèi)容上均翻譯成通俗的表達(dá)方式和特定詞語標(biāo)記注釋、說明。
本系統(tǒng)的開發(fā)在windows操作系統(tǒng)上正常運(yùn)行,滿足了社會(huì)廣大用戶的需求。軟件采取問卷式設(shè)計(jì),界面整潔清晰,按鈕規(guī)則明確,操作方便耐用,適合各年齡階層的用戶。
開發(fā)模型選擇為:快速原型模型[6]和迭代法通過對(duì)軟件的設(shè)計(jì)方案分析、開發(fā)難度預(yù)估、開發(fā)技術(shù)選擇和質(zhì)量評(píng)估等分析,對(duì)比各種開發(fā)模型的適用范圍,最終選擇應(yīng)用快速原型模型和迭代法結(jié)合的方式(圖1)。
圖1 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件開發(fā)模型流程
系統(tǒng)運(yùn)行基于Windows 操作系統(tǒng),利用.Net Framework 包含的強(qiáng)大代碼庫,借助于Visual Studio 2008 提供的開發(fā)環(huán)境,以C#語言來構(gòu)建程序框架(表1)。
表1 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件開發(fā)環(huán)境介紹
3.1.1 臨床資料
通過使用中國(guó)中醫(yī)科學(xué)院劉保延團(tuán)隊(duì)設(shè)計(jì)的臨床科研共享系統(tǒng)[4],在進(jìn)行臨床診療工作的真實(shí)世界中同步完成病例采集、數(shù)據(jù)提取、質(zhì)量控制、數(shù)據(jù)核查和標(biāo)準(zhǔn)化等工作。本課題共收集病例753 例,每位患者只參與研究一次,不進(jìn)行隨訪。本次研究病例中最小年齡為22 歲,最大為92 歲。男性人數(shù)為161 人,女性為592人。
3.1.2 研究方法
在全面獲取傳統(tǒng)醫(yī)學(xué)和現(xiàn)代醫(yī)學(xué)關(guān)于膝骨關(guān)節(jié)炎發(fā)病因素、癥狀、體征、查體及各種量表數(shù)據(jù)基礎(chǔ)上,結(jié)合文獻(xiàn)調(diào)查和專家頭腦風(fēng)暴法,并運(yùn)用有序Logistic回歸分析篩選出膝骨關(guān)節(jié)炎分級(jí)的影響因素,建立膝骨關(guān)節(jié)炎有序Logistic回歸分級(jí)模型,發(fā)現(xiàn)與膝骨關(guān)節(jié)炎分級(jí)相關(guān)的影響因素共計(jì)13 項(xiàng)。其中危險(xiǎn)因素為10項(xiàng),分別為:高齡、肥胖、病程長(zhǎng)、反復(fù)發(fā)作、下肢畸形、股四頭肌萎縮,同時(shí)WOMAC 指數(shù)、中醫(yī)證候量表積分、VAS評(píng)分也與膝骨關(guān)節(jié)炎分級(jí)程度呈正相關(guān)關(guān)系。保護(hù)因素為3 項(xiàng),包含單膝疼痛,疼痛范圍局限,此外膝關(guān)節(jié)活動(dòng)度也與膝骨關(guān)節(jié)炎分級(jí)程度呈負(fù)相關(guān)關(guān)系。
圖2 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件迭代流程
KOA 分類模型以X 線分級(jí)Ⅰ級(jí)、Ⅱ級(jí)、Ⅲ級(jí)、Ⅳ級(jí)為結(jié)局,基于篩選出的影響因素構(gòu)建KOA有序logistic回歸分類模型。
式中X1為年齡,X2為BMI 指數(shù),X3為疼痛持續(xù)時(shí)間,X4為是否反復(fù)發(fā)作,X5為晨僵情況,X6為中醫(yī)癥候量表,X7為Womac量表,X8為VAS疼痛標(biāo)尺,X9為下肢畸形,X10為股四頭肌萎縮情況,X11為活動(dòng)范圍,X12為疼痛側(cè)別,X13為疼痛范圍。
由多因素有序logistic回歸可得b(Ⅰ級(jí))=3.644,b(Ⅰ級(jí)、Ⅱ級(jí))=6.448,b(Ⅰ級(jí)、Ⅱ級(jí)、Ⅲ級(jí))=8.891。
模型公式為:
模型最終測(cè)評(píng)項(xiàng)共53 個(gè),標(biāo)準(zhǔn)測(cè)評(píng)過程為:用戶根據(jù)個(gè)人情況填寫所有測(cè)評(píng)項(xiàng),包括基本信息采集表13 項(xiàng)、中醫(yī)證候量表16 項(xiàng)、WOMAC 量表24 項(xiàng)。計(jì)算得到測(cè)評(píng)原始分。通過模型將測(cè)評(píng)原始分進(jìn)行轉(zhuǎn)化。按照模型結(jié)論將測(cè)評(píng)結(jié)果進(jìn)行快速分型。對(duì)所有測(cè)評(píng)項(xiàng)進(jìn)行收集、核查、信息轉(zhuǎn)化、處理、計(jì)算等一系列操作后,應(yīng)用膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型,得到預(yù)測(cè)結(jié)果。
3.4.1 界面簡(jiǎn)潔易懂
為保證界面簡(jiǎn)潔易懂,患者填寫思維連貫,本軟件先將測(cè)評(píng)項(xiàng)分為疼痛描述相關(guān)項(xiàng)及日?;顒?dòng)相關(guān)項(xiàng)。再于同一類測(cè)評(píng)項(xiàng)中,按手工輸入方式和選擇輸入方式分類,達(dá)到界面內(nèi)容簡(jiǎn)明、主題明確的目的。
3.4.2 內(nèi)容通俗化
將所有晦澀難懂、容易混淆的中醫(yī)名詞選出,經(jīng)過翻閱中醫(yī)經(jīng)典進(jìn)行名詞釋義后,由具備主任醫(yī)師職稱的中醫(yī)專家討論確認(rèn),最終確定替換的通俗詞語。結(jié)合部分問題注釋內(nèi)容,以便于普通患者的理解(表2)。
表2 中醫(yī)名詞通俗化及添加注釋內(nèi)容
3.4.3 軟件優(yōu)化
優(yōu)化數(shù)據(jù)收集界面操作:添加切換問題快捷鍵;用不同顏色提示用戶未填寫內(nèi)容及填錯(cuò)內(nèi)容;用預(yù)設(shè)值提示用戶填寫問題。
本軟件的目的是引導(dǎo)用戶填寫測(cè)評(píng)項(xiàng),最終得到預(yù)測(cè)等級(jí)及建議。因此初步設(shè)計(jì)為三大模塊即:登陸模塊、數(shù)據(jù)收集模塊及預(yù)測(cè)結(jié)果模塊。所有模塊盡量避免耦合,功能獨(dú)立(圖3、表3)。
圖3 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件系統(tǒng)結(jié)構(gòu)圖
表3 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件模塊設(shè)計(jì)
骨性關(guān)節(jié)炎分級(jí)預(yù)判系統(tǒng)的體系結(jié)構(gòu)由activity包、adapter 包、Questionnatire 包、Evaluate 包 組 成。activity 包封裝了圖形用戶接口的控制對(duì)象,提供用戶界面繪制及用戶交互相應(yīng)。Adapter 包封裝了調(diào)查問卷適配器,用來連接業(yè)務(wù)對(duì)象和人機(jī)界面,主要針對(duì)數(shù)據(jù)層,典型應(yīng)用是關(guān)系型數(shù)據(jù)庫和其他后端數(shù)據(jù)資源。Questionnatire包封裝了基本信息及體征評(píng)測(cè)項(xiàng)和癥狀評(píng)測(cè)項(xiàng)??紤]到軟件的擴(kuò)展性與可維護(hù)性,把每一個(gè)用戶封裝到一個(gè)單獨(dú)的類之中,每個(gè)評(píng)測(cè)項(xiàng)目,單獨(dú)設(shè)立接口,例如,基本信息及體征中,“下肢浮腫”評(píng)測(cè)項(xiàng),關(guān)聯(lián)的被測(cè)對(duì)象個(gè)體感受劃分為“無浮腫”、“按之微陷”、“按之凹陷”、“按之沒指”5種層次。Evaluate包封裝了評(píng)估結(jié)果展示類,最終根據(jù)評(píng)測(cè)結(jié)果劃分5 個(gè)等級(jí)分別為“0 級(jí):正?!薄ⅰ阿窦?jí):關(guān)節(jié)間隙可疑變窄,可能有骨贅”、“Ⅱ級(jí):有明顯的骨贅,關(guān)節(jié)間隙可疑變窄”、“Ⅲ級(jí):中等量骨贅,關(guān)節(jié)間隙變窄較明顯,有硬化性改變”、“Ⅳ級(jí):大量骨贅,關(guān)節(jié)間隙明顯變窄,嚴(yán)重硬化性病變及明顯畸形”。
3.7.1 軟件運(yùn)行環(huán)境(表4)3.7.2 軟件測(cè)試方法
表4 膝骨性關(guān)節(jié)炎預(yù)測(cè)軟件運(yùn)行基本配置
本軟件的測(cè)試方法為黑盒測(cè)試法。經(jīng)過邊界值法、錯(cuò)誤推測(cè)法及場(chǎng)景法的檢驗(yàn),證明軟件的運(yùn)行結(jié)果良好,符合需求說明書中的各項(xiàng)要求。
3.8.1 軟件操作流程圖(圖4)
圖4 軟件操作流程圖
3.8.2 界面展示(圖5)
圖5 用戶登錄
修改密碼方法是在用戶登錄界面輸入用戶名和密碼后,點(diǎn)擊修改密碼即可修改(圖6、圖7、圖8、圖9)。
圖6 用戶須知
圖7 信息采集
近幾十年來,我國(guó)居民生活水平提高顯著,飲食結(jié)構(gòu)和生活方式發(fā)生了巨大變化,肥胖和超重比例迅速增長(zhǎng),膝骨性關(guān)節(jié)炎發(fā)病水平也出現(xiàn)明顯升高,迫切需要一個(gè)能夠識(shí)別膝骨性關(guān)節(jié)炎高危人群及普及相關(guān)知識(shí)的適宜工具,這對(duì)防止減少膝骨性關(guān)節(jié)炎發(fā)生,遏制高昂的醫(yī)療費(fèi)用,都有著非常重要的公共衛(wèi)生學(xué)意義。
圖8 信息匯總表
圖9 預(yù)測(cè)結(jié)果反饋
關(guān)于膝骨性關(guān)節(jié)炎的預(yù)測(cè)模型,國(guó)外研究使用的方法多為logistic 回歸、支持向量機(jī)和機(jī)械模型等。2011 年英國(guó)諾丁漢大學(xué)建立的首個(gè)膝骨性關(guān)節(jié)炎預(yù)測(cè)模型[7]用來預(yù)測(cè)膝骨性關(guān)節(jié)炎的進(jìn)展。2014年鹿特丹的研究人員中通過對(duì)2628 名患病人群進(jìn)行隊(duì)列研究,首次證明了膝部X 線片中可疑的變性特征這一風(fēng)險(xiǎn)因素的預(yù)測(cè)價(jià)值[8]。2015年美國(guó)一項(xiàng)研究中開發(fā)出了交互式、個(gè)性化的膝骨性關(guān)節(jié)炎風(fēng)險(xiǎn)計(jì)算器,并在45名受試者中進(jìn)行使用,發(fā)現(xiàn)該模型具有良好的可接受性和可行性[9]。這些研究通過整合臨床資料、生物學(xué)指標(biāo)、遺傳因素等信息來構(gòu)建模型公式,以初步預(yù)測(cè)未來時(shí)間段內(nèi)膝骨性關(guān)節(jié)炎的發(fā)生率,臨床癥狀及影像學(xué)資料加重程度,以實(shí)現(xiàn)早期判斷高危人群的目的。臨床醫(yī)生也可以通過模型判斷出的高危因素針對(duì)個(gè)體或特定人群提供個(gè)性化的健康改善計(jì)劃,加以控制來降低膝骨性關(guān)節(jié)炎的發(fā)病率及減緩其演變的嚴(yán)重程度。
本軟件的開發(fā),探索了單病種預(yù)測(cè)模型的信息轉(zhuǎn)化和應(yīng)用,搭建了一條數(shù)據(jù)模型通往信息化應(yīng)用的橋梁。為多病種預(yù)測(cè)模型的集成、患者綜合測(cè)評(píng)及建議、醫(yī)療數(shù)據(jù)的采集和分析提供了有力支持。
本軟件主要功能為:將膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型用信息化方法集成到移動(dòng)端、電腦端,為疑似膝骨性關(guān)節(jié)炎患者提供一個(gè)更便捷、準(zhǔn)確的自測(cè)方式,為相關(guān)就醫(yī)提供參考及建議。
根據(jù)前期調(diào)研分析,本次軟件開發(fā)有如下特點(diǎn):①軟件工作流程簡(jiǎn)單、專業(yè)性高;②變更量大,需求復(fù)雜;③關(guān)鍵干系人與開發(fā)人員關(guān)系密切,支持度高。④技術(shù)成熟,開發(fā)難點(diǎn)少;⑤開發(fā)周期固定,預(yù)計(jì)3 個(gè)月時(shí)間。在開發(fā)中的作用主要體現(xiàn)在:需求調(diào)研階段因?qū)I(yè)性太強(qiáng),造成理解偏差。開發(fā)需求多變,主要集中在界面設(shè)計(jì)、內(nèi)容增添改、需求理解等方面。
為解決上述困難,我采取了應(yīng)用快速原型模型法和迭代法結(jié)合的模式。
同任何事物一樣,一個(gè)軟件產(chǎn)品或軟件系統(tǒng)也要經(jīng)歷孕育、誕生、成長(zhǎng)、成熟、衰亡等階段,一般稱為軟件生存周期(軟件生命周期)。經(jīng)過50余年的發(fā)展,現(xiàn)有的開發(fā)模型有:瀑布模型、螺旋模型、噴泉模型、增量模型、迭代模型、RUP、快速原型模型等。
快速原型法可以較好的解決瀑布模型的局限性,在經(jīng)過嚴(yán)謹(jǐn)全面的需求調(diào)研后,通過快速建立一個(gè)具備最終系統(tǒng)核心功能的初始版本,可以更直觀、清晰、形象的和各干系人溝通,吸引更準(zhǔn)確更具體的需求和更改意見。這樣就可以在具體開發(fā)和實(shí)現(xiàn)之前,評(píng)估設(shè)計(jì)方案是否合適,需求說明是否可靠,技術(shù)難點(diǎn)是否可以解決。之后進(jìn)入迭代模式,通過建立正式的管理機(jī)制和流程,加強(qiáng)監(jiān)控過程、變更管理、項(xiàng)目評(píng)估驗(yàn)證等環(huán)節(jié),整理正式文檔,嚴(yán)格控制進(jìn)度、成本、質(zhì)量。
在經(jīng)過對(duì)膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型的分析后,通過邀請(qǐng)醫(yī)學(xué)和軟件開發(fā)專家進(jìn)行集體討論和大腦風(fēng)暴的方法,形成初步方案和構(gòu)想。確認(rèn)軟件的需求說明、范圍及功能限制。然后進(jìn)行演化原型法進(jìn)行開發(fā)工作。將軟件要處理的數(shù)據(jù)域轉(zhuǎn)化為過程設(shè)計(jì)、模型設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)的集合。因?yàn)楸拒浖皇菆D形密集型或頻繁交互型程序(比如圖形處理軟件或3D引擎),所以不必重點(diǎn)保證交互型的流暢性,特選用圖形用戶界面的開發(fā)采用界面和業(yè)務(wù)邏輯分離的方法。相比較而言,該方法可以保證圖形界面的反復(fù)修改而對(duì)邏輯層干預(yù)較小。當(dāng)遇到添加注釋、名稱修改、格式修正等不涉及邏輯層的需求,就可以快速更新。
原型法包含三個(gè)步驟:第一步包括軟件圖形界面設(shè)計(jì),目的是確定界面的版式和內(nèi)容、屏幕活動(dòng)的順序及圖形排版的方法;第二步是第一步的擴(kuò)展,設(shè)計(jì)圖形界面與邏輯層的交互及數(shù)據(jù)配置,這一步的主要目的是論證軟件所有可能操作,用戶可以輸入成組的數(shù)據(jù),執(zhí)行數(shù)據(jù)、模擬過程并觀察結(jié)果,包括出錯(cuò)處理;第三步是軟件的實(shí)際運(yùn)行模型,目的是開發(fā)一個(gè)可發(fā)展成為最終軟件規(guī)模的模型。
因?yàn)楸鞠到y(tǒng)要求嚴(yán)格控制進(jìn)度、保證質(zhì)量、具備規(guī)范化的文檔資料,所以在原型法開發(fā)出初始版本后,軟件開發(fā)流程應(yīng)用迭代法。一個(gè)月為一次迭代周期,每次迭代進(jìn)行需求調(diào)研、分析、編碼、測(cè)試等階段,并產(chǎn)出一個(gè)可發(fā)布版本。實(shí)施中,在第一個(gè)月末,初始版本開發(fā)完畢,進(jìn)入迭代周期,在第二、第三個(gè)月末,完成了兩個(gè)正式版本。從宏觀講,可以將原型法包含于迭代法中。但是由于兩種方法關(guān)注的重點(diǎn)及管理方向的區(qū)別,故分開實(shí)施。經(jīng)過實(shí)踐表明,由快速原型法和迭代法來進(jìn)行項(xiàng)目管理,對(duì)邏輯清晰、設(shè)計(jì)模式固定、重要干系人聯(lián)系緊密的軟件開發(fā)活動(dòng)有較好的實(shí)施效果。
黑盒測(cè)試法區(qū)別于白盒測(cè)試法、代法走查等方法的重要特征是:黑盒測(cè)試以用戶的角度切入,從軟件的需求說明書入手,對(duì)輸入數(shù)據(jù)與輸出數(shù)據(jù)的對(duì)應(yīng)關(guān)系進(jìn)行測(cè)試。因?yàn)楸拒浖|(zhì)量要求的重點(diǎn)在界面是否明確、程序邏輯是否契合膝骨性關(guān)節(jié)炎分級(jí)預(yù)測(cè)模型、輸入數(shù)據(jù)是否限制、文本表達(dá)是否去專業(yè)化等方面。
通過邊界值分析測(cè)試了數(shù)據(jù)的有效性是否生效、所有值是否默認(rèn)為空、輸出是否標(biāo)準(zhǔn)。通過錯(cuò)誤推測(cè)法,檢測(cè)了軟件各項(xiàng)提示功能、通過添加各種措施避免了用戶可能出現(xiàn)的問題。通過場(chǎng)景法,對(duì)各種情況場(chǎng)景進(jìn)行了測(cè)試,各個(gè)環(huán)節(jié)均有良好的錯(cuò)誤處理功能。
本系統(tǒng)基于中國(guó)中醫(yī)科學(xué)院劉保延團(tuán)隊(duì)設(shè)計(jì)的臨床科研共享系統(tǒng)制作結(jié)構(gòu)化電子病歷,對(duì)我院患者中符合納入標(biāo)準(zhǔn)的病例進(jìn)行實(shí)時(shí)錄入,記錄到結(jié)構(gòu)化的臨床科研共享系統(tǒng)中。本軟件只預(yù)測(cè)膝骨性關(guān)節(jié)炎單病種、反饋結(jié)果后直接引導(dǎo)患者就醫(yī),但未收集實(shí)際就醫(yī)評(píng)價(jià),故應(yīng)用環(huán)節(jié)有限。
系統(tǒng)的可移植性:軟件的應(yīng)用平臺(tái)為windows 系統(tǒng),未來可集成到微信端、APP等使用度更高的應(yīng)用平臺(tái)中系統(tǒng)的功能拓展性:軟件功能可拓展性高,可集成多病種預(yù)測(cè)功能,通過數(shù)據(jù)模型的信息化、中醫(yī)數(shù)據(jù)的標(biāo)準(zhǔn)化,完成患者就診前的對(duì)相關(guān)醫(yī)學(xué)信息的了解和準(zhǔn)備。
系統(tǒng)的數(shù)據(jù)挖掘:軟件根據(jù)個(gè)人賬戶登錄,即可征得患者同意后將患者特征信息及反饋結(jié)果記錄在數(shù)據(jù)庫中。為模型的校準(zhǔn)提供依據(jù)、為大數(shù)據(jù)挖掘提供基礎(chǔ)。