醫(yī)院掛號系統(tǒng)設(shè)計說明書_第1頁
醫(yī)院掛號系統(tǒng)設(shè)計說明書_第2頁
醫(yī)院掛號系統(tǒng)設(shè)計說明書_第3頁
醫(yī)院掛號系統(tǒng)設(shè)計說明書_第4頁
醫(yī)院掛號系統(tǒng)設(shè)計說明書_第5頁
已閱讀5頁,還剩46頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

摘要隨著計算機(jī)的發(fā)展,越來越多的行業(yè)實現(xiàn)了管理的信息化和自動化,醫(yī)務(wù)行業(yè)也不例外。在很多醫(yī)院中,掛號作為醫(yī)院工作中最重要的一個環(huán)節(jié)還沒有完全實現(xiàn)信息化管理,因此本系統(tǒng)選擇醫(yī)院預(yù)約掛號為研究對象,以實現(xiàn)網(wǎng)上預(yù)約掛號、緩解醫(yī)院現(xiàn)場掛號難、提高醫(yī)院工作效率為目標(biāo)。本次設(shè)計采用C#語言及VS2013和MySQL為開發(fā)工具,并結(jié)合軟件工程的設(shè)計思想,以B/S為模式設(shè)計并實現(xiàn)了醫(yī)院預(yù)約掛號系統(tǒng),實現(xiàn)了患者的預(yù)約、查詢以及管理員對預(yù)約信息的管理等功能。醫(yī)院預(yù)約掛號系統(tǒng)有著很好的應(yīng)用前景,用它來代替醫(yī)院現(xiàn)場掛號,實現(xiàn)患者看病掛號網(wǎng)絡(luò)化是一個必然趨勢。隨著計算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,它的功能將會得到不斷的發(fā)展和完善。關(guān)鍵詞:C#;VS2013;數(shù)據(jù)庫;B/S模式;掛號

目錄21101可行性分析 1261571.1項目開發(fā)背景 1193201.2項目開發(fā)意義 1229771.3可行性研究的主要內(nèi)容 25421.3.1技術(shù)可行性 298031.3.2操作可行性 3238471.3.3經(jīng)濟(jì)可行性 373922項目開發(fā)計劃 414032.1編寫目的 456982.2項目概述 4323392.3功能描述 4185272.4項目開發(fā)計劃 5120792.5交付期限 522623需求分析 6314333.1系統(tǒng)需求分析 6278213.2系統(tǒng)流程圖 6129233.3數(shù)據(jù)描述 7303573.3.1數(shù)據(jù)流圖 7291623.3.2數(shù)據(jù)字典 8205933.4系統(tǒng)E-R圖 9127993.5需求規(guī)定 11190143.5.1功能需求 11260623.5.2性能需求 12140323.5.3運行需求 1299623.5.4其他需求 128764系統(tǒng)概要設(shè)計 1394454.1總體設(shè)計 1390054.1.1總體設(shè)計原理 13105334.1.2系統(tǒng)功能模塊設(shè)計 13230394.1.3功能分析 15285724.2數(shù)據(jù)庫設(shè)計 1594584.2.1數(shù)據(jù)庫概念設(shè)計 1557244.2.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 16291975詳細(xì)設(shè)計 20252465.1人機(jī)界面設(shè)計 2029865.1.1一般交互設(shè)計 20202835.1.2信息顯示設(shè)計 21316455.1.3數(shù)據(jù)輸入設(shè)計 21142445.2程序設(shè)計過程 2232615.2.1登陸界面設(shè)計 22194145.2.2程序流程設(shè)計 2514156測試 2974106.1測試描述 29196906.1.1測試目的 30202976.1.2測試方案 30293216.2測試計劃 3097646.2.1測試過程 3076656.2.2進(jìn)度安排及里程碑 32324116.2.3系統(tǒng)資源 33175586.2.4項目風(fēng)險分析 33148906.3測試計劃設(shè)計說明 34175526.3.1測試用例選取原則 34242976.3.2測試內(nèi)容及其選取策略 35129136.3.3功能測試 3788506.4醫(yī)院掛號系統(tǒng)覆蓋率測試 38232176.4.1邏輯覆蓋率 38324486.4.2語句覆蓋 41152276.4.3判定覆蓋 4181976.4.4條件覆蓋 4186746.5醫(yī)院掛號系統(tǒng)黑盒測試 42201706.5.1等價類劃分測試 42117226.5.2邊界值法 43102617設(shè)計總結(jié) 45230457.1心得體會 45280777.2存在的問題 4521114致謝 4613384參考文獻(xiàn) 471可行性分析1.1項目開發(fā)背景隨著計算機(jī)技術(shù)的飛速發(fā)展,計算機(jī)在系統(tǒng)管理中的應(yīng)用越來越普及,利用計算機(jī)實現(xiàn)各個系統(tǒng)的管理顯得越來越重要。對于一些大中型管理部門來說,利用計算機(jī)支持管理高效率完成日常事務(wù)的管理,是適應(yīng)現(xiàn)代管理制度要求、推動管理走向科學(xué)化、規(guī)范化的必要條件。我國由于人口多,進(jìn)而帶來醫(yī)院看病難的問題,由于人口眾多,需要排隊進(jìn)行掛號,這樣會浪費患者的時間,而且醫(yī)院的效率也不高。患者掛號是一項瑣碎、復(fù)雜而又十分細(xì)致的工作,患者數(shù)量之龐大,一般不允許出錯,如果實行手工操作,每天掛號的情況以及掛號時間等須手工填制大量的表格,這就會耗費醫(yī)院管理工作人員大量的時間和精力,患者排隊等候時間長,輾轉(zhuǎn)過程多,影響了醫(yī)療的秩序。如何利用現(xiàn)代信息技術(shù)使企業(yè)擁有快速、高效的市場反映能力和高效率,已是醫(yī)院特別關(guān)心的問題。盡快建立一個醫(yī)院預(yù)約掛號系統(tǒng),完善現(xiàn)代醫(yī)院的信息化管理機(jī)制,已成為醫(yī)院生存發(fā)展的當(dāng)務(wù)之急。所以,建立網(wǎng)上預(yù)約掛號系統(tǒng)勢在必行。本系統(tǒng)以醫(yī)院為背景,在認(rèn)真調(diào)研和分析了醫(yī)院的現(xiàn)狀之后,根據(jù)用戶的需求和各個功能的關(guān)系,作出了積極的設(shè)計方案。在新的管理資源和管理模式上,一定能使工作質(zhì)量、工作效率等得到提高,推動醫(yī)院發(fā)展的步伐。1.2項目開發(fā)意義開發(fā)醫(yī)院預(yù)約掛號系統(tǒng),使患者就診系統(tǒng)化,規(guī)范化,自動化,從而達(dá)到提高管理效率的目的。本系統(tǒng)開發(fā)設(shè)計思想是實現(xiàn)患者預(yù)約掛號的數(shù)字化。盡量采用現(xiàn)有軟硬件環(huán)境,及先進(jìn)的管理系統(tǒng)開發(fā)方案,提高系統(tǒng)開發(fā)水平和應(yīng)用效果的目的;系統(tǒng)應(yīng)符合醫(yī)院管理的規(guī)定,滿足日常管理的需要,并達(dá)到操作過程中的直觀,方便,實用,安全等要求;系統(tǒng)采用模塊化程序設(shè)計方法,這樣既便于系統(tǒng)功能的各種組合,又便于未參與開發(fā)的技術(shù)維護(hù)人員補充,維護(hù);系統(tǒng)應(yīng)具備數(shù)據(jù)庫維護(hù)功能,及時根據(jù)用戶需求進(jìn)行數(shù)據(jù)的添加,刪除,修改等操作。網(wǎng)上預(yù)約掛號系統(tǒng)是一種基于互聯(lián)網(wǎng)的新型掛號系統(tǒng),利用該預(yù)約掛號系統(tǒng),患者就可以在家里預(yù)約醫(yī)院的專家,而無需受排隊之苦。它能更好的改善就醫(yī)環(huán)境,簡化就醫(yī)環(huán)節(jié),節(jié)約就醫(yī)時間,真正體現(xiàn)了一切以病人為中心,一切從方便患者出發(fā),符合當(dāng)今醫(yī)院人性化服務(wù)溫馨服務(wù)的理念。目前,門診一直是阻撓醫(yī)院提高服務(wù)質(zhì)量的一個復(fù)雜環(huán)節(jié),特別是醫(yī)療水平高、門診量大的醫(yī)院。而造成門診量難以提高的因素主要有兩個方面:一是集中式掛號,就診人員流量不均,具有不確定性,有明顯的就診高峰和低谷。高峰期患者掛號排隊長,就診時間長,醫(yī)生熟人插號現(xiàn)象,環(huán)境擁擠混亂,醫(yī)生就診時間短、不仔細(xì)、服務(wù)差。而低谷期,醫(yī)生無患者可看,醫(yī)院資源浪費。二是專家號難掛,特別是名專家,會出現(xiàn)倒號、炒號現(xiàn)象,嚴(yán)重?fù)p害患者利益,影響醫(yī)院的聲譽。而采用網(wǎng)上預(yù)約掛號,可有效解決這一現(xiàn)象,通過網(wǎng)上有效的身份驗證,杜絕倒、炒專家號的現(xiàn)象,提高醫(yī)院門診服務(wù)質(zhì)量,取得良好的社會效益和經(jīng)濟(jì)效益。此外,患者到醫(yī)院就診前對醫(yī)院的相關(guān)信息了解不多,對所要掛的??漆t(yī)生的情況不太了解,只能憑經(jīng)驗和印象進(jìn)行選擇,具有較大的盲目性。而當(dāng)醫(yī)院開通網(wǎng)上預(yù)約掛號服務(wù)以后,求醫(yī)者只需坐在家中輕點下鼠標(biāo),就可以掛上醫(yī)院專家門診號,可以做到“足不出戶選醫(yī)生”。網(wǎng)上預(yù)約正悄然改變著求醫(yī)者的看病觀念。所以,預(yù)約看病應(yīng)用將越來越廣泛。1.3可行性研究的主要內(nèi)容可行性研究的目的,就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決??尚行匝芯繉嵸|(zhì)上是要進(jìn)行一次大大壓縮簡化了的系統(tǒng)分析和設(shè)計過程,也就是在較高層系上以較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計過程。在進(jìn)行可行性研究時首先要進(jìn)一步分析和澄清問題定義。在問題定義階段初步確定系統(tǒng)的規(guī)模和目標(biāo),如果正確就進(jìn)一步加以肯定,如果有錯誤就應(yīng)該及時改正,如果對目標(biāo)約束和限制,必須把他們一一列出來。從系統(tǒng)邏輯模型出發(fā),探索若干種可供選擇的主要解法(即系統(tǒng)實現(xiàn)方案)。對于每種解法都應(yīng)該仔細(xì)研究它的可行性,一般來說,至少應(yīng)該從下述三個方面研究每種解法的可行性。1.3.1技術(shù)可行性(1)對系統(tǒng)的簡要描述基于MicrosoftVisualStudio2013開發(fā)環(huán)境和使用MySQL數(shù)據(jù)庫開發(fā)的面向患者、醫(yī)院管理員和專家的網(wǎng)上信息管理系統(tǒng)。系統(tǒng)在安裝了WindowsXP操作系統(tǒng)的個人電腦上使用。(2)系統(tǒng)處理流程患者登錄該系統(tǒng)后,根據(jù)自己病情,查詢醫(yī)院內(nèi)自己所需的專家信息及專家簡歷,選中專家后,登記患者的姓名及電話號碼以及簡要病歷,并填寫預(yù)約時間?;颊哳A(yù)約信息反饋到醫(yī)院系統(tǒng)管理員后,管理員對預(yù)約信息進(jìn)行整理,產(chǎn)生預(yù)約清單。預(yù)約清單開放給醫(yī)院預(yù)約掛號號碼發(fā)放處和醫(yī)院內(nèi)各專家,醫(yī)院預(yù)約掛號號碼發(fā)放處根據(jù)預(yù)約清單打印并在預(yù)約當(dāng)日按照預(yù)約清單發(fā)放掛號號碼,醫(yī)院內(nèi)各專家可以進(jìn)入系統(tǒng)根據(jù)預(yù)約清單查詢預(yù)約自己的患者的數(shù)量及患者的簡要病歷。1.3.2操作可行性操作可行性主要研究系統(tǒng)的操作方式在該用戶組織內(nèi)是否可行。在當(dāng)前的社會條件下,Internet網(wǎng)已經(jīng)在中國全面覆蓋,在中國各地,均可以通過硬件設(shè)備聯(lián)網(wǎng)。而且各商業(yè)組織也擁有屬于自己的內(nèi)部局域網(wǎng),所以該系統(tǒng)可以實現(xiàn)聯(lián)網(wǎng)。該系統(tǒng)在聯(lián)網(wǎng)情況下,可以通過PC機(jī)訪問系統(tǒng)的數(shù)據(jù),所以該系統(tǒng)的操作方式符合該用戶組織。而且本系統(tǒng)操作方法簡單,只需掌握基本上網(wǎng)知識,用戶即可以輕易學(xué)會使用方法及操作流程。系統(tǒng)管理員需要進(jìn)行簡單培訓(xùn)。1.3.3經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性主要研究該系統(tǒng)的經(jīng)濟(jì)效益能否超過它的開發(fā)成本。目前在中國,到醫(yī)院就醫(yī)的人流量是非常龐大的,所以人們對醫(yī)院的依賴性非常強(qiáng)。在這樣的背景下,為醫(yī)院設(shè)計這樣的一個系統(tǒng),其經(jīng)濟(jì)效益是十分可觀的而且取消了人們就醫(yī)掛號的煩惱。又由于通過網(wǎng)絡(luò)傳遞信息可以不受距離的限制,因此可以節(jié)省大量的人力和物力,方便管理,由此可以減少不必要的開支,同時該系統(tǒng)可以提高醫(yī)院的執(zhí)行效率,即提高了醫(yī)院的經(jīng)濟(jì)效益,所以從經(jīng)濟(jì)上完全是可行的。

2項目開發(fā)計劃2.1編寫目的此系統(tǒng)在可行性分析的基礎(chǔ)上,進(jìn)一步的說明對醫(yī)院預(yù)約掛號系統(tǒng)的要求,準(zhǔn)確的定義出醫(yī)院預(yù)約掛號系統(tǒng)要完成的任務(wù),確定該系統(tǒng)要完成哪些工作,使系統(tǒng)盡可能的滿足用戶的要求,盡可能的簡單方便的運行。2.2項目概述醫(yī)院掛號系統(tǒng)主要功能包括:后臺管理和前臺操作,其中:后臺管理主要包括:用戶管理、預(yù)約信息管理、專家信息管理、相關(guān)業(yè)務(wù)的查詢和系統(tǒng)維護(hù)等;用戶管理:在數(shù)據(jù)庫中存儲有各角色用戶的信息信息,當(dāng)某個角色的信息需要變化是時,可以隨時進(jìn)行信息的變更包括增加、刪除、修改等功能,同時數(shù)據(jù)庫中信息相應(yīng)變化,并保持?jǐn)?shù)據(jù)的時效性和完整性。預(yù)約信息管理主要包括:隨時查詢患者的預(yù)約信息,如患者姓名、病例、所屬科室等,而且可及時更新數(shù)據(jù)庫數(shù)據(jù)。專家信息管理主要包括:專家信息的增、刪、改、查等。在需要時(可每隔一個時間段查詢一次)查詢預(yù)約該專家的患者數(shù)量及各方面的情況,如預(yù)約量超過專家的可以預(yù)約的人數(shù)后(大于某一自定的數(shù)量)時,可生成預(yù)約名額已滿報告,方便患者在進(jìn)行預(yù)約時查看可以有效防止預(yù)約成功由于人數(shù)原因而不能就診的情況。2.3功能描述1.預(yù)約掛號實現(xiàn)患者從網(wǎng)上直接預(yù)約掛號。預(yù)約的時候需要填寫患者的姓名、預(yù)約日期、電話以及簡單的病情癥狀。2.預(yù)約查詢預(yù)約完成后患者可以查詢自己的預(yù)約信息,當(dāng)患者想改變專家則可取消本次預(yù)約。3.取消預(yù)約患者查詢到自己的預(yù)約信息后,可以從次功能對先前的預(yù)約進(jìn)行取消操作。4.登錄管理員以及專家用戶可以從登錄功能模塊進(jìn)行登錄而患者通過注冊可以獲得登錄權(quán)限進(jìn)而進(jìn)行一系列操作。5.整理專家信息管理員登錄以后可以對用戶進(jìn)行添加、刪除和修改,實現(xiàn)對用戶的管理。6.調(diào)配專家管理員登錄后通過次模塊可以查看患者預(yù)約信息,并對患者預(yù)約的專家進(jìn)行調(diào)配。7.門診流量統(tǒng)計管理員登錄后可以通過次模塊對每天的預(yù)約人數(shù)進(jìn)行統(tǒng)計并導(dǎo)出。8.專家查詢專家用戶登錄以后可以查詢預(yù)約自己的患者信息。通過查詢患者信息,可以對工作有一個合理的安排與準(zhǔn)備。2.4項目開發(fā)計劃1.任務(wù)分解分三個大的階段進(jìn)行開發(fā)第一階段完成本系統(tǒng)的數(shù)據(jù)流圖跟E-R圖。第二階段完成概要設(shè)計跟詳細(xì)設(shè)計。第三階段書寫文檔。2.關(guān)鍵問題各模塊之間的聯(lián)系和后臺數(shù)據(jù)庫的完成。使用目前的設(shè)備與現(xiàn)有開發(fā)技術(shù)完全可以開發(fā)出該系統(tǒng),總的來說該項目沒有較大的技術(shù)難點與其他的一些風(fēng)險因素。對于出現(xiàn)的一些小難點總都能得到解決。2.5交付期限本系統(tǒng)的開發(fā)時限為兩個星期,該系統(tǒng)的交付期限為2015年12月25日。

3需求分析3.1系統(tǒng)需求分析目前,門診一直是困擾醫(yī)院提高服務(wù)質(zhì)量的一個復(fù)雜環(huán)節(jié),特別是醫(yī)療水平高、門診量大的醫(yī)院,而造成門診質(zhì)量難以提高的因素主要有兩方面:

一方面集中式掛號(現(xiàn)在流行的分層掛號只是相對而言一個范圍較小的集中式掛號),就診人員流量不均、具有不確定性,有明顯的就診高峰和低谷(表現(xiàn)在整個醫(yī)院不同門診時間段及同科室的不同時間段)。高峰期病人掛號排隊長,就診時間長,醫(yī)生熟人插號現(xiàn)象,環(huán)境擁擠混亂,醫(yī)生問診時間短、不仔細(xì)、態(tài)度差。而低谷期,醫(yī)生無病人看、溜號,醫(yī)院資源浪費。

另一方面專家號(特別是名專家號)難掛,出現(xiàn)倒號、炒號現(xiàn)象,嚴(yán)重?fù)p害病人利益,影響到醫(yī)院的聲譽。而采用網(wǎng)上預(yù)約掛號,可有效的解決這一現(xiàn)象,還通過有效的身份驗證,杜絕倒、炒專家號的現(xiàn)象,提高醫(yī)院門診服務(wù)質(zhì)量,取得良好的社會效益和經(jīng)濟(jì)效益。

為了解決這一問題,我們需要一種能夠方便快捷的掛號方式來滿足各方面的需求,減少排隊掛號的痛苦和時間的浪費,而本課題所研究的基于JSP的醫(yī)院網(wǎng)上掛號預(yù)約系統(tǒng)正好是為了解決這一問題而設(shè)計的方案,因此,本系統(tǒng)擁有很大的用戶需求。3.2系統(tǒng)流程圖系統(tǒng)流程圖通過圖形的形式描述系統(tǒng)的各功能模塊以及各個權(quán)限的操作者之間的交互情況,如下圖3.1所示。

門診流量統(tǒng)計報告患者登陸程序用戶注冊顯示專家信息專家查詢程序門診流量統(tǒng)計報告患者登陸程序用戶注冊顯示專家信息專家查詢程序管理員管理程序顯示治療情況患者預(yù)約信息用戶信息管理用戶注冊患者登陸程序患者登陸程序用戶注冊專家查詢程序顯示專家信息顯示治療情況管理員管理程序門診流量統(tǒng)計報告管理員管理程序顯示治療情況顯示專家信息專家查詢程序?qū)<也樵兂绦蝻@示專家信息顯示治療情況管理員管理程序門診流量統(tǒng)計報告管理員管理程序顯示治療情況顯示專家信息專家查詢程序 圖3.1系統(tǒng)流程圖3.3數(shù)據(jù)描述3.3.1數(shù)據(jù)流圖數(shù)據(jù)流圖是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動到輸出的過程中所經(jīng)受的變換。數(shù)據(jù)流圖中沒有任何具體的物理部件,它只是描繪數(shù)據(jù)在軟件中流動和被處理的邏輯過程。數(shù)據(jù)流圖有四種基本符號:正方形表示數(shù)據(jù)的源點或終點;圓角矩形代表變換數(shù)據(jù)的處理;開口矩形代表數(shù)據(jù)存儲;箭頭表示數(shù)據(jù)流。醫(yī)院網(wǎng)絡(luò)預(yù)約掛號系統(tǒng)中需要處理的信息有登錄信息,專家信息以及患者預(yù)約信息,根據(jù)數(shù)據(jù)信息的流向畫出本系統(tǒng)的數(shù)據(jù)流圖。醫(yī)院預(yù)約掛號系統(tǒng)頂層數(shù)據(jù)流圖如下圖3.2所示。預(yù)約系統(tǒng)預(yù)約系統(tǒng)患者專家管理員預(yù)約信息登錄信息反饋信息登錄信息圖3.2頂層數(shù)據(jù)流圖3.3.2數(shù)據(jù)字典數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理的關(guān)系,數(shù)據(jù)字典則是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典通常包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲、數(shù)據(jù)處理五部分,其中數(shù)據(jù)項是數(shù)據(jù)的最小組成單位,若干個數(shù)據(jù)項可以組成一個數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定義描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。根據(jù)數(shù)據(jù)流圖,得出了相應(yīng)的數(shù)據(jù)字典卡片,每張卡片上主要應(yīng)該包括名字、描述、定義。名稱:預(yù)約信息別名:預(yù)約報表描述:患者預(yù)約時填寫的信息定義:患者姓名+專家姓名+患者身份證+病歷+科室+日期+患者電話位置:輸出到打印機(jī)名稱:預(yù)約信息別名:預(yù)約報表描述:患者預(yù)約時填寫的信息定義:患者姓名+專家姓名+患者身份證+病歷+科室+日期+患者電話位置:輸出到打印機(jī)患者清單名稱:管理員登陸信息別名:管理員信息描述:系統(tǒng)管理員的登陸信息定義:用戶名+密碼+用戶權(quán)限位置:名稱:治療信息別名:患者治療情況描述:患者預(yù)約完成就診后的信息定義:患者姓名+專家姓名+科室+治療日期+治療情況位置:輸出到打印機(jī)治療清單名稱:專家信息別名:患者預(yù)約查詢信息描述:患者掛號時查詢的各個專家的信息定義:專家姓名+專家號+專家性別+科室+專家特長+預(yù)約人數(shù)+當(dāng)前人數(shù)+專家電話位置:顯示在患者客戶端保存到磁盤3.4系統(tǒng)E-R圖為了把用戶的數(shù)據(jù)清楚、準(zhǔn)確地描述出來,系統(tǒng)分析員通常要建立一個概念數(shù)據(jù)模型。概念結(jié)構(gòu)獨立于支持?jǐn)?shù)據(jù)庫的DBMS,具有能充分反映現(xiàn)實世界、易于理解、易于更動、易于向關(guān)系、網(wǎng)狀或?qū)哟蔚雀鞣N數(shù)據(jù)模型轉(zhuǎn)換??筛鶕?jù)實體間的關(guān)系和屬性得到E-R圖。E-R圖中的三個基本符號:矩形表示實體型,矩形框內(nèi)寫明實體名;橢圓形表示屬性,并用無向邊將其與相應(yīng)的實體型連接起來;菱形表示聯(lián)系,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體型連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型(1:1,1:n或m:n)。醫(yī)院預(yù)約掛號系統(tǒng)是針對醫(yī)院管理員,醫(yī)院專家和患者的系統(tǒng)。所以,在本系統(tǒng)中有患者、系統(tǒng)管理員、醫(yī)院專家三個實體?;颊咴陬A(yù)約的時候必須填寫相關(guān)的預(yù)約信息,即患者姓名、身份證號、聯(lián)系方式、預(yù)約時間、預(yù)約的專家以及患者簡單病情癥狀,這些都是“患者”實體的屬性。系統(tǒng)管理員有自己的登錄用戶名和密碼,還可以修改自己的密碼,這些是“管理員”實體的屬性。專家為了能讓在網(wǎng)上預(yù)約的患者清晰的了解自己,所以系統(tǒng)里有專家的姓名、電話、科室、編號、特長、可以預(yù)約的人數(shù),已經(jīng)預(yù)約的人數(shù),專家進(jìn)系統(tǒng)查詢預(yù)約患者信息時還需要登錄系統(tǒng),所以專家還有登錄系統(tǒng)所需要的用戶名和密碼,這些是“專家”實體的屬性?;颊呒捌鋵傩匀缦聢D3.3所示。

患者患者患者姓名身份證專家姓名科室病例電話圖3.3患者實體及其屬性圖管理員及其屬性如下圖3.4所示。管理員管理員用戶名密碼權(quán)限圖3.4管理員實體及其屬性圖專家及其屬性如下圖3.5所示。專家專家專家號性別科室專家特長預(yù)約人數(shù)當(dāng)前人數(shù)專家電話專家姓名圖3.5專家實體及其屬性圖通過以上描述的各個實體的屬性圖,這樣就可以了解系統(tǒng)的實體信息,實體屬性圖中描述了各個實體的屬性,這些也是在進(jìn)行系統(tǒng)操作時可以得到的信息。這是以需求說明為基礎(chǔ)設(shè)計的局部概念模型,然后以這些局部模型為基礎(chǔ)集成為一個全局的概念模型,在概念模型設(shè)計中多是采用這種自底向上的設(shè)計方式,稱為系統(tǒng)集成法。分析得出系統(tǒng)中實體屬性后,每個實體之間都有一定的聯(lián)系,“管理員”實體與“專家”實體之間的關(guān)系為管理員管理專家,“管理員”與“患者”實體之間的關(guān)系是管理員管理患者的預(yù)約信息,“專家”與“患者”兩實體之間的關(guān)系為專家對患者進(jìn)行診治。所以得出的醫(yī)院預(yù)約掛號系統(tǒng)E-R圖如圖3.6所示?;颊邔<抑委熜畔⒒颊邔<抑委熜畔⒅委烴1圖3.6醫(yī)院預(yù)約掛號系統(tǒng)E-R圖3.5需求規(guī)定3.5.1功能需求醫(yī)院預(yù)約掛號系統(tǒng)主要實現(xiàn)一下幾部分功能:內(nèi)部人員權(quán)限管理,預(yù)約掛號,門診流量統(tǒng)計,公告欄管理,專家信息管理。內(nèi)部人員權(quán)限管理模塊:管理員以及專家的登錄以及修改密碼。管理員可以從登錄模塊進(jìn)入系統(tǒng)對預(yù)約信息以及專家基本信息進(jìn)行整理。專家可以從登錄模塊進(jìn)入系統(tǒng)查詢患者預(yù)約情況。預(yù)約掛號模塊:全國各地患者可以通過此模塊進(jìn)行預(yù)約掛號,并填寫自己的掛號信息??梢圆樵冏约合惹暗念A(yù)約信息,也可以通過此系統(tǒng)取消先前的預(yù)約。門診流量統(tǒng)計:記錄每天門診的患者流量,對其進(jìn)行統(tǒng)計。專家信息管理:管理員可以對醫(yī)院專家的信息進(jìn)行增加、修改和刪除。3.5.2性能需求統(tǒng)應(yīng)具有配置靈活、易于維護(hù)、便于擴(kuò)展、性能可靠等突出優(yōu)點,支持面向?qū)ο蟮拇笮蛿?shù)據(jù)庫系統(tǒng)。如:SQLServer等,可處理大容量數(shù)據(jù),并具有高安全性和可靠性。1.時間特性操作響應(yīng)時間一般在1~3秒之內(nèi),隨之?dāng)?shù)據(jù)量的增大,操作的響應(yīng)時間就要延長。2.數(shù)據(jù)精度各種數(shù)據(jù)的輸入,輸出要滿足各種對數(shù)據(jù)精度的要求,嚴(yán)格按照系統(tǒng)要求的格式。3.適應(yīng)性適應(yīng)現(xiàn)有Windows系統(tǒng)的需求,并有可能適應(yīng)更高級別的系統(tǒng)。3.5.3運行需求1.用戶界面用戶界面簡單直觀,一目了然,給用戶帶來極大的便利,讓用戶能夠簡單直接的運用本系統(tǒng)2.硬件接口不需要特定的硬件或硬件接口進(jìn)行支撐,一般微機(jī)均可運行。3.軟件接口運行于WindowsXP或者更高版本的操作系統(tǒng)上。3.5.4其他需求1.保密需求:必須輸入相關(guān)的正確的用戶名和密碼才能進(jìn)入系統(tǒng),并且不同的用戶選擇相應(yīng)的權(quán)限才能登錄成功。2.數(shù)據(jù)要求:對于患者和專家的聯(lián)系電話,必須有嚴(yán)格的位數(shù)限制,經(jīng)過分析研究,聯(lián)系電話位數(shù)必須限制11位。3.身份證要求:為杜絕無關(guān)人員對系統(tǒng)進(jìn)行惡意的破壞,在患者預(yù)約掛號時,必須填寫自己真實的18位身份證號,輸入的位數(shù)不對以及輸入的身份證格式不對,系統(tǒng)則會提示身份證輸入有誤,不予存到系統(tǒng)數(shù)據(jù)庫里,預(yù)約失敗。4.可維護(hù)性:平時由管理人員可以維護(hù),遇到大問題或難解決的問題由開發(fā)人員進(jìn)行維護(hù)。5.可擴(kuò)展性:在系統(tǒng)使用過程中,如果有醫(yī)院在預(yù)約掛號方面有新的要求,則應(yīng)能在本系統(tǒng)中進(jìn)行擴(kuò)展,增加新的功能。4系統(tǒng)概要設(shè)計4.1總體設(shè)計4.1.1總體設(shè)計原理經(jīng)過需求分析,已經(jīng)清楚了系統(tǒng)所要完成的全部功能,現(xiàn)在決定“怎么做”,總體設(shè)計的基本目的就是回答“概括的說,系統(tǒng)應(yīng)該如何實現(xiàn)?”這個問題。因此總體設(shè)計又稱為概要設(shè)計或初步設(shè)計。通過這個階段的工作,將劃分出組成該系統(tǒng)的物理元素——程序、文件、數(shù)據(jù)庫、人工過程和文檔等,但是這些物理元素仍然處于黑盒子級別。總體設(shè)計階段的另一項重要任務(wù)是設(shè)計軟件的結(jié)構(gòu),也就是要確定系統(tǒng)中每個程序是由哪些模塊組成,以及這些模塊間的相互關(guān)系??傮w設(shè)計過程首先要尋找實現(xiàn)目標(biāo)系統(tǒng)的的各種不同的方案,需求分析階段得到的數(shù)據(jù)流圖是設(shè)想的各種可能方案的的基礎(chǔ),然后從這些供選擇的方案中選取若干個合理的方案,為每個合理的方案都準(zhǔn)備一份系統(tǒng)流程圖。然后分析比較這些合理的方案,選出最佳的方案,進(jìn)一步為這個最佳方案設(shè)計軟件結(jié)構(gòu),設(shè)計出初步的軟件結(jié)構(gòu)后還要進(jìn)行多方改進(jìn),從而得到更合理的結(jié)構(gòu),進(jìn)行數(shù)據(jù)庫設(shè)計。進(jìn)行總體設(shè)計,可以站在全局高度上,花較少成本,從較抽象的層次上分析對比多種可能的系統(tǒng)實現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的軟件結(jié)構(gòu),從而用較低成本開發(fā)出較高質(zhì)量的軟件系統(tǒng)。4.1.2系統(tǒng)功能模塊設(shè)計在需求分析的時候已經(jīng)對系統(tǒng)的的功能進(jìn)行了初步分析,在這里對系統(tǒng)功能進(jìn)行詳細(xì)的設(shè)計。由于系統(tǒng)中面向的是醫(yī)院的系統(tǒng)管理員,醫(yī)院的坐診專家,以及廣大患者,所以對系統(tǒng)分為三大主功能模塊,即管理、專家、患者三大主功能模塊。管理模塊是針對管理員對系統(tǒng)的管理進(jìn)行設(shè)計的功能模塊,管理員需要進(jìn)行登錄系統(tǒng)后方可進(jìn)行系統(tǒng)信息管理,所以首先要有登錄模塊。管理員登錄系統(tǒng)后需要對專家的信息進(jìn)行增加、刪除和修改,所以在此主功能模塊下設(shè)計了一個整理專家信息模塊,管理員可以通過此模塊對專家信息進(jìn)行管理。管理員還需要對每天患者預(yù)約的信息進(jìn)行查看整理,所以設(shè)計了一個調(diào)配專家,調(diào)配專家模塊用于當(dāng)患者預(yù)約的專家在預(yù)約當(dāng)日臨時有事不能按時坐診的話,管理員可以通過此模塊給相關(guān)患者進(jìn)行專家調(diào)配,就是給相關(guān)預(yù)約患者調(diào)配一個與患者預(yù)約的專家同科室的專家,然后保存到數(shù)據(jù)庫里,以便患者查詢預(yù)約信息。系統(tǒng)要求有一個統(tǒng)計門診流量的功能,統(tǒng)計每天預(yù)約的人數(shù),所以在管理模塊下設(shè)計了一個統(tǒng)計門診流量的功能模塊。在主頁面有一個公告欄,來公示醫(yī)院的通知以及醫(yī)院的新聞動態(tài),公告欄由管理員管理,所以在管理主功能模塊下設(shè)計了一個公告欄模塊。專家主功能模塊下設(shè)計了一個專家查詢模塊,專家從此模塊查詢患者預(yù)約信息。專家登錄系統(tǒng)則從管理模塊下的登錄模塊進(jìn)行登錄,登錄的時候選擇登錄相應(yīng)的登錄權(quán)限。患者主功能模塊下設(shè)計了三個分模塊:預(yù)約、查詢信息和取消預(yù)約?;颊邚木W(wǎng)上進(jìn)行預(yù)約掛號時,需要填寫預(yù)約的各種信息,患者可以進(jìn)入預(yù)約模塊填寫自己的預(yù)約信息,并保存,預(yù)約成功。當(dāng)患者預(yù)約成功后,患者想查詢先前的預(yù)約信息,則需要一個查詢模塊,所以在患者主功能模塊下設(shè)計了一個查詢信息模塊。當(dāng)患者在預(yù)約當(dāng)日有事不能按時就診,患者需要取消先前的預(yù)約,所以在患者主功能模塊下設(shè)計了一個取消預(yù)約的模塊。醫(yī)院預(yù)約掛號系統(tǒng)的功能模塊如下圖4.1所示。醫(yī)院預(yù)約掛號系統(tǒng)醫(yī)院預(yù)約掛號系統(tǒng)管理員專家患者登錄用戶管理統(tǒng)計門診流量治療信息管理登錄預(yù)約信息查詢登錄注冊預(yù)約專家取消預(yù)約對患者治療圖4.1系統(tǒng)功能模塊圖

4.1.3功能分析1.登錄:當(dāng)管理員、專家及患者用戶需要進(jìn)入系統(tǒng)時,可以從登錄模塊輸入用戶名和密碼,并選擇自己權(quán)限進(jìn)行登錄。當(dāng)輸入錯誤的信息時系統(tǒng)拒絕訪問。2.統(tǒng)計門診流量:管理員可以用此功能進(jìn)行每天預(yù)約的患者數(shù)量,做出統(tǒng)計。3.調(diào)配專家:當(dāng)患者預(yù)約的專家在預(yù)約的時間臨時有事情不能給患者看病的情況下,管理員可以對此患者進(jìn)行專家調(diào)配,調(diào)配為同一科室的專家。4.整理專家信息:管理員通過此功能添加、修改和刪除專家信息,及時更細(xì)醫(yī)院里專家的信息,以方便患者進(jìn)行預(yù)約。5.專家查詢:專家用戶登錄系統(tǒng)后,進(jìn)入到查詢信息模塊,查詢預(yù)約自己的患者信息,以方便專家做好合理的安排和準(zhǔn)備。6.預(yù)約:患者進(jìn)入系統(tǒng)后,可以查看各個科室的各個專家信息,根據(jù)自己的病情預(yù)約適合的專家。7.查詢信息:當(dāng)患者預(yù)約完畢后,可以通過查詢功能,對自己先前的預(yù)約信息進(jìn)行查詢、核對。8.取消預(yù)約:當(dāng)患者臨時有事不能到醫(yī)院看病時,可以通過查詢信息查詢到自己的預(yù)約信息,然后取消自己先前的預(yù)約。4.2數(shù)據(jù)庫設(shè)計4.2.1數(shù)據(jù)庫概念設(shè)計數(shù)據(jù)庫一般分為三級模式:外模式、模式和內(nèi)模式。外模式也就是不同用戶所對的數(shù)據(jù)視圖,它將數(shù)據(jù)庫內(nèi)部抽象的數(shù)據(jù)及其互相之間的關(guān)系表示為簡單、直觀的應(yīng)用界面。模式是數(shù)據(jù)庫中全部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征描述,通常以某種數(shù)據(jù)模型為基礎(chǔ)。內(nèi)模式是對數(shù)據(jù)的物理結(jié)構(gòu)和存儲方式的描述。在該系統(tǒng)中具體的模式有:用戶(用戶名,密碼,權(quán)限)專家信息(專家編號,專家姓名,性別,科室,特長,預(yù)約人數(shù),當(dāng)前人數(shù),電話)預(yù)約記錄(患者姓名,專家姓名,患者身份證,科室,病歷,就診日期,電話)治療記錄(患者姓名,專家姓名,科室,治療日期,治療情況)4.2.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ),數(shù)據(jù)庫設(shè)計的質(zhì)量將直接關(guān)系到信息系統(tǒng)開發(fā)的成敗和優(yōu)劣。數(shù)據(jù)庫設(shè)計是根據(jù)業(yè)務(wù)需求,信息需求,和處理需求,確定系統(tǒng)中的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)一致性約束的過程。數(shù)據(jù)庫設(shè)計是在一個給定的應(yīng)用環(huán)境中,構(gòu)造(設(shè)計)優(yōu)化的數(shù)據(jù)庫邏輯模式和物理結(jié)構(gòu),并據(jù)此建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效的存儲和管理數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息管理要求和數(shù)據(jù)操作要求。數(shù)據(jù)庫設(shè)計的目標(biāo)是為用戶和各種應(yīng)用系統(tǒng)提供一個信息基礎(chǔ)設(shè)施和高效率的運行環(huán)境,包括數(shù)據(jù)庫的存取效率、數(shù)據(jù)庫存儲空間的利用率、數(shù)據(jù)庫系統(tǒng)運行管理的效率等。根據(jù)醫(yī)院掛號系統(tǒng)的功能要求,選取MySQL作為后臺數(shù)據(jù)庫。在上面的實體和實體之間的E-R圖設(shè)計基礎(chǔ)上,形成數(shù)據(jù)庫中的表格及表格之間的關(guān)系。具體內(nèi)容如下各表所示。登錄信息表中存儲的是管理員和專家以及患者登錄系統(tǒng)時所需要的用戶名和密碼,以及識別登錄權(quán)限信息。具體如下表4.1所示。表4.1用戶登錄信息表屬性名字段名類型長度Null備注姓名usernamevarchar50否主鍵密碼passwordvarchar50否權(quán)限issysvarchar50否預(yù)約信息表主要存儲患者的預(yù)約信息,患者預(yù)約掛號時填寫的各種信息都存儲到預(yù)約信息表中。具體如下表4.2所示。表4.2預(yù)約信息表屬性名字段名類型長度Null備注患者姓名patientnamevarchar50否主鍵專家姓名specialistnovarchar50否患者身份證zhuanjiavarchar50否病歷binglivarchar50是科室kehsivarchar50否預(yù)約日期orderdatevarchar50否患者電話telvarchar50否專家信息表用于存儲醫(yī)院專家的信息,專家的姓名、科室、電話、聯(lián)系方式、預(yù)約人數(shù)等信息都存儲啊在專家信息表中。具體如下表4.3所示。表4.3專家信息表屬性名字段名類型長度Null備注專家姓名specialistnamevarchar50否專家號specialistnovarchar50否主鍵專家性別specialistsexvarchar50否科室keshivarchar50否專家特長techangvarchar50否預(yù)約人數(shù)ordernameint10否當(dāng)前人數(shù)currentnumint10否專家電話telvarchar50否治療信息表用于存儲患者就診的信息,管理員可以通過該表查詢患者的治療情況,同時進(jìn)行就診量的統(tǒng)計。具體如下表4.4所示。表4.4治療信息表屬性名字段名類型長度Null備注患者姓名hznamevarchar50否主鍵專家姓名zjnamevarchar50否科室keshivarchar50否治療日期zldatavarchar50否治療情況zlqkvarchar50否

5詳細(xì)設(shè)計結(jié)構(gòu)化詳細(xì)設(shè)計是對概要設(shè)計的進(jìn)一步細(xì)化,其目標(biāo)是為軟件結(jié)構(gòu)圖中每個模塊提供可供程序員編程實現(xiàn)的具體算法。詳細(xì)設(shè)計階段的根本目標(biāo)是確定應(yīng)該具體地實現(xiàn)所要求的系統(tǒng),也就是說,經(jīng)過這個階段的設(shè)計工作,應(yīng)該得出對目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個描述直接翻譯成用某種程序設(shè)計語言書寫的程序。詳細(xì)設(shè)計階段的任務(wù)還不具體地編寫程序,而是要設(shè)計出程序的“藍(lán)圖”,以后程序員將根據(jù)這個藍(lán)圖寫出實際的程序代碼。因此,詳細(xì)設(shè)計的結(jié)果基本上決定了最終的程序代碼的質(zhì)量??紤]程序代碼的質(zhì)量時必須注意,程序的“讀者”有兩個人。那就是計算機(jī)和人。在軟件的生命周期中,設(shè)計測試方案、診斷程序錯誤、修改和改進(jìn)程序等等都必須首先讀懂程序。實際上對于長期使用的軟件系統(tǒng)而言,人讀程序的時間可能比寫程序的時間還要長的多。因此,衡量程序的質(zhì)量不僅要看它的邏輯是否正確,性能是否滿足要求,更主要的是要看它是否容易閱讀和理解。詳細(xì)設(shè)計的目標(biāo)不僅僅是邏輯上正確的實現(xiàn)每個模塊的功能,更重要的是設(shè)計出的處理過程應(yīng)該盡可能簡明易懂。結(jié)構(gòu)程序設(shè)計技術(shù)是實現(xiàn)上述目標(biāo)的關(guān)鍵技術(shù),因此是詳細(xì)設(shè)計的邏輯基礎(chǔ)。[2]詳細(xì)設(shè)計常采用的描述方式有三類:圖形描述、語言描述和表格描述。圖形描述包括程序流程圖和問題分析圖;語言描述主要是程序設(shè)計語言;表格描述包括判定表等。這里主要運用了程序流程圖來分析醫(yī)院預(yù)約掛號系統(tǒng)。5.1人機(jī)界面設(shè)計5.1.1一般交互設(shè)計一般交互設(shè)計涉及信息顯示、數(shù)據(jù)輸入和系統(tǒng)整體控制。保持一致性。為客戶交互界面中的菜單選擇、命令輸入、數(shù)據(jù)顯示以及眾多的其他功能,使用一致的格式。提供信息的反饋。向用戶及時提供視覺和聽覺的信息反饋,以保證在用戶和系統(tǒng)之間及時地建立雙向通信。在本系統(tǒng)設(shè)計過程中,基本做到了信息的及時反饋,當(dāng)用戶操作完一步后系統(tǒng)會對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行及時地顯示。執(zhí)行有較大影響的操作前提示用戶確認(rèn)。在設(shè)計過程中,如果用戶要執(zhí)行刪除操作,以及對數(shù)據(jù)庫的讀寫操作時,都會有窗體彈出詢問繼續(xù)操作或者予以提示。減少兩次操作間需要記憶的內(nèi)容。為了避免用戶為下一步操作而記憶大量數(shù)據(jù),所以在設(shè)計過程中在需要數(shù)據(jù)傳遞的窗體中設(shè)置全局變量,來傳遞數(shù)據(jù)。提高對話、移動和思考的效率。盡量減少用戶擊鍵的次數(shù),在設(shè)計時考慮用戶屏幕的布局以減少用戶鼠標(biāo)移動的距離,盡量避免用戶在操作中發(fā)生疑問的情況。允許犯錯誤。允許用戶的誤操作盡量不對系統(tǒng)造成傷害。按功能對動作分類,并據(jù)此設(shè)計屏幕布局。屏幕布局盡量將軟件所具有的所有功能在主頁面展示,界面一目了然。5.1.2信息顯示設(shè)計系統(tǒng)在顯示用戶所需要的信息時應(yīng)該盡量完整、清晰和易于理解。這樣才能滿足用戶的需求。使用不同的方式顯示信息:用文字、圖形、聲音,按位置、移動和大小,使用顏色和省略等方式傳達(dá)信息。只顯示與當(dāng)前工作有關(guān)的信息。在用戶操作有關(guān)系統(tǒng)的特定功能的信息時,不必看到與之無關(guān)的數(shù)據(jù)、菜單和圖形。使用便于用戶迅速吸收數(shù)據(jù)的方式來表示數(shù)據(jù)。使用一致的標(biāo)記、標(biāo)準(zhǔn)的縮寫和可預(yù)知的顏色。顯示的含義應(yīng)該非常準(zhǔn)確,用戶無須參照其他信息源就能理解。產(chǎn)生有意義的錯誤信息。對于系統(tǒng)在運行過程中產(chǎn)生的錯誤盡量給用戶返回一個容易理解的錯誤信息,以使用戶保持對系統(tǒng)的信任,和系統(tǒng)的可用性。使用窗口分隔不同類型的信息。使用不同的窗口顯示、保存不同類型的信息。高效率的使用顯示屏。當(dāng)使用多窗口時,應(yīng)該有足夠的空間使得每個窗口至少都能顯示出一部分。5.1.3數(shù)據(jù)輸入設(shè)計用戶的大部分時間用在選擇菜單命令、鍵入數(shù)據(jù)和向系統(tǒng)提供輸入。在系統(tǒng)中,鍵盤是主要的輸入介質(zhì),但是鼠標(biāo)等設(shè)備的也是重要的輸入手段,所以,對于他們的數(shù)據(jù)輸入操作有如下約定:盡量減少用戶的輸入動作。為了方便用戶的使用,鼠標(biāo)應(yīng)當(dāng)盡量減少操作的幅度。保持顯示信息和輸入信息之間的一致性。對于用戶來說,要保證其輸入的數(shù)據(jù)在顯示上與其他顯示的視覺特征(例如:文字大小、顏色、位置等)要一致。允許用戶自定義輸入。用戶可能希望定義自己專用的命令或略去某些類型的警告信息和動作確認(rèn),人機(jī)界面應(yīng)該為用戶提供這樣做的機(jī)制。交互應(yīng)該是靈活的,并且可調(diào)整成用戶最喜歡的輸入方式。用戶類型與喜歡的輸入方式有關(guān),不同的用戶喜歡不同的輸入方式。使用當(dāng)前動作語境中不適用的命令不起作用。這可使得用戶不去做那些肯定會導(dǎo)致錯誤的動作。讓用戶控制交互流。用戶應(yīng)該能跳過不必要的動作,改變所需做的動作的順序,以及在不退出程序的情況下從錯誤狀態(tài)中恢復(fù)正常。消除冗余的輸入。除非可能發(fā)生誤解,否則不要要求用戶指定輸入數(shù)據(jù)的單位;盡可能提供默認(rèn)值,絕對不要要求用戶提供程序可以自動獲得或計算出來的信息。對于不同類型的用戶在登錄到系統(tǒng)后,由于有不同的權(quán)限,所以在主界面中會有一些項目受到限制而無法使用,所以要使這些項目不發(fā)生作用,以保證系統(tǒng)安全。5.2程序設(shè)計過程程序過程設(shè)計主要是在借助過程設(shè)計工具的情況下,對程序的具體實現(xiàn)過程進(jìn)行設(shè)計。程序的主要部分設(shè)計在這個環(huán)節(jié)完成。在這個任務(wù)說明書中我們采用盒圖的形式來表達(dá)程序的具體的設(shè)計過程,我們的系統(tǒng)設(shè)計為C/S結(jié)構(gòu),所以是客戶端登陸系統(tǒng)的形式,盒圖沒有箭頭,所以不允許隨意轉(zhuǎn)移控制,堅持使用盒圖可以使程序員養(yǎng)成用用結(jié)構(gòu)化的方式來思考問題。5.2.1登陸界面設(shè)計在用戶登錄時,在輸入用戶名和密碼及用戶類型的前提下將其與數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行比對,若一致,則打開主窗體;若不一致提示錯誤,并要求重新輸入。注冊后保存用戶信息,登陸界面的的程序盒圖如圖5.1所示。privatevoidbutton1_Click(objectsender,EventArgse){stringMyConnectionString="Server=localhost;Database=guahao;Uid=root;Pwd=123456;PersistSecurityInfo=True;Charset=utf8;";stringusername=textBox1.Text.Trim();stringpasswd=textBox2.Text.Trim();stringrol=comboBox1.Text.Trim();stringloginsql="SELECT*FROMloginWhereusername='"+username+"'andpassword='"+passwd+"'andissys='"+rol+"'";MySqlConnectionconnection=newMySqlConnection(MyConnectionString);connection.Open();MySqlCommandmycmd=newMySqlCommand(loginsql,connection);MySqlDataReadermyread=mycmd.ExecuteReader();try{if(myread.HasRows){if(myread.Read()){if(myread["username"].ToString()==textBox1.Text&&myread["password"].ToString()==textBox2.Text&&myread["issys"].ToString()=="管理員"){Form3f3;f3=newForm3();f3.Show();this.Hide();}elseif(myread["username"].ToString()==textBox1.Text&&myread["password"].ToString()==textBox2.Text&&myread["issys"].ToString()=="客戶"){Form5f2;f2=newForm5();f2.Show();this.Hide();}elseif(myread["username"].ToString()==textBox1.Text&&myread["password"].ToString()==textBox2.Text&&myread["issys"].ToString()=="醫(yī)生"){ user=username;Form4f2;f2=newForm4();f2.Show();this.Hide();}}}else{MessageBox.Show("Pleaseenterthecorrectusernameandpassword?。?!");}}catch(Exceptionex){MessageBox.Show(string.Format("出錯,出錯原因{0}"),ex.Message);}finally{connection.Close();connection.Dispose();mycmd.Dispose();}}

連接數(shù)據(jù)庫連接數(shù)據(jù)庫否是用戶名和密碼輸入提示輸入否是賬戶是否存在提示錯誤顯示提示框“登錄成功”圖5.1登陸界面程序盒圖5.2.2程序流程設(shè)計程序流程圖又稱程序框圖,是描述過程設(shè)計的方法。程序流程圖中使用的符號如下:橢圓形表示開始或停止;長方形表示處理;菱形表示多分支;箭頭表示控制流。1.管理員、專家和患者登錄程序流程圖管理員、專家和患者登錄流程圖用于描述管理員和專家登錄系統(tǒng)的過程。用戶進(jìn)入主頁后,在登錄框輸入用戶名、密碼和登錄權(quán)限,若輸入正確,則登錄系統(tǒng)。若輸入錯誤,則提示輸入用戶名和密碼不對,請重新輸入。管理員登錄成功后則進(jìn)入后臺管理頁面,專家登錄成功后則進(jìn)入后臺專家查詢頁面,患者登陸成功后進(jìn)入就診預(yù)約界面。具體流程圖如下圖5.2所示。

開始開始進(jìn)入用戶登錄界面輸入用戶名、登錄密碼和權(quán)限輸入是否有誤登錄成功進(jìn)入相應(yīng)的界面結(jié)束是否 圖5.2用戶登陸程序流程圖2.預(yù)約掛號程序流程圖患者預(yù)約掛號程序流程用于描述患者預(yù)約掛號的過程。當(dāng)患者進(jìn)入主頁后,點擊預(yù)約,進(jìn)入到預(yù)約掛號頁面,患者在這里填寫自己的信息以及選擇要預(yù)約的專家,然后保存預(yù)約,預(yù)約掛號程序結(jié)束。患者預(yù)約掛號流程圖如下圖5.3所示。

是否預(yù)約成功預(yù)約信息是否預(yù)約成功預(yù)約信息取消預(yù)約結(jié)束否是開始進(jìn)入預(yù)約界面填寫預(yù)約信息提交開始提交填寫預(yù)約信息進(jìn)入預(yù)約界面提交填寫預(yù)約信息進(jìn)入預(yù)約界面圖5.3預(yù)約掛號程序流程圖專家查詢預(yù)約信息流程圖專家查詢預(yù)約信息流程圖可以讓專家充分了解患者的基本信息以及以前的病歷情況,可以合理的安排患者的就診同時提高就診效率。同時對前來就診的患者進(jìn)行就診情況的填寫,方便統(tǒng)計就診量。具體流程圖如下圖5.4所示。

患者基本信息患者基本信息開始預(yù)約信息查詢界面輸入專家姓名是否完成治療填寫治療情況結(jié)束是否圖5.4專家查詢預(yù)約信息流程圖

6測試6.1測試描述測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行的程序。好的測試方案是極有可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案,成功的測試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤的測試。為了能設(shè)計出有效的測試方案,軟件工程師必須深入理解并正確運用軟件測試的基本準(zhǔn)則:(1)所有測試都應(yīng)該能追溯到用戶需求。從用戶角度看,最嚴(yán)重的錯誤是導(dǎo)致程序不能滿足用戶需求的哪些錯誤。(2)應(yīng)該預(yù)案在測試開始之前就制定出測試計劃。實際上,一旦完成了需求模型就可以著手制定測試計劃,在建立了設(shè)計模型之后就可以立即開始詳細(xì)設(shè)計的測試方案。(3)把pareto原理應(yīng)用到軟件測試中。Pareto原理說明,測試發(fā)現(xiàn)的錯誤當(dāng)中的80%很可能是由程序中20%的模塊造成的。(4)完全測試是不可能的,測試需要終止。測試無法顯示軟件潛在的缺陷,“測試只能證明軟件存在錯誤而不能證明軟件沒有錯誤”。最初的測試通常把焦點放在單個程序模塊上,進(jìn)一步測試的焦點則轉(zhuǎn)向在集成的模塊簇中尋找錯誤,最后在整個系統(tǒng)中尋找錯誤。在測試中不可能運行路徑的每一種組合。然而,充分覆蓋程序邏輯,并確保程序設(shè)計中使用的所有條件是有可能的。(5)應(yīng)由獨立的第三方來構(gòu)造測試。第三方測試最大的特點在于它的專業(yè)性、獨立性、客觀性和公正性。對于軟件開發(fā)商來說,經(jīng)過第三方測試機(jī)構(gòu)的測試,不僅可以通過專業(yè)化的測試手段發(fā)現(xiàn)軟件錯誤,幫助開發(fā)商提升軟件的品質(zhì),而且可以對軟件有一個客觀、科學(xué)的評價,有助于開發(fā)商認(rèn)清自己產(chǎn)品的定位。對于行業(yè)主管部門以及軟件使用者來說,由于第三方測試機(jī)構(gòu)獨立公正的地位,可以對被測試的軟件有一個客觀公正的評價,幫助用戶選擇合適、優(yōu)秀的軟件產(chǎn)品。(6)充分注意測試中的群集現(xiàn)象。測試后程序殘存的錯誤數(shù)目與該程序中已發(fā)現(xiàn)的錯誤數(shù)目或檢錯率成正比。不要在某個程序段中找到幾個錯誤就誤認(rèn)為該程序段就沒有錯誤而不再測試,相反應(yīng)該對錯誤群集的程序段進(jìn)行重點測試。6.1.1測試目的本測試計劃主要用于控制整個醫(yī)院掛號系統(tǒng)項目測試,本文檔主要實現(xiàn)以下目標(biāo):(1)通過此測試計劃能夠控制整個測試項目合理、全面、準(zhǔn)確、協(xié)調(diào)地完成。(2)為軟件測試提供依據(jù):(3)項目管理人員根據(jù)此計劃,可以對項目進(jìn)行宏觀調(diào)控。(4)測試人員根據(jù)此計劃,能夠明確自己的權(quán)利、職責(zé),準(zhǔn)確地定位自己在項目的任務(wù)。(5)相關(guān)部門,可以根據(jù)此計劃,對相關(guān)資源進(jìn)行準(zhǔn)備。6.1.2測試方案該系統(tǒng)主要運用的是黑盒測試,黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程。只在程序借口進(jìn)行測試,檢查程序功能是否能按照正常的規(guī)定使用,程序是否能適當(dāng)?shù)慕邮茌斎霐?shù)據(jù)并產(chǎn)生正確的輸出信息,程序運行過程中是否保持外部信息的完整性。該測試項目將通過設(shè)計和執(zhí)行接受測試、界面測試、功能測試和性能測試,對軟件實現(xiàn)的功能,以及軟件的性能、兼容性、安全性、實用性、可靠性、擴(kuò)展性各個方面進(jìn)行全面系統(tǒng)的測試?;诒鞠到y(tǒng)的業(yè)務(wù)復(fù)雜性和開發(fā)周期短的特性,系統(tǒng)測試的重點將放在功能測試和性能測試上。通過測試提高軟件的質(zhì)量,為用戶提供最好的服務(wù),并合理地避免軟件的風(fēng)險和減少軟件的成本。6.2測試計劃6.2.1測試過程在項目開發(fā)確定好之后就開始進(jìn)行測試計劃的設(shè)計,伴隨項目的結(jié)束而結(jié)束,整個過程是一個連貫的互相協(xié)調(diào)進(jìn)行的。具體流程如圖6.1所示。

成立項目組成立項目組制定測試計劃測試方案設(shè)計測試方案評審測試執(zhí)行項目新版本提交測試報告測試報告評審測試計劃測試方案測試報告圖6.1系統(tǒng)測試過程6.2.2進(jìn)度安排及里程碑給出進(jìn)行各項測試的日期和工作內(nèi)容(如熟悉環(huán)境、培訓(xùn)、準(zhǔn)備輸入數(shù)據(jù)、實施測試等),具體安排如下表6.1所示。里程碑任務(wù)執(zhí)行者開始日期結(jié)束日期指定測試計劃張潤第一周周一周二設(shè)計測試張潤周三周五實施測試張潤第二周周一周三對測試進(jìn)行評估張潤周三周四表6.1進(jìn)度安排表6.2.3系統(tǒng)資源測試項目所需的系統(tǒng)資源如表6.2所示。表6.2系統(tǒng)資源信息表系統(tǒng)資源資源名稱、類型數(shù)據(jù)庫服務(wù)器MySql網(wǎng)絡(luò)或子網(wǎng)服務(wù)器名稱數(shù)據(jù)庫名稱chaoshi客戶端測試PCWindows特殊配置需求測試存儲庫Bugs硬件環(huán)境IntelCore(TM)CPU2.0GHz;內(nèi)存4GB6.2.4項目風(fēng)險分析從質(zhì)量風(fēng)險維度來看,軟件測試可以被定義為“對軟件系統(tǒng)中潛在的各種風(fēng)險進(jìn)行評估的活動”。軟件測試自身的風(fēng)險性是公認(rèn)的,測試的覆蓋度不能做到100%。測試的這種風(fēng)險定義一方面源于這層含義,另外軟件測試的標(biāo)準(zhǔn)有時不清楚,所以常常強(qiáng)調(diào)軟件測試人員應(yīng)該站在客戶的角度去進(jìn)行測試,除了發(fā)現(xiàn)程序中的錯誤,還要發(fā)現(xiàn)需求定義的錯誤、設(shè)計上的缺陷,可以針對產(chǎn)品去報Bug。具體的風(fēng)險分析如下表6.3所示。表6.3風(fēng)險分析表風(fēng)險類型風(fēng)險綜述在確保質(zhì)量的前提下人力資源與項目周期比列失調(diào),因此人員不到位將存在項目風(fēng)險。增加人員在不同環(huán)境下運行存在風(fēng)險使用統(tǒng)一的環(huán)境資源進(jìn)行測試進(jìn)度存在風(fēng)險實際進(jìn)度按照開發(fā)進(jìn)度進(jìn)行,當(dāng)實際開發(fā)進(jìn)度變更時將按照實際發(fā)進(jìn)度及時調(diào)整測試進(jìn)度客戶需求發(fā)生變更常與客戶進(jìn)行溝通,達(dá)成一致協(xié)議人員變動風(fēng)險通過培訓(xùn)等措施使變更后的人員了解統(tǒng)的業(yè)務(wù)流程,對系統(tǒng)深入了解,以求在最大限度內(nèi)保證測試質(zhì)量數(shù)據(jù)庫測試中存在的風(fēng)險因測試周期的限制,因此根據(jù)實際情況選擇的測試策略存在的風(fēng)險情況反應(yīng)給客戶,與客戶商議達(dá)成一致版本部署風(fēng)險版本在部署的時候,可能會由于數(shù)據(jù)庫的導(dǎo)入錯誤等原因?qū)е孪到y(tǒng)出錯。因此在實際給客戶部署時同樣存在此種風(fēng)險。6.3測試計劃設(shè)計說明6.3.1測試用例選取原則系統(tǒng):根據(jù)《系統(tǒng)需求說明書》對系統(tǒng)進(jìn)行單元測試、集成測試、系統(tǒng)測試、驗收測試、性能測試,并結(jié)合可能的用戶測試。全面:要求測試用例能夠覆蓋每一個測試點的要點。合理:從可行性角度考慮,測試不可能全面覆蓋,所以設(shè)置好等價類劃分,測試的用例的選擇避免重復(fù)測試、選擇最好的測試方法將測試點合理覆蓋。6.3.2測試內(nèi)容及其選取策略本測試將通過用戶界面測試、集成測試,系統(tǒng)測試、驗收測試、性能測試、負(fù)載測試、強(qiáng)度測試、容量測試、安全性和訪問控制測試、故障轉(zhuǎn)移和恢復(fù)測試、配置測試、安裝測試方面對系統(tǒng)進(jìn)行測試。用戶界面測試用于核實用戶與軟件之間的交互,測試用戶界面的正確性和易用性。(1)用戶界面及其易用性測試目的:確保用戶界面通過測試對象的功能來為用戶提供相應(yīng)的訪問或瀏覽功能;另外,UI測試還可以確保UI中的對象按照預(yù)期的方式運行,并符合公司或行業(yè)的標(biāo)準(zhǔn)。內(nèi)容:對系統(tǒng)的功能頁面進(jìn)行各種可操作性測試。重點:容錯檢測,易用性。集成測試目的:檢測系統(tǒng)是否達(dá)到需求,對業(yè)務(wù)流程及數(shù)據(jù)流的處理是否符合標(biāo)準(zhǔn),檢測系統(tǒng)對業(yè)務(wù)流處理是否存在邏輯不嚴(yán)謹(jǐn)及錯誤,檢測需求是否存在不合理的標(biāo)準(zhǔn)和要求。內(nèi)容:利用有效的和無效的數(shù)據(jù)來執(zhí)行各個用例,用例流或功能,以核實在使用有效數(shù)據(jù)時得到的預(yù)期結(jié)果,在使用無效數(shù)據(jù)時顯示相應(yīng)的錯誤消息或警告消息,個業(yè)務(wù)規(guī)則都得到了正確的應(yīng)用。重點:測試的單元模塊之間的接口和調(diào)用是否正確,集成后是否實現(xiàn)了某個功能。系統(tǒng)測試目的:將軟件整合為一體,看各個功能是否全部實現(xiàn)。內(nèi)容:將整個軟件系統(tǒng)看做一個整體進(jìn)行測試,測試功能是否能滿足需求,是否全部實現(xiàn),后期主要包括看系統(tǒng)運行的性能是否滿足需求,以及系統(tǒng)在不同的軟硬件環(huán)境中的兼容性等。重點:系統(tǒng)在配置好的環(huán)境中是否可以正常運行。壓力測試目的:了解(被測應(yīng)用程序)一般能夠承受的壓力,同時能夠承受的用戶訪問量(容量),最多支持有多少用戶同時訪問某個功能。內(nèi)容:①因為事先我們不知道將有多少用戶訪問是臨界點,所以在測試過程中需要多次改變用戶數(shù)來確定。②計劃的設(shè)置,每x時間后加載10用戶(根據(jù)總用戶數(shù)設(shè)置),完全加載后持續(xù)運行不超過5分鐘(根據(jù)需要設(shè)置)。③當(dāng)運行中的用戶數(shù)100%達(dá)到集合點時釋放。重點:找到系統(tǒng)的臨界值點。性能測試目的:核實性能是否滿足用戶需求,將測試對象的性能行為當(dāng)做條件的一種函數(shù)來進(jìn)行評測和微調(diào)。內(nèi)容:負(fù)載測試、強(qiáng)度測試。①單個事務(wù)單個用戶時候,在每個事務(wù)所語氣時間范圍內(nèi)成功完成測試腳本,沒有發(fā)生任何故障;多個事務(wù)多個用戶時,可完成腳本沒有發(fā)生故障的情況臨界值。②使測試系統(tǒng)承擔(dān)不同的工作量,得出系統(tǒng)持續(xù)正常運行的能力。③找出因資源不足或資源爭用導(dǎo)致的錯誤。重點:確保性能指標(biāo)滿足用戶需求。容量測試目的:所計劃的測試全部執(zhí)行,而且達(dá)到或超出指定的系統(tǒng)限制時沒有出現(xiàn)任何軟件故障。內(nèi)容:在客戶機(jī)長時間內(nèi)執(zhí)行相同的、最壞的業(yè)務(wù)時候系統(tǒng)維持的時間。重點:核實系統(tǒng)能否在連續(xù)或模擬了最多數(shù)量的客戶機(jī)下正常運行。安全性和訪問控制測試目的:保證只有訪問權(quán)限的用戶才能訪問系統(tǒng),核實用戶以不同身份登錄有不同的訪問權(quán)限。內(nèi)容:數(shù)據(jù)或業(yè)務(wù)功能訪問的安全性,包括系統(tǒng)登錄或遠(yuǎn)程訪問。重點:確保治具備系統(tǒng)訪問權(quán)限的用戶才能訪問應(yīng)用程序,而且只能通過相應(yīng)的網(wǎng)關(guān)來訪問。故障轉(zhuǎn)移和回復(fù)測試目的:檢測系統(tǒng)可否在意外數(shù)據(jù)損失、數(shù)據(jù)完整性破壞、各種硬件、軟件、網(wǎng)絡(luò)故障中恢復(fù)數(shù)據(jù)。內(nèi)容:①客戶機(jī)斷電、服務(wù)器斷電看事務(wù)可否發(fā)生回滾。②網(wǎng)絡(luò)服務(wù)器中斷。重點:看數(shù)據(jù)庫的恢復(fù)情況,以及系統(tǒng)在經(jīng)歷意外時間時候是否會發(fā)生崩潰現(xiàn)象。6.3.3功能測試測試的重點將主要放在功能測試上,按照三種角色:管理員、患者和專家,每種角色包括如下模塊:1.管理員:管理員的具體功能模塊和測試項如下表6.4所示。表6.4管理員功能測試表模塊編號測試項登錄1以管理員身份登錄,登錄成功則跳轉(zhuǎn)到用戶管理主界面2用戶賬號被屏蔽,無法登錄成功3用戶權(quán)限不符合,提示用戶權(quán)限錯誤4輸入用戶名錯誤,提示用戶不存在5輸入密碼錯誤,提示密碼錯誤用戶管理1可設(shè)置每個用戶的開啟或屏蔽權(quán)限,進(jìn)行開啟用戶或刪除用戶2單擊角色修改按鈕,進(jìn)入角色修改頁面,點選角色,修改成功,跳轉(zhuǎn)登錄界面3對用戶信息進(jìn)行修改,輸入已注冊用戶新信息,提交后跳轉(zhuǎn)到登錄界面4被管理員屏蔽或刪除的用戶,無法進(jìn)行設(shè)置,提示重新激活賬號2.患者:患者的具體功能模塊和測試項如下表6.5所示。表6.5患者模塊功能測試模塊編號測試項注冊1兩次輸入的密碼不相同,提示兩次輸入的密碼不相同,不能注冊2非法字符注冊,提示輸入的用戶名不合法登陸3用戶權(quán)限不符合,提示用戶權(quán)限錯誤4輸入用戶名錯誤,提示用戶不存在5輸入密碼錯誤,提示密碼錯誤專家預(yù)約1預(yù)約信息填寫不完整,不能預(yù)約2必須輸入要參加就診的患者的真實身份證號3對專家進(jìn)行查詢,填寫完預(yù)約信息提交后即可預(yù)約專家4預(yù)約成功后可以查詢預(yù)約信息且可以取消預(yù)約,跳轉(zhuǎn)到預(yù)約界面專家:專家的功能模塊和測試項如下表6.6所示。表6.6專家查詢模塊功能測試模塊編號測試項登錄1以專家身份登錄,登錄成功則跳轉(zhuǎn)到專家查詢處理主界面2用戶賬號被屏蔽,無法登錄成功3用戶權(quán)限不符合,提示用戶權(quán)限錯誤4輸入用戶名錯誤,提示用戶不存在5輸入密碼錯誤,提示密碼錯誤用戶管理1輸入專家的姓名查詢預(yù)約該專家的患者的基本信息2某個患者就診結(jié)束后填寫就診信息并提交,產(chǎn)生就診清單3被管理員屏蔽或刪除的用戶,無法進(jìn)行設(shè)置,提示重新激活賬號6.4醫(yī)院掛號系統(tǒng)覆蓋率測試6.4.1邏輯覆蓋率邏輯覆蓋測試主要是針對程序的內(nèi)部邏輯結(jié)構(gòu)設(shè)計測試用例的技術(shù),它通過運行測試用例達(dá)到邏輯覆蓋的目的。包括以下3種類型的邏輯覆蓋:(1)語句覆蓋(2)判定覆蓋(3)條件覆蓋if(myread.HasRows){if(myread.Read()){if(myread["UserID"].ToString()==tbxUsr.Text&&myread["UserPassword"].ToString()==tbxPwr.Text&&myread["UserRight"].ToString()=="管理員"){user=username;Form8f3;f3=newForm8();f3.Show();}}}入口密碼不空入口密碼不空語句塊2內(nèi)容是否匹配出口NNYdcehifg用戶名不空語句塊1YNabY語句塊3語句塊3圖6.2程序流程圖6.4.2語句覆蓋語句覆蓋就是設(shè)計若干個測試用例,運行被測試程序,使得每一條可執(zhí)行的語句至少執(zhí)行一次。根據(jù)概念,為了對上面的函數(shù)進(jìn)行語句覆蓋,只要設(shè)計一個測試用例就可以覆蓋2個執(zhí)行語句塊中的語句。針對程序的判斷語句,可在入口處設(shè)計測試用例。測試用例輸入為:{登陸界面輸入的登陸信息不為空}如果程序只運行上面的測試用例,雖然可以執(zhí)行模塊中的所有語句,但并不能檢查判斷邏輯是否有問題。例如在第一個判斷中錯誤地把==寫成!=,則上面的測試用例仍可以覆蓋所有的執(zhí)行語句??梢哉f語句覆蓋率是最弱的邏輯覆蓋準(zhǔn)則。6.4.3判定覆蓋判定覆蓋(也稱為分支覆蓋),設(shè)計若干個測試用例,運行所測程序,使程序中每個判斷的取真分支和取假分支至少各執(zhí)行一次。根據(jù)上面的定義,對于上面的程序,只要設(shè)計兩個測試用例則可以滿足條件覆蓋的要求。測試用例的輸入為:{登陸界面輸入的登陸信息不為空} {輸入的用戶名、密碼和權(quán)限是否匹配}上面的兩個測試用例雖能夠滿足判定覆蓋的要求,但是有時候也不能對判定條件進(jìn)行檢查。6.4.4條件覆蓋設(shè)計足夠多的測試用例,運行所測程序,使程序中每個判斷內(nèi)的每個條件的各個可能取值至少執(zhí)行一次。為了清楚的設(shè)計測試用例,對例子中的所有條件取值加以標(biāo)記。例如:對于第一個判斷:條件登錄信息不為空,取真值為1,假值為0;對于第二個判斷:條件登錄信息是否匹配,取真值為1,假值為0;設(shè)計測試用例如下表6.7所示。表6.7測試用例用例編號輸入數(shù)據(jù)期望輸出實際輸出GH-01Null用戶名和密碼不能為空用戶名和密碼不能空GH-02張潤張潤張潤GH-031234561234561234566.5醫(yī)院掛號系統(tǒng)黑盒測試已經(jīng)知道了系統(tǒng)已經(jīng)具有的功能,可以通過測試來驗證是否每個功能都能正常使用,這種測試方法就是所謂的黑盒測試。對于軟件測試而言,黑盒測試把程序看成一個黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程。黑盒測試根據(jù)規(guī)格說明設(shè)計測試用例,不涉及程序的內(nèi)部結(jié)構(gòu),因此有兩個顯著的有點:黑盒測試與軟件的具體實現(xiàn)無關(guān),如果軟件具體實現(xiàn)發(fā)生率變化,測試用例依然可以使用,不影響軟件測試。設(shè)計黑盒測試用例可以和軟件實現(xiàn)同時進(jìn)行,因此可以壓縮項目開發(fā)時間。6.5.1等價類劃分測試等價類劃分如下表6.8所示。表6.8等價類劃分測試編制人張潤審定人張潤時間2015-12-25軟件名稱醫(yī)院掛號系統(tǒng)版本Version1.0測試目的檢查功能是否與需求相符用例編號GH依賴關(guān)系無用例描述輸入注冊用戶名稱以及權(quán)限,必填;輸入數(shù)據(jù)管理員期望輸出管理員實際輸出管理員等價類測試用例如下表6.9所示。表6.9等價類測試用例用例編號輸入數(shù)據(jù)期望輸出實際輸出GH-04張潤張潤張潤GH-05空用戶名或密碼不能為空用戶名不許為空GH-06管理員管理員管理員GH-07用戶權(quán)限正確用戶權(quán)限不正確6.5.2邊界值法邊界值測試用例如下表6.10所示。表6.10邊界值法測試用例編制人張潤審定人張潤時間2015-12-22軟件名稱醫(yī)院掛號系統(tǒng)版本Version1.0測試目的檢查功能是否與需求相符用例編號GH依賴關(guān)系無用例描述輸入用戶名,其中字符長度在2到4之間【2,4】只能為漢字輸入數(shù)據(jù)輸入錯誤用戶名期望輸出輸出提示用戶不存在的警示框?qū)嶋H輸出邊界值測試用例如下表6.11所示。表6.11邊界值測試用例用例編號輸入數(shù)據(jù)期望輸出實際輸出GH-08王用戶名不合法用戶名不合法GH-09無忌無忌無忌GH-10張三豐張三豐張三豐GH-11上官歐陽上官歐陽上官歐陽GH-12西門大官人用戶名不合法用戶名不合法

7設(shè)計總結(jié)7.1心得體會通過這次軟件工程課程設(shè)計的實踐訓(xùn)練,進(jìn)一步掌握了軟件工程的方法和技術(shù),拓寬了知識面,提高軟件開發(fā)的實際能力,培養(yǎng)工程設(shè)計能力和綜合分析、解決問題的能力。學(xué)習(xí)和實踐了分析和設(shè)計軟件系統(tǒng)的各種知識,包括面向?qū)ο蟮南到y(tǒng)分析與設(shè)計,編碼和測試方面的知識。同時掌握了開發(fā)工具Visual

studio2013,并將其運用與軟件開發(fā)的全過程。進(jìn)一步加強(qiáng)和提高軟件工程文檔的編寫能力。而且本次課程設(shè)計讓我懂得通過理論與實際的結(jié)合、人與人的溝通,進(jìn)一步提高思想覺悟。尤其是觀察、分析和解決問題的實際工作能力,對我們來說,實際能力的培養(yǎng)至關(guān)重要。通過課程設(shè)計,讓我找出自身狀況與實際需要的差距并在以后的學(xué)習(xí)期間及時補充相關(guān)知識。通過對軟件開發(fā)流程的了解,進(jìn)一步激發(fā)了我們對專業(yè)知識的興趣,并能夠結(jié)合實際存在的問題在專業(yè)領(lǐng)域內(nèi)進(jìn)行更深的學(xué)習(xí)。本系統(tǒng)實現(xiàn)了最基本的功能模塊,在功能上基本滿足用戶的需求,但是由于時間較緊,有些模塊以及整個系統(tǒng)還有許多不完善的以及考慮不周全的地方??傊?,此次課程設(shè)計最大的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論