醫(yī)院需求分析文檔_第1頁
醫(yī)院需求分析文檔_第2頁
醫(yī)院需求分析文檔_第3頁
醫(yī)院需求分析文檔_第4頁
醫(yī)院需求分析文檔_第5頁
已閱讀5頁,還剩90頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

醫(yī)院需求分析文檔醫(yī)院需求分析文檔醫(yī)院需求分析文檔醫(yī)院需求分析文檔編制僅供參考審核批準(zhǔn)生效日期地址:電話:傳真:郵編:IT有機公司軟件開發(fā)事業(yè)部文檔編號Kf-0418-2012版本A1密級商密A項目名稱醫(yī)院管理系統(tǒng)項目來源XXXXXXXx醫(yī)院管理系統(tǒng)數(shù)據(jù)庫設(shè)計說明書(內(nèi)部資料請勿外傳)編寫:日期:檢查:日期:審核:日期:批準(zhǔn):日期:IT有機公司 版權(quán)所有不得復(fù)制目錄醫(yī)院管理系統(tǒng) 1數(shù)據(jù)庫設(shè)計說明書 11 引言 21.1 編寫目的 21.2 術(shù)語表 21.3 參考資料 32 數(shù)據(jù)庫環(huán)境說明 33 數(shù)據(jù)庫的命名規(guī)則 34 邏輯設(shè)計 35 物理設(shè)計 45.1 表匯總 45.2 表[X]:[XXX表] 45.3 視圖的設(shè)計 65.4 存儲過程、函數(shù)及觸發(fā)器的設(shè)計 66 安全性設(shè)計 66.1 防止用戶直接操作數(shù)據(jù)庫的方法 66.2 用戶帳號密碼的加密方法 76.3 角色與權(quán)限 77 優(yōu)化 78 數(shù)據(jù)庫管理與維護(hù)說明 71引言1.1編寫目的在完成了對醫(yī)院各個部門的調(diào)查后,,同時與多名病人進(jìn)行了全面深入地探討和分析的基礎(chǔ)上,提出了這份系統(tǒng)需求分析報告.此需求分析報告對醫(yī)院管理利通做了全面細(xì)致的用戶需求分析,明確所要開發(fā)的系統(tǒng)應(yīng)具備的功能、性能與界面,使系統(tǒng)分析人員及軟件開發(fā)人員能清楚地了解用戶的需求,并在此基礎(chǔ)上進(jìn)一步提出概要設(shè)計說明書和完成后續(xù)設(shè)計與開發(fā)工作。此外,這份需求分析報告中介紹了我們系統(tǒng)的框架結(jié)構(gòu),明確了該系統(tǒng)的方向及用途,是客戶了解我們系統(tǒng)的一份詳細(xì)資料,本分析報告的預(yù)期讀者為客戶、業(yè)務(wù)或需求分析人員、測試人員、用戶文檔編寫者、項目管理人員。此分析報告是整個系統(tǒng)開發(fā)的依據(jù),它對以后階段的工作起指導(dǎo)作用。本文也是項目完成后系統(tǒng)驗收的依據(jù)。1.2術(shù)語表序號術(shù)語或縮略語說明性定義1PaPatient病人2DoDoctor醫(yī)生3PbPatient-bed病床4PrPatient-room病房5ZrZhuyuan-register住院登記6TrTrue-record治療記錄1.3參考資料資料名稱作者文件編號、版本資料存放地點《數(shù)據(jù)庫原理及應(yīng)用》何玉潔機械工程出版社圖書館《SQLServer使用教程》范立南清華大學(xué)出版社圖書館《數(shù)據(jù)庫應(yīng)用技術(shù)》張蒲生機械工業(yè)出版社圖書館2.數(shù)據(jù)庫環(huán)境說明2.1網(wǎng)絡(luò)邏輯結(jié)構(gòu)本次設(shè)計基于的網(wǎng)絡(luò)邏輯結(jié)構(gòu)是客戶/服務(wù)器(C/S)體系結(jié)構(gòu)。它由三個主要部分構(gòu)成:數(shù)據(jù)庫服務(wù)器、客戶應(yīng)用程序和網(wǎng)絡(luò)?;贑/S的住院管理系統(tǒng)的結(jié)構(gòu)示意圖如圖所示2.2軟件支撐環(huán)境及開發(fā)工具在WINDOWSXP操作系統(tǒng)下完成包括應(yīng)用程序的開發(fā)、數(shù)據(jù)庫的設(shè)計以及設(shè)計報告的編寫應(yīng)用的開發(fā)工具有:VC程序設(shè)計語言SQLServer2000MicrosoftOfficeWord20033.數(shù)據(jù)庫的命名規(guī)則此數(shù)據(jù)庫完全按照《mysql數(shù)據(jù)庫設(shè)計規(guī)范》命名。表名命名依據(jù)英文單詞全稱。列名命名依據(jù)整個列的屬性取相應(yīng)的英文縮寫或拼音縮寫4.系統(tǒng)需求簡介4.1.1總體需求簡單介紹1.建立對醫(yī)院全面管理的信息系統(tǒng)2.對所有醫(yī)生和病人進(jìn)行管理3.對所有部門的詳細(xì)信息進(jìn)行管理4.對所有醫(yī)生的詳細(xì)信息進(jìn)行管理1.系統(tǒng)的功能實現(xiàn)情況:用戶可在本系統(tǒng)下實現(xiàn)各種用戶要求的功能2.系統(tǒng)的安全性:對于系統(tǒng)的重要數(shù)據(jù)都有密碼保護(hù),具有一定的安全性對用戶提供證書支持(此功能在后續(xù)版本中實現(xiàn))3.系統(tǒng)的容錯性:用戶輸錯數(shù)據(jù)都有提示信息,具有較好的容錯性能。4.系統(tǒng)的封閉性:用戶的封閉性較好,用戶基本上在提示信息下輸數(shù)據(jù)4.1.2數(shù)據(jù)字典§數(shù)據(jù)項數(shù)據(jù)項含義說明類型長度取值范圍取值含義與其他數(shù)據(jù)項的邏輯關(guān)系病案號唯一標(biāo)識每個病人字符型15000000000000000至999999999999999前兩位標(biāo)明該病人所掛診的部門,后十三位按順序編號與住院登記,治療記錄用此數(shù)據(jù)項相聯(lián)系醫(yī)生編號唯一標(biāo)識每個醫(yī)生字符型100000000001至9999999999前兩位表示所屬部門,后八位按順序編號與治療記錄用此數(shù)據(jù)項相聯(lián)系病房編號唯一標(biāo)識每個病房字符型40001至9999前兩位表示所屬部門,后兩位按順序編號與病床,住院登記用此數(shù)據(jù)相聯(lián)系床位號唯一標(biāo)識每個病床字符型3001至999前兩位表示所屬病房,后兩位按順序編號引用病房主碼做病床表的外碼,與住院登記用此數(shù)據(jù)相聯(lián)系日期,病案號唯一標(biāo)識每個住院登記DATE,字符型10,15日期的取值范圍,病案號引用病人表的主碼表示每個住院登記的記錄聯(lián)系病人和住院登記病案號,醫(yī)生編號唯一標(biāo)識每個治療記錄字符型15,10病案號引用病人表的主碼,醫(yī)生編碼引用醫(yī)生表的主碼表示每個治療記錄的情況聯(lián)系病人和醫(yī)生§數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)含義說明組成病人定義了每個病人的有關(guān)信息病案號,姓名,性別,地址,電話號碼,病房編號,醫(yī)生編號醫(yī)生定義了每個醫(yī)生的有關(guān)信息醫(yī)生編號,姓名,性別,職稱,電話號碼,部門,月工資病房定義了每個病房的有關(guān)信息病房編號,地點,收費標(biāo)準(zhǔn),所屬部門病床定義了每個病床的有關(guān)信息病房編號,病床號住院登記定義了每個住院登記的有關(guān)信息日期,病案號,入院日期,出院日期,病房編號,床位號,住院費用§數(shù)據(jù)流數(shù)據(jù)流:病人診斷情況說明:病人病情的最終結(jié)果數(shù)據(jù)流來源:病人數(shù)據(jù)流去向:醫(yī)生組成:病人,住院登記,治療記錄平均流量:每天幾百人高峰期流量:每天幾千人§數(shù)據(jù)存儲數(shù)據(jù)存儲:病人入院登記說明:記錄病人的基本情況流入數(shù)據(jù)流:住院登記流出數(shù)據(jù)流:住院登記組成:病人,醫(yī)生,住院登記,治療記錄數(shù)據(jù)量:每天幾百張存取頻度:每人一次存取方式:隨機存取§處理邏輯處理名稱:生成病人就醫(yī)情況總表說明:說明處理過程輸入數(shù)據(jù)流:病人,治療記錄輸出數(shù)據(jù)流:住院登記處理邏輯:記錄病人診治記錄,形成治療記錄,匯總成病人住院登記,再生成總表平均執(zhí)行頻率:每天幾百次(說明:以上平均頻率需長期觀察得到)§數(shù)據(jù)流圖圖元醫(yī)生病人診治醫(yī)生病人診治病人屬性病案號醫(yī)生屬性醫(yī)病人屬性病案號醫(yī)生屬性醫(yī)生編號4.1.3系統(tǒng)功能設(shè)想這里的功能劃分,是根據(jù)第一階段需求調(diào)查基礎(chǔ)上進(jìn)行的初步劃分。隨著需求調(diào)查的深入,功能模塊隨著對需求了解的明確得到調(diào)整。醫(yī)院管理系統(tǒng)的四個主要部分,可以將系統(tǒng)應(yīng)用程序劃分為對應(yīng)的4個子模塊:包括醫(yī)生管理系統(tǒng),病人管理系統(tǒng),病房管理系統(tǒng),科室管理系統(tǒng).根據(jù)各業(yè)務(wù)子系統(tǒng)所包括業(yè)務(wù)內(nèi)容,還可以將各個子系統(tǒng)繼續(xù)細(xì)化劃分為更小的功能模塊。劃分的準(zhǔn)則主要遵循模塊的內(nèi)聚性要求和模塊間的低聚合性。如圖所示表示一個醫(yī)院管理系統(tǒng)功能模塊結(jié)構(gòu)圖。應(yīng)用系統(tǒng)應(yīng)用系統(tǒng)醫(yī)生管理病人管理病房管理系統(tǒng)管理治療病人信息醫(yī)生的詳細(xì)信息病人的詳細(xì)信息各科室醫(yī)生及病人信息所有部門科室信息住院信息4.1.4業(yè)務(wù)流程分析簡單醫(yī)院流程圖收費單請收費單請住院單請住院申請病人信息圖4-1入院數(shù)據(jù)流圖病人查看信息病人病案病人分配床位病房信息產(chǎn)生收費單及住院單治療方案治療方案出示病歷病人醫(yī)生診斷病人病歷病人檢查情況給出治療方案方案病人圖4-2治療數(shù)據(jù)流圖申請出院申請出院繳費單病人病人病案收費準(zhǔn)則病歷歸檔費用統(tǒng)計病人圖4-3出院數(shù)據(jù)流圖5.概念設(shè)計5.1.1實體病房(病房編號,地點,收費標(biāo)準(zhǔn),所屬科室)病床(病房編號,床位號)病人(病案號,姓名,性別,地址,電話號碼,病房編號,醫(yī)生編號)醫(yī)生(醫(yī)生編號,姓名,性別,職稱,電話號碼,部門,工資)住院登記(日期,病案號,入院時間,出院時間,病房編號,床位號,住院費用)治療記錄(治療時間,病案號,醫(yī)生編號,診斷,治療方案)5.1.2系統(tǒng)局部E—R圖n人n人1人醫(yī)生病人治療診斷治療方案圖4-8病人與醫(yī)生聯(lián)系圖治療時間n人n人1人擁有病房病床病房n人1人住在病人圖4-9病人與病房及病房與病床聯(lián)系圖n1病人住院登記登記5.1.3n1病人住院登記登記出院時間出院時間病房地點收費標(biāo)準(zhǔn)所屬部門病房編號n11n1病房編號床位號治療時間部門電話號碼職稱性別姓名醫(yī)生編號圖4-11醫(yī)院住院數(shù)據(jù)庫基本E-R圖nn1n1病床病人醫(yī)生病案號姓名性別地址電話號碼病房編號病案號病房編號床位號診斷日期入院時間治療方案治療住在住院登記擁有登記分配醫(yī)生編號住院費用工資6.邏輯設(shè)計6.1.1E-R圖到關(guān)系模式轉(zhuǎn)換按照上述的原則,根據(jù)設(shè)計好的E-R圖,可以將其轉(zhuǎn)換為以下一組關(guān)系模式,其中關(guān)系模式的碼用下橫線標(biāo)出。將E-R圖中1:1的聯(lián)系與任意一端所對應(yīng)的關(guān)系模式合并。將E-R圖中1:n的聯(lián)系與n端所對應(yīng)的關(guān)系模式合并,如:將“病床”這一聯(lián)系并到“病房”關(guān)系模式;將E-R圖中m:n的聯(lián)系轉(zhuǎn)換為一個獨立的關(guān)系模式。病房(病房編號,地點,收費標(biāo)準(zhǔn),所屬科室)此為病房實體型所對應(yīng)的關(guān)系模式。其中病房編號唯一確定一個病房,所以為該關(guān)系模式的碼。病床(病房編號,床位號)此為病床實體型所對應(yīng)的關(guān)系模式。由于病房編號是病房關(guān)系模式的碼,所以在該關(guān)系模式中病房編號為外碼。病人(病案號,姓名,性別,地址,電話號碼,病房編號,醫(yī)生編號)此為病人實體型所對應(yīng)的關(guān)系模式。其中病案號為此關(guān)系模式的碼,而病房編號,醫(yī)生編號為該關(guān)系模式的外碼。醫(yī)生(醫(yī)生編號,姓名,性別,職稱,電話號碼,部門,工資)此為醫(yī)生實體型所對應(yīng)的關(guān)系模式。其中醫(yī)生編號唯一確定一個醫(yī)生,所以為該關(guān)系模式的碼。住院登記(日期,病案號,入院時間,出院時間,病房編號,床位號)此為住院登記實體型所對應(yīng)的關(guān)系模式。其中,日期和病案號共同確定一個住院登記,病房編號為該關(guān)系模式的外碼。治療記錄(治療時間,病案號,醫(yī)生編號,診斷,治療方案)此為聯(lián)系“治療”所對應(yīng)的關(guān)系模式。其中,病案號和醫(yī)生編號都是該關(guān)系模式的外碼。6.1.2各個數(shù)據(jù)表的表結(jié)構(gòu)設(shè)計Patient的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注病案號病人的編號(pno)int15對應(yīng)唯一一個病人姓名病人姓名(pname)Char20性別病人性別(psex)char2只能取‘男’或‘女’地址病人住址(paddr)varchar100電話病人電話(ptel)smallint10病房編號病人病房(pro)char4住院時由系統(tǒng)分配醫(yī)生編號主治醫(yī)生(ppno)int15一位病人只能對應(yīng)一位主治醫(yī)生Patient-room的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注編號病房編號(rno)Int15病房編號唯一地點病房位置(radd)char20非空收費標(biāo)準(zhǔn)住院收費(rcha)INT15單位為(元/天)所屬部門病房所屬部門(rbu)vaechar20一間病房只能屬于一個部門Patient-bed的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注病房編號病房編號(rno)int15唯一確定,引用病房的外碼床位號病房床位(rbe)int15唯一確定,一個病房一般有1-3個床位Doctor的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注編號醫(yī)生編號(dno)int15對應(yīng)唯一一個醫(yī)生姓名醫(yī)生姓名(dname)char20非空性別醫(yī)生性別(dsex)char2只能取‘男’或‘女’職稱醫(yī)生職稱(dzhi)varchar20有可能有多個職稱電話醫(yī)生電話(dtel)smallint10部門所屬部門(dbu)varchar20工資醫(yī)生工資(dsa)int20Zhuyuan-register的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注日期登記日期(rad)char10唯一標(biāo)識病案號病案號(pno)int15唯一標(biāo)識,引用病人外碼入院時間入院時間(iti)char10出院時間出院時間(gti)char10必須在入院時間之后病房編號病房號(rno)int15引用病房表的外碼病床編號病床號(rbe0int15引用病床表的外碼True-record的數(shù)據(jù)項描述:數(shù)據(jù)項名數(shù)據(jù)項含義類型長度備注時間治療日期(time)char8入院和出院時間之間,唯一標(biāo)識病案號病案號(pno)int15唯一標(biāo)識,引用病人外碼醫(yī)生編號主治醫(yī)生(dno)Int15唯一標(biāo)志,引用醫(yī)生外碼診斷病情診斷(tre)VARCHAR50醫(yī)生診斷結(jié)果治療方案治療方案(mea)VARCHAR200醫(yī)生給出的治療方案7、物理設(shè)計7.1表匯總表名功能說明表Patient病人表,屬性列有病案號、姓名、性別、地址、電話、病房編號、醫(yī)生編號。主碼是病案號,外碼是醫(yī)生編號。病人可以查看關(guān)于自己的屬性列及住院信息。表Doctor醫(yī)生表,屬性有醫(yī)生編號、姓名、性別、職稱、電話號碼、部門。醫(yī)生編號是主碼。醫(yī)生可以查看自己的屬性列及病人病情狀況。表Patient-room病房表,屬性列有病房編號、地點、收費標(biāo)準(zhǔn)、所屬科室。病房編號是主碼。病房表的創(chuàng)建便于醫(yī)生查看治療病人的住院地點、便于病人明確自己的收費標(biāo)準(zhǔn)。表Patient-bed病床表,主碼為病房編號和床位號。外碼為病房編號。此表方便病房管理員進(jìn)一步掌握各病人的詳細(xì)床位信息。表True-register治療記錄表,治療時間、病案號、醫(yī)生編號共同為主碼。此表由病房管理員對于每一位住院的病人進(jìn)行分配登記。醫(yī)生查詢此表可以了解所醫(yī)治病人的診斷信息并提出治療方案。表Zhuyuan-register住院登記表,主碼為日期和病案號,屬性列有入院時間、出院時間、病房編號、床位號。外碼為病案號、病房編號、床位號。7.2表[]7.2.1表名Patient數(shù)據(jù)庫用戶病人主鍵病案號其他排序字段病人姓名,性別,地址,電話號碼,病房編號,醫(yī)生編號索引字段病案號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1pnoInt(15)NY高主碼2pnameChar(20)NN中3psexChar(2)YN低男必須是“男”或者“女”4paddVarchar(100)YN中5ptelSmallint(10)YN中6proChar(4)NN低7ppnoInt(15)YN低一位病人只能對應(yīng)一位主治醫(yī)生的醫(yī)生編號(引用醫(yī)生表中的醫(yī)生編號外碼)Mysql腳本Createtable(Pnoint(15)primarykeynotnull,Pnamechar(20),Psexchar(2)default‘男’check(‘男’,’女’),Paddvarchar(100),Prochar(4),Ppnoint(15)foreignkey)7.2.2表名Doctor數(shù)據(jù)庫用戶醫(yī)生主鍵醫(yī)生編號其他排序字段醫(yī)生姓名,性別,職稱,電話,部門,工資索引字段醫(yī)生編號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1dnoint(15)NY高主碼2dnameChar(20)NN中3dsexChar(2)YN中男必須是“男”或者“女”4dzhiVarchar(20)NN低5dtelSmallint(10)YN中6dbuVarchar(20)NN低7dsaInt(20)YN低Mysql腳本Createtable(dnoint(15)primarykey,dnamechar(20),dsexchar(2)default‘男’check(‘男’,’女’),dzhivarchar(20),dtelsmallint(10),dbuvarchar(20),dsaint(20),)7.2.3表名proom數(shù)據(jù)庫用戶病房管理員、病人主鍵病房編號其他排序字段地點,收費標(biāo)準(zhǔn),所屬部門索引字段病房編號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1rnoInt(15)NY高主碼2raddChar(20)NN中非空3rchaInt(15)YN低4rbumVarchar(20)NN低Mysql腳本Createtableproom(rnoint(15)primarykey,Raddchar(20)notnull,Rchaint(15),Rbumvarchar(20),)7.2.4表名pbed數(shù)據(jù)庫用戶病房管理員主鍵病房編號和床位號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1rnoInt(15)NY高主碼,引用proom的外碼2rbeInt(15)NY高主碼Mysql腳本Createtablepbed(rnoint(15)referencesproom(床位號)Rbeint(15)primarykey)7.2.5表名Zhuyuan-register數(shù)據(jù)庫用戶病房管理員、病人主鍵日期和病案號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1rdaChar(10)NY高主碼2pnoInt(15)NY高主空,引用病人表的外碼3itiChar(10)NN低4gtiChar(10)NN低5rnoInt(15)YN低引用病房表的外碼6rbeInt(15)YN引用病床表的外碼Mysql腳本CreatetableZhuyuan-register(rdachar(10)primarykey,Pnoint(15)referencespatient(pno)notnull,Itichar(10),Gtichar(10),Rnoint(15)referencesproom(rno),Rbeint(15)referencespbed(rbe),)7.2.6表名True-record數(shù)據(jù)庫用戶病房管理員、醫(yī)生主鍵治療時間,病案號和醫(yī)生編號序號字段名稱數(shù)據(jù)類型(精度范圍)允許為空Y/N唯一Y/N區(qū)別度默認(rèn)值約束條件/說明1timeChar(8)NY高主碼2pnoInt(15)YY高主碼,引用病人表的外碼3dnoInt(15)YY高主碼,引用醫(yī)生表的外碼4treVarchar(50)YN低5dnoVarchar(200)YN低Mysql腳本CreatetableTrue-record(timechar(8)primarykey,Pnoint(15)referencespatient(pno),Dnoint(15)referencesdoctor(dno),trevarchar(50),meavarchar(200))7.1.3視圖的設(shè)計病人能看到的視圖每個視圖采用一張表格進(jìn)行描述,其格式如下:數(shù)據(jù)庫編號:Kf-001-2012視圖編號:P-001-2012視圖英文名稱:patient視圖中文名稱:病歷視圖說明:病人可以看到入院出院日期,就醫(yī)花費,且只能看到自己的部分Createviewv_patientAsSelectpatient.pno,pname,rdate,ruyuandate,chuyuandate,rno,bedno,pafeeFrompatientjoinzhuyuan-recordonpatient.pno=zhuyuan-record.pno醫(yī)生能看到的視圖數(shù)據(jù)庫編號:Kf-001-2012視圖編號:D-002-2012視圖英文名稱:doctor視圖中文名稱:醫(yī)生視圖說明:醫(yī)生可以看到工資,負(fù)責(zé)的病人的治療概況,且只能看到自己的部分Createviewv_doctorAsSelectdoctor.dno,dname,dkeshi,dpay,pno,pail,zhiliaofanganFromdoctorjointreat-gisterondoctor.dno=treat-gister.dno系統(tǒng)管理員可以看到的視圖數(shù)據(jù)庫編號:Kf-001-2012視圖編號:ALL-003-2012視圖英文名稱:all-data視圖中文名稱:全部數(shù)據(jù)視圖說明:管理員可以看到醫(yī)生病人的對應(yīng)關(guān)系,病人繳納費用,住院時間,所有醫(yī)生工資,Createviewv_all_dataAsSelectpatient.pno,pname,doctor.dno,dname,pafee,dpay,dkeshi,zhuyuandate,chuyuandate,paill,dateFrompatientjoinzhuyuan-recordonpatient.pno=zhuyuan-record.pnojointreat-gisteronpatient.pno=treat-gister.pnojoindoctorontreat-gister.dno=doctor.dno7.1.4觸發(fā)器的設(shè)計及函數(shù)設(shè)計1.錄用(新鍵入)的醫(yī)生的年齡必須在五十歲以下cratetriggerp_ageon醫(yī)生forinsert,updateasifexists(select*frominsertedwherepage〉50)beginprint’醫(yī)生年齡應(yīng)小于五十rollbackend2.醫(yī)生的最低工資應(yīng)該大于1300元cratetriggerdoc_salary1on醫(yī)生forinsert,updateasifexists(select*frominsertedwhere‘最低工資<1300)beginprint’最低工資應(yīng)大于1300’rollbackend3.病房里的病房號必須小于23cratetriggerroom_rnoon病房號forinsert,updateasifexists(select*frominserted,where‘rno>23’)beginprint’病房號應(yīng)小于23’rollbackendend8安全設(shè)計8.1.1安全防護(hù)·對數(shù)據(jù)庫存儲敏感信息:針對本系統(tǒng)我們對用戶密碼進(jìn)行加密,以保證各級用戶對系統(tǒng)訪問的安全性。生成的口令不可逆轉(zhuǎn)(用MD5加密是一種32位字符的加密方法)。輸入的口令不應(yīng)顯示在顯示終端上?!?shù)據(jù)信息的保存:利用RDBMS的服務(wù)器穩(wěn)定運行—實現(xiàn)各種信息的儲存、控制及調(diào)節(jié)備份、恢復(fù)等日常的維護(hù)管理工作。在軟件園后期的項目中建立異地備份服務(wù)器后備份數(shù)據(jù)進(jìn)行異地保存。8.1.2操作跟蹤針對系統(tǒng)運行出現(xiàn)的異常,跟蹤調(diào)查出現(xiàn)異常的情況,了解操作意圖,有針對性的解決問題。系統(tǒng)日志,便于查看系統(tǒng)的運行情況。操作日志,提供用戶在系統(tǒng)中增加、修改系統(tǒng)數(shù)據(jù)信息時記錄日志。用于跟蹤用戶的操作,了解信息的變更,在需要時對事情進(jìn)行調(diào)查8.1.3訪問控制·頁面不可直接訪問,防止黑客對頁面篡改。頁面訪問通過連接動作驅(qū)動,訪問時作權(quán)限檢查。有效防止用戶通過地址欄輸入地址對信息非法訪問。系統(tǒng)在頁面執(zhí)行過一次后再次訪問通過緩沖工作區(qū)執(zhí)行,對頁面屏蔽。易用性·醫(yī)院管理系統(tǒng)要簡單、易用,具有清晰的導(dǎo)航功能,使操作者快速找到自己想要執(zhí)行的操作頁面。·醫(yī)院管理系統(tǒng)要保證一個非計算機專業(yè)的用戶,通過自己閱讀用戶手冊,可以使用此系統(tǒng)。8.2角色與權(quán)限角色或者執(zhí)行者(Actor)是指與系統(tǒng)產(chǎn)生交互的外部用戶或者外部系統(tǒng),本系統(tǒng)主要包括病人,醫(yī)生,病房管理員和系統(tǒng)管理員等角色(Actor)。8.2.1角色管理可以對單個角色進(jìn)行添加、修改、刪除和查詢等維護(hù)操作,可以針對不同的角色選擇對應(yīng)的權(quán)限進(jìn)行設(shè)置。用例描述:角色管理執(zhí)行者:系統(tǒng)管理員前置條件:系統(tǒng)管理員已登錄系統(tǒng)后置條件:角色信息維護(hù)后,相應(yīng)信息記錄到數(shù)據(jù)庫中,以供帳號授權(quán)使用基本路徑: 進(jìn)入角色管理界面,顯示目前的角色列表;點擊不同的角色,可以顯示這個角色的信息以及相應(yīng)權(quán)限,必要時可以修改其權(quán)限;可以增加、修改、刪除角色。8.2.2角色創(chuàng)建角色可以訪問的表與列操作權(quán)限病人patient表查詢patient-room表查詢zhouyuan-record表查詢cure-gister表查詢醫(yī)生doctor表查詢cure-gister表查詢病房管理員proom表查詢,插入,刪除Patient表查詢,插入,刪除Patient-bed表查詢,修改zhuyuan-record表查詢,修改Cure-gister表查詢,插入,修改,刪除系統(tǒng)管理員Patient-room表查詢,插入,修改,刪除doctor表查詢,插入,修改,刪除patient表查詢,插入,修改,刪除Patient-bed表查詢,插入,修改,刪除Zhuyuan-record表查詢,插入,修改,刪除cure-gister表查詢,插入,修改,刪除8.3應(yīng)用級用戶設(shè)計應(yīng)用級的用戶賬號密碼不能與數(shù)據(jù)庫想通,防止用戶直接操作數(shù)據(jù)庫。用戶只能用賬號登錄到應(yīng)用軟件,通過應(yīng)用軟件訪問數(shù)據(jù)庫,而沒用其他途徑操作數(shù)據(jù)庫。8.3.1登錄管理登錄管理是負(fù)責(zé)所有用戶的登錄,用戶要登錄到綜合信息管理平臺必須經(jīng)過登錄界面,輸入自己的用戶名和密碼,通過判斷這個用戶的權(quán)限信息,不同的登錄人可能具有不同的權(quán)限,根據(jù)不同的權(quán)限現(xiàn)實不同的功能。8.3.2用戶管理當(dāng)進(jìn)入用戶管理模塊時,在用戶管理中可以增加或刪除用戶,編輯用戶名,用戶密碼,修改用戶權(quán)限,具有不同權(quán)限的用戶進(jìn)入系統(tǒng)主界面,界面左側(cè)欄中的圖標(biāo)數(shù)有所不同,具體的面標(biāo)與用戶所具有的權(quán)限對應(yīng)。8.3.3日志查詢實現(xiàn)對用戶的所有操作過程的歷史日志查詢。查詢結(jié)果以列表方式顯示,可以根據(jù)查詢條件進(jìn)行過濾。8.4用戶密碼管理用戶賬號的密碼必須進(jìn)行加密處理,確保在任何地方的查詢都不能出現(xiàn)密碼的明文。用戶帳號采用MD5進(jìn)行數(shù)據(jù)加密后再錄入數(shù)據(jù)庫,以防止任何地方密碼的安全性要求。8.5防止用戶直接操作數(shù)據(jù)庫的方法建立應(yīng)用程序角色,給角色相應(yīng)的權(quán)限,然后應(yīng)用程序以各自的用戶登錄就可以了(scott是一個系統(tǒng)已經(jīng)新建好的普通用戶用戶名scott,密碼默認(rèn)tiger,默認(rèn)狀態(tài)是被定,DBA用戶執(zhí)行alteruserscottaccountunlock;可以解鎖登陸)8.6性能測試8.6.1性能需求根據(jù)用戶對本系統(tǒng)的要求,確定系統(tǒng)在響應(yīng)時間、可靠性、安全性等方面有較高的性能要求。8.6.2界面需求 系統(tǒng)的界面要求如下:1)頁面內(nèi)容:主題突出,站點定義、術(shù)語和行文格式統(tǒng)一、規(guī)范、明確,欄目、菜單設(shè)置和布局合理,傳遞的信息準(zhǔn)確、及時。內(nèi)容豐富,文字準(zhǔn)確,語句通順;專用術(shù)語規(guī)范,行文格式統(tǒng)一規(guī)范。2)導(dǎo)航結(jié)構(gòu):頁面具有明確的導(dǎo)航指示,且便于理解,方便用戶使用。3)技術(shù)環(huán)境:頁面大小適當(dāng),能用各種常用瀏覽器以不同分辨率瀏覽;無錯誤鏈接和空鏈接;采用CSS處理,控制字體大小和版面布局。4)藝術(shù)風(fēng)格:界面、版面形象清新悅目、布局合理,字號大小適宜、字體選擇合理,前后一致,美觀大方;動與靜搭配恰當(dāng),動靜效果好;色彩和諧自然,與主題內(nèi)容相協(xié)調(diào)。8.6.3響應(yīng)時間需求無論是客戶端和管理端,當(dāng)用戶登錄,進(jìn)行任何操作的時候,系統(tǒng)應(yīng)該及時的進(jìn)行反應(yīng),反應(yīng)的時間在5秒以內(nèi)。系統(tǒng)應(yīng)能監(jiān)測出各種非正常情況,如與設(shè)備的通信中斷,無法連接數(shù)據(jù)庫服務(wù)器等,避免出現(xiàn)長時間等待甚至無響應(yīng)。8.6.4可靠性需求系統(tǒng)應(yīng)保證7X24內(nèi)不當(dāng)機,保證20人可以同時在客戶端登錄,系統(tǒng)正常運行,正確提示相關(guān)內(nèi)容。8.6.5開放性需求系統(tǒng)應(yīng)具有十分的靈活性,以適應(yīng)將來功能擴展的需求。8.6.6可擴展性需求系統(tǒng)設(shè)計要求能夠體現(xiàn)擴展性要求,以適應(yīng)將來功能擴展的需求。8.6.7系統(tǒng)安全性需求系統(tǒng)有嚴(yán)格的權(quán)限管理功能,各功能模塊需有相應(yīng)的權(quán)限方能進(jìn)入。系統(tǒng)需能夠防止各類誤操作可能造成的數(shù)據(jù)丟失,破壞,同時防止用戶非法獲取網(wǎng)頁以及內(nèi)容。8.7優(yōu)化數(shù)據(jù)庫優(yōu)化的目標(biāo)無非是避免磁盤I/O瓶頸、減少CPU利用率和減少資源競爭。8.7.1基于第三范式的基本表設(shè)計在基于表驅(qū)動的信息管理系統(tǒng)(MIS)中,基本表的設(shè)計規(guī)范是第三范式。第三范式的基本特征是非主屬性只依賴于主屬性?;诘谌妒降臄?shù)據(jù)庫表設(shè)計具有很多優(yōu)點:1.消除了冗余數(shù)據(jù),節(jié)省了磁盤存儲空間;2.有良好的數(shù)據(jù)完整性限制,即基于主外碼的參照完整限制和基于主碼的實體完整性限制,這使得數(shù)據(jù)容易維護(hù),也容易移植和更新;3.數(shù)據(jù)的可逆性好,在做連接(Join)查詢或者合并表時不遺漏、也不重復(fù);4.因消除了冗余數(shù)據(jù)(冗余列),在查詢(Select)時每個數(shù)據(jù)頁存的數(shù)據(jù)行就多,這樣就有效地減少了邏輯I/O,每個Cash存的頁面就多,也減少物理I/O;5.對大多數(shù)事務(wù)(Transaction)而言,運行性能好;6.物理設(shè)計(PhysicalDesign)的機動性較大,能滿足日益增長的用戶需求。在基本表設(shè)計中,表的主碼、外碼、索引設(shè)計占有非常重要的地位,現(xiàn)在從系統(tǒng)數(shù)據(jù)庫優(yōu)化角度討論這些基本概念及其重要意義:(1)主碼(PrimaryKey):主碼被用于復(fù)雜的SQL語句時,頻繁地在數(shù)據(jù)訪問中被用到。一個表只有一個主碼。主碼應(yīng)該有固定值(不能為Null或缺省值,要有相對穩(wěn)定性),不含代碼信息,易訪問。把常用的列作為主碼才有意義。短主碼最佳(小于25bytes),主碼的長短影響索引的大小,索引的大小影響索引頁的大小,從而影響磁盤I/O。主碼分為自然主碼和人為主碼。自然主碼由實體的屬性構(gòu)成,自然主碼可以是復(fù)合性的,在形成復(fù)合主碼時,主碼列不能太多,復(fù)合主碼使得Join操作復(fù)雜化、也增加了外碼表的大小。人為主碼是在沒有合適的自然屬性碼、或自然屬性復(fù)雜或靈敏度高時,人為形成的。人為主碼一般是整型值(滿足最小化要求),沒有實際意義,也略微增加了表的大小;但減少了把它作為外碼的表的大小。(2)外碼(ForeignKey):外碼的作用是建立關(guān)系型數(shù)據(jù)庫中表之間的關(guān)系(參照完整性),主碼只能從獨立的實體遷移到非獨立的實體,成為后者的一個屬性,被稱為外碼。(3)索引(Index):利用索引優(yōu)化系統(tǒng)性能是顯而易見的,主要有以下幾個方面:對所有常用于查詢中的Where子句的列和所有用于排序的列創(chuàng)建索引,可以避免整表掃描或訪問,在不改變表的物理結(jié)構(gòu)的情況下,直接訪問特定的數(shù)據(jù)列,從而減少數(shù)據(jù)存取時間;利用索引可以優(yōu)化或排除耗時的分類操作,把數(shù)據(jù)分散到不同的頁面上,就分散了插入的數(shù)據(jù);主碼自動建立了唯一索引,因此唯一索引也能確保數(shù)據(jù)的唯一性(即實體完整性);索引碼越小,定位就越直接;新建的索引效能最好,因此定期更新索引非常必要。索引也有代價:有空間開銷,建立它也要花費時間,在進(jìn)行Insert、Delete和Update*作時,也有維護(hù)代價。索引有兩種:聚族索引和非聚族索引。一個表只能有一個聚族索引,可有多個非聚族索引。使用聚族索引查詢數(shù)據(jù)要比使用非聚族索引快。在建索引前,應(yīng)利用數(shù)據(jù)庫系統(tǒng)函數(shù)估算索引的大小。聚族索引(ClusteredIndex):聚族索引的數(shù)據(jù)頁按物理有序儲存,占用空間小。選擇策略是被用于Where子句的列:包括范圍查詢、模糊查詢或高度重復(fù)的列(連續(xù)磁盤掃描);被用于連接Join操作的列;被用于Orderby和Groupby子句的列。聚族索引不利于插入操作,另外沒有必要用主碼建聚族索引。非聚族索引(NonclusteredIndex):與聚族索引相比,占用空間大,而且效率低。選擇策略是,被用于Where子句的列:包括范圍查詢、模糊查詢(在沒有聚族索引時)、主碼或外碼列、點(指針類)或小范圍(返回的結(jié)果域小于整表數(shù)據(jù)的20%)查詢;被用于連接Join操作的列、主碼列(范圍查詢);被用于Orderby和Groupby子句的列;需要被覆蓋的列。對只讀表建多個非聚族索引有利。索引也有其弊端,一是創(chuàng)建索引要耗費時間,二是索引要占有大量磁盤空間,三是增加了維護(hù)代價(在修改帶索引的數(shù)據(jù)列時索引會減緩修改速度)。(4)鎖:鎖是并行處理的重要機制,能保持?jǐn)?shù)據(jù)并發(fā)的一致性,即按事務(wù)進(jìn)行處理;系統(tǒng)利用鎖,保證數(shù)據(jù)完整性。因此,我們避免不了死鎖,但在設(shè)計時可以充分考慮如何避免長事務(wù),減少排它鎖時間,減少在事務(wù)中與用戶的交互,杜絕讓用戶控制事務(wù)的長短;要避免批量數(shù)據(jù)同時執(zhí)行,尤其是耗時并用到相同的數(shù)據(jù)表。鎖的征用:一個表同時只能有一個排它鎖,一個用戶用時,其它用戶在等待。若用戶數(shù)增加,則Server的性能下降,出現(xiàn)“假死”現(xiàn)象。如何避免死鎖呢?從頁級鎖到行級鎖,減少了鎖征用;給小表增加無效記錄,從頁級鎖到行級鎖沒有影響,若在同一頁內(nèi)競爭有影響,可選擇合適的聚族索引把數(shù)據(jù)分配到不同的頁面;創(chuàng)建冗余表;保持事務(wù)簡短;同一批處理應(yīng)該沒有網(wǎng)絡(luò)交互。(5)查詢優(yōu)化規(guī)則:在訪問數(shù)據(jù)庫表的數(shù)據(jù)(AccessData)時,要盡可能避免排序(Sort)、連接(Join)和相關(guān)子查詢*作。經(jīng)驗告訴我們,在優(yōu)化查詢時,必須做到:①盡可能少的行;②避免排序或為盡可能少的行排序,若要做大量數(shù)據(jù)排序,最好將相關(guān)數(shù)據(jù)放在臨時表中*作;用簡單的碼(列)排序,如整型或短字符串排序;③避免表內(nèi)的相關(guān)子查詢;④避免在Where子句中使用復(fù)雜的表達(dá)式或非起始的子字符串、用長字符串連接;⑤在Where子句中多使用“與”(And)連接,少使用“或”(Or)連接;⑥利用臨時數(shù)據(jù)庫。在查詢多表、有多個連接、查詢復(fù)雜、數(shù)據(jù)要過濾時,可以建臨時表(索引)以減少I/O。但缺點是增加了空間開銷。除非每個列都有索引支持,否則在有連接的查詢時分別找出兩個動態(tài)索引,放在工作表中重新排序。8.7.3基本表擴展設(shè)計基于第三范式設(shè)計的庫表雖然有其優(yōu)越性,然而在實際應(yīng)用中有時不利于系統(tǒng)運行性能的優(yōu)化:如需要部分?jǐn)?shù)據(jù)時而要掃描整表,許多過程同時競爭同一數(shù)據(jù),反復(fù)用相同行計算相同的結(jié)果,過程從多表獲取數(shù)據(jù)時引發(fā)大量的連接操作,當(dāng)數(shù)據(jù)來源于多表時的連接操作;這都消耗了磁盤I/O和CPU時間。尤其在遇到下列情形時,要對基本表進(jìn)行擴展設(shè)計:許多過程要頻繁訪問一個表、子集數(shù)據(jù)訪問、重復(fù)計算和冗余數(shù)據(jù),有時用戶要求一些過程優(yōu)先或低的響應(yīng)時間。根據(jù)訪問的頻繁程度對相關(guān)表進(jìn)行分割處理、存儲冗余數(shù)據(jù)、存儲衍生列、合并相關(guān)表處理,這些都是克服這些不利因素和優(yōu)化系統(tǒng)運行的有效途徑。8.7.4存儲衍生數(shù)據(jù)對一些要做大量重復(fù)性計算的過程而言,若重復(fù)計算過程得到的結(jié)果相同(源列數(shù)據(jù)穩(wěn)定,因此計算結(jié)果也不變),或計算牽扯多行數(shù)據(jù)需額外的磁盤I/O開銷,或計算復(fù)雜需要大量的CPU時間,就考慮存儲計算結(jié)果(冗余儲存)?,F(xiàn)予以分類說明:若在一行內(nèi)重復(fù)計算,就在表內(nèi)增加列存儲結(jié)果。但若參與計算的列被更新時,必須要用觸發(fā)器更新這個新列。若對表按

溫馨提示

  • 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

提交評論