




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
通用權(quán)限管理系統(tǒng)設(shè)計篇三概要設(shè)計說明書轉(zhuǎn)在前兩篇文章中,不少摯友對我的設(shè)計提出了異議,認為過于困難,當然在實際的各種系統(tǒng)的權(quán)限管理模塊中,并不像這里設(shè)計得那么困難,我以前所做的系統(tǒng)中,由只有用戶和權(quán)限的,有只有用戶、權(quán)限和角色的,還有一個系統(tǒng)用到了用戶、權(quán)限、角色、組概念,這個系統(tǒng)是我在思索以前所做系統(tǒng)的權(quán)限管理部分中找到的一些共性而想到的一個設(shè)計方案,當然還會有不少設(shè)計不到位的地方,在設(shè)計開發(fā)過程中會漸漸改進,這個系統(tǒng)權(quán)當學習只用,各位摯友的好的建議我都會考慮到設(shè)計中,感謝各位摯友的支持。今日抽時間整了一份概念設(shè)計出來,還有一些地方尚未考慮清晰,貼出1.0版,希望各位摯友提出珍貴建議。大家也可以點擊此處《通用權(quán)限管理概要設(shè)計說明書》自行下載,這是1.0版本,有些地方可能還會進行部分修改,有愛好的摯友請關(guān)注我的blog。1.引言1.1編寫目的本文檔對通用權(quán)限管理系統(tǒng)的總體設(shè)計、接口設(shè)計、界面總體設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計、系統(tǒng)出錯處理設(shè)計以及系統(tǒng)平安數(shù)據(jù)進行了說明。1.2背景a、軟件系統(tǒng)的名稱:通用權(quán)限管理系統(tǒng);b、任務(wù)提出者、開發(fā)者:謝星星;c、在J2EE的web系統(tǒng)中須要運用權(quán)限管理的系統(tǒng)。1.3術(shù)語本系統(tǒng):通用權(quán)限管理系統(tǒng);SSH:英文全稱是SecureShell。1.4預(yù)期讀者與閱讀建議預(yù)期讀者閱讀重點開發(fā)人員總體設(shè)計、接口設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計、界面總體設(shè)計、系統(tǒng)出錯處理設(shè)計設(shè)計人員總體設(shè)計、接口設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計、系統(tǒng)平安設(shè)計1.5參考資料《通用權(quán)限管理系統(tǒng)需求規(guī)格說明書》《通用權(quán)限管理系統(tǒng)數(shù)據(jù)庫設(shè)計說明書》2.總體設(shè)計2.1設(shè)計目標權(quán)限系統(tǒng)始終以來是我們應(yīng)用系統(tǒng)不行缺少的一個部分,若每個應(yīng)用系統(tǒng)都重新對系統(tǒng)的權(quán)限進行設(shè)計,以滿意不同系統(tǒng)用戶的需求,將會奢侈我們不少珍貴時間,所以花時間來設(shè)計一個相對通用的權(quán)限系統(tǒng)是很有意義的。本系統(tǒng)的設(shè)計目標是對應(yīng)用系統(tǒng)的全部資源進行權(quán)限限制,比如應(yīng)用系統(tǒng)的功能菜單、各個界面的按鈕控件等進行權(quán)限的操控。2.2運行環(huán)境操作系統(tǒng):Windows系統(tǒng)操作系統(tǒng)和Linux系列操作系統(tǒng)。2.3網(wǎng)絡(luò)結(jié)構(gòu)通用權(quán)限管理系統(tǒng)可采納JavaSwing實現(xiàn),可以在桌面應(yīng)用和Web應(yīng)用系統(tǒng)中進行調(diào)用。假如須要要適應(yīng)全部開發(fā)語言,可以將其API發(fā)布到WEBService上。短暫用JavaSwing實現(xiàn)。2.4總體設(shè)計思路和處理流程在說明總體設(shè)計思路前,我們先說明本系統(tǒng)的相關(guān)概念:1.權(quán)限資源系統(tǒng)的全部權(quán)限信息。權(quán)限具有上下級關(guān)系,是一個樹狀的結(jié)構(gòu)。下面來看一個例子系統(tǒng)管理用戶管理查看用戶新增用戶修改用戶刪除用戶對于上面的每個權(quán)限,又存在兩種狀況,一個是只是可訪問,另一種是可授權(quán),例如對于"查看用戶"這個權(quán)限,假如用戶只被授予"可訪問",那么他就不能將他所具有的這個權(quán)限安排給其他人。2.用戶應(yīng)用系統(tǒng)的詳細操作者,用戶可以自己擁有權(quán)限信息,可以歸屬于0~n個角色,可屬于0~n個組。他的權(quán)限集是自身具有的權(quán)限、所屬的各角色具有的權(quán)限、所屬的各組具有的權(quán)限的合集。它與權(quán)限、角色、組之間的關(guān)系都是n對n的關(guān)系。3.角色為了對很多擁有相像權(quán)限的用戶進行分類管理,定義了角色的概念,例如系統(tǒng)管理員、管理員、用戶、訪客等角色。角色具有上下級關(guān)系,可以形成樹狀視圖,父級角色的權(quán)限是自身及它的全部子角色的權(quán)限的綜合。父級角色的用戶、父級角色的組同理可推。4.組為了更好地管理用戶,對用戶進行分組歸類,簡稱為用戶分組。組也具有上下級關(guān)系,可以形成樹狀視圖。在實際狀況中,我們知道,組也可以具有自己的角色信息、權(quán)限信息。這讓我想到我們的QQ用戶群,一個群可以有多個用戶,一個用戶也可以加入多個群。每個群具有自己的權(quán)限信息。例如查看群共享。QQ群也可以具有自己的角色信息,例如一般群、高級群等。針對如上提出的四種對象,我們可以整理得出它們之間的關(guān)系圖,如下所示:總體設(shè)計思路是將系統(tǒng)分為組權(quán)限管理、角色權(quán)限管理、用戶權(quán)限管理、組織管理和操作日志管理五部分。其中組權(quán)限管理包括包含用戶、所屬角色、組權(quán)限資源和組總權(quán)限資源四部分,某個組的權(quán)限信息可用公式表示:組權(quán)限=所屬角色的權(quán)限合集+組自身的權(quán)限。角色權(quán)限管理包括包含用戶、包含組和角色權(quán)限三部分,某個角色的權(quán)限的計算公式為:角色權(quán)限=角色自身權(quán)限。用戶權(quán)限管理包括所屬角色、所屬組、用戶權(quán)限、用戶總權(quán)限資源和組織管理五部分。某個用戶總的權(quán)限信息存在如下計算公式:用戶權(quán)限=所屬角色權(quán)限合集+所屬組權(quán)限合集+用戶自身權(quán)限。組織管理即對用戶所屬的組織進行管理,組織以樹形結(jié)構(gòu)展示,組織管理具有組織的增、刪、改、查功能。操作日志管理用于管理本系統(tǒng)的操作日志。留意:因為組和角色都具有上下級關(guān)系,所以下級的組或角色的權(quán)限只能在自己的直屬上級的權(quán)限中選擇,下級的組或者角色的總的權(quán)限都不能大于直屬上級的總權(quán)限。2.5模塊結(jié)構(gòu)設(shè)計本系統(tǒng)的具有的功能模塊結(jié)構(gòu)如下圖所示:2.6尚未解決的問題無。3.接口設(shè)計(暫略)3.1用戶接口(暫略)3.2外部接口(暫略)3.3內(nèi)部接口(暫略)4.界面總體設(shè)計本節(jié)將闡述用戶界面的實現(xiàn),在此之前對頁面元素做如下約定:序號頁面元素約定1按鈕未選中時:[按鈕名稱]選中時:[按鈕名稱]2單選框3復(fù)選框4下拉框選項,…,]▽5文本框|_|6TextArea|…|7頁簽未選中時:選項名稱選中時:選項名稱8未選中鏈接鏈接文字9選中鏈接鏈接文字10說明信息說明信息4.1組權(quán)限管理4.1.1包含用戶組信息組1組11組12組…組2組21組22組…所選擇組:組1包含用戶所屬角色]組權(quán)限][總權(quán)限]修改]…當用戶選擇"修改"按鈕時,彈出用戶列表,操作人可以通過勾選或取消勾選來修改該組所包含的用戶。4.1.2所屬角色組信息組1組11組12組…組2組21組22組…所選擇組:組1包含用戶][所屬角色][組權(quán)限][總權(quán)限]修改]角色ID角色名稱角色描述1訪客--2初級用戶--當用戶選擇"修改"按鈕時,彈出角色樹形結(jié)構(gòu),操作人可以通過勾選或取消勾選來修改該組所屬的角色。4.1.3組權(quán)限組信息組1組11組12組…組2組21組22組…所選擇組:組1包含用戶][所屬角色][組權(quán)限][總權(quán)限][4.1.4總權(quán)限組信息組1組11組12組…組2組21組22組…所選擇組:組1包含用戶][所屬角色][組權(quán)限][總權(quán)限][通過對已具有的權(quán)限取消勾選,或為某權(quán)限添加勾選,來修改組的權(quán)限信息,點擊"保存"按鈕保存修改信息。在下圖中,選中組1的時候,右鍵點擊可彈出組的操作列表,包括添加、刪除和修改按鈕,從而完成在該組下添加子組,刪除該組以及修改該組的功能。組信息組1組11組12組…組2組21組22組…所選擇組:組1包含用戶所屬角色][組權(quán)限][總權(quán)限]修改]…4.2角色權(quán)限管理4.2.1包含用戶角色信息角色1角色11角色12角色…角色2角色21角色22角色…所選擇角色:角色1包含用戶包含組][角色權(quán)限]修改]…當用戶選擇"修改"按鈕時,彈出用戶列表,操作人可以通過勾選或取消勾選來修改該角色所包含的用戶。4.2.2包含組角色信息角色1角色11角色12角色…角色2角色21角色22角色…所選擇角色:角色1包含用戶][包含組][角色權(quán)限]修改]組ID組名稱組描述1xxx1--2xxx2--…當用戶選擇"修改"按鈕時,彈出用戶列表,操作人可以通過勾選或取消勾選來修改該角色所包含的組。4.2.3角色權(quán)限角色信息角色1角色11角色12角色…角色2角色21角色22角色…所選擇角色:角色1包含用戶][包含組][角色權(quán)限][通過對已具有的權(quán)限取消勾選,或為某權(quán)限添加勾選,來修改角色的權(quán)限信息,點擊"保存"按鈕保存修改信息。4.2.4管理角色在下圖中,選中組1的時候,右鍵點擊可彈出組的操作列表,包括添加、刪除和修改按鈕,從而完成在該組下添加子組,刪除該組以及修改該組的功能。角色信息角色1角色11角色12角色…角色2角色21角色22角色…所選擇角色:角色1包含用戶包含組][角色權(quán)限]修改]…4.3用戶權(quán)限管理4.3.1所屬角色用戶權(quán)限信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色所屬組][用戶權(quán)限][總權(quán)限]修改]角色ID角色名稱角色描述1訪客--2初級用戶--…當用戶選擇"修改"按鈕時,彈出角色樹形結(jié)構(gòu),操作人可以通過勾選或取消勾選來修改該用戶所屬的角色。4.3.2所屬組用戶信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色][所屬組][用戶權(quán)限][總權(quán)限]修改]組ID組名稱組描述1組1--2組2--…當用戶選擇"修改"按鈕時,彈出組的樹形結(jié)構(gòu),操作人可以通過勾選或取消勾選來修改該用戶所屬的組。4.3.3用戶權(quán)限用戶信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色][所屬組]用戶權(quán)限][總權(quán)限][通過對已具有的權(quán)限取消勾選,或為某權(quán)限添加勾選,來修改用戶的權(quán)限信息,點擊"保存"按鈕保存修改信息。4.3.4總權(quán)限用戶信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色][所屬組][用戶權(quán)限][總權(quán)限][通過對已具有的權(quán)限取消勾選,或為某權(quán)限添加勾選,來修改用戶的權(quán)限信息,點擊"保存"按鈕保存修改信息。4.3.5用戶管理當選擇了某用戶時,點擊右鍵,彈出菜單列表:修改、刪除、取消,點擊修改和刪除按鈕可以實現(xiàn)用戶的刪除和修改功能。選擇某個組織,例如下表中的"廣州分公司",彈出菜單列表:添加子組織、刪除組織、修改組織、添加用戶、取消,點擊添加用戶按鈕可以實現(xiàn)用戶的添加功能。用戶權(quán)限信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色所屬組][用戶權(quán)限][總權(quán)限]修改]角色ID角色名稱角色描述1訪客--2初級用戶--…4.3.6組織管理選擇某個組織,例如下表中的"廣州分公司",彈出菜單列表:添加子組織、刪除組織、修改組織、添加用戶、取消,點擊添加子組織、刪除組織、修改組織按鈕可以實現(xiàn)組織的添加、刪除和修改功能。用戶權(quán)限信息xx公司廣州分公司阿蜜果肖xxyy…北京分公司zz1zz2zz3…所選擇用戶:阿蜜果所屬角色所屬組][用戶權(quán)限][總權(quán)限]修改]角色ID角色名稱角色描述1訪客--2初級用戶--…4.44.4.1查詢操作日志操作名稱:|_|操作人:|_|操作時間從|_|到|_|[查詢][重置][刪除]編號操作名稱操作內(nèi)容操作人操作時間1xx1--Amigo2007-10-82xx2--xxyy2007-10-8…輸入上圖表單中的查詢信息后,點擊"查詢"按鈕,可查詢出符合條件的信息。4.4.2刪除操作日志操作名稱:|_|操作人:|_|操作時間從|_|到|_|[查詢][重置][刪除]編號操作名稱操作內(nèi)容操作人操作時間1xx1--Amigo2007-10-82xx2--xxyy2007-10-8…輸入上圖表單中的查詢信息后,點擊"查詢"按鈕,可查詢出符合條件的信息。而后點擊"刪除"按鈕,可刪除符合查詢條件的操作日志。5.數(shù)據(jù)結(jié)構(gòu)設(shè)計數(shù)據(jù)庫設(shè)計的模型請參見《通用權(quán)限管理系統(tǒng)_數(shù)據(jù)庫模型.pdm》。表的說明請參見《通用權(quán)限管理系統(tǒng)數(shù)據(jù)庫設(shè)計說明書》。5.1設(shè)計原則5.1.1命名的規(guī)范數(shù)據(jù)庫中表、主鍵、外鍵、索引的命名都以統(tǒng)一的規(guī)則,采納大小寫敏感的形式,各種對象命名長度不要超過30個字符,這樣便于應(yīng)用系統(tǒng)適應(yīng)不同的數(shù)據(jù)庫平臺。5.1.2數(shù)據(jù)的一樣性和完整性為了保證數(shù)據(jù)庫的一樣性和完整性,往往通過表間關(guān)聯(lián)的方式來盡可能的降低數(shù)據(jù)的冗余。表間關(guān)聯(lián)是一種強制性措施,建立后,對父表(ParentTable)和子表(ChildTable)的插入、更新、刪除操作均要占用系統(tǒng)的開銷。假如數(shù)據(jù)冗余低,數(shù)據(jù)的完整性簡單得到保證,但增加了表間連接查詢的操作,為了提高系統(tǒng)的響應(yīng)時間,合理的數(shù)據(jù)冗余也是必要的。運用規(guī)則(Rule)和約束(Check)來防止系統(tǒng)操作人員誤輸入造成數(shù)據(jù)的錯誤是設(shè)計人員的另一種常用手段,但是,不必要的規(guī)則和約束也會占用系統(tǒng)的不必要開銷,須要留意的是,約束對數(shù)據(jù)的有效性驗證要比規(guī)則快。全部這些,須要在設(shè)計階段應(yīng)依據(jù)系統(tǒng)操作的類型、頻度加以均衡考慮。5.2數(shù)據(jù)庫環(huán)境說明數(shù)據(jù)庫:MySql5.0設(shè)計庫建模工具:PowerDesigner12.05.3數(shù)據(jù)庫命名規(guī)則表名以T開頭,外鍵以FK開頭,索引以INDEX開頭。5.4邏輯結(jié)構(gòu)pdm文件的名稱為:《通用權(quán)限管理系統(tǒng)_數(shù)據(jù)庫模型》。5.5物理存儲通過數(shù)據(jù)庫建模工具PowerDesigner12可以將pdm導(dǎo)出為文本文件,將數(shù)據(jù)庫腳本放入文本文件中保存。5.6數(shù)據(jù)備份和復(fù)原數(shù)據(jù)庫需定期備份(每天備份一次),備份文件格式為backup_yyyyMMdd,數(shù)據(jù)庫被破壞時,利用最新的備份文件進行復(fù)原。6.系統(tǒng)出錯處理設(shè)計6.1出錯信息錯誤分類子項及其編碼錯誤名稱錯誤代碼備注數(shù)據(jù)庫錯誤連接連接超時100001001連接斷開100001002數(shù)據(jù)庫本身錯誤代碼數(shù)據(jù)庫本身錯誤代碼100002+數(shù)據(jù)庫錯誤代碼TCP
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 碼頭貨物運輸合同
- 工程熱力學模擬試答題
- 企業(yè)內(nèi)部年度財務(wù)分析報告
- 寓言故事烏鴉喝水的啟示讀后感
- 企業(yè)知識產(chǎn)權(quán)保護及維權(quán)服務(wù)協(xié)議
- 年度目標達成報告
- 大數(shù)據(jù)挖掘在輿情監(jiān)控中的應(yīng)用實踐指南
- 如何正確使用辦公軟件提高效率
- 太陽能光伏發(fā)電系統(tǒng)安裝合同
- 人與自然紀錄片評析和諧共生的啟示
- 陜西省民用建筑能耗監(jiān)測系統(tǒng)技術(shù)指南
- TD/T 1044-2014 生產(chǎn)項目土地復(fù)墾驗收規(guī)程(正式版)
- 商業(yè)道德承諾書
- 中職語文必考文言文15篇
- 光伏電站巡檢記錄表完整
- 高血壓患者不遵醫(yī)飲食行為的原因分析及對策
- 《團隊的凝聚力》課件
- 膝關(guān)節(jié)僵硬個案護理
- 《民間皮影》課程標準
- 新教科版六下科學1.4《設(shè)計塔臺模型》教學設(shè)計(新課標)
- 電氣設(shè)備維修
評論
0/150
提交評論