版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
第五章管理信息系統(tǒng)的設計掌握系統(tǒng)設計的任務與原則;了解系統(tǒng)架構(gòu)設計的概念;熟悉軟件結(jié)構(gòu)設計的內(nèi)容;理解并掌握詳細設計的內(nèi)容。本章學習目標第五章管理信息系統(tǒng)的設計5.1系統(tǒng)設計概述5.2系統(tǒng)總體設計5.3系統(tǒng)詳細設計5.1.1
系統(tǒng)設計的依據(jù)
系統(tǒng)設計是在系統(tǒng)分析的基礎上由抽象到具體的過程,要考慮到系統(tǒng)實現(xiàn)的內(nèi)外環(huán)境和主客觀條件。通常系統(tǒng)設計階段工作可依據(jù)以下幾個方面來考慮:系統(tǒng)分析的成果現(xiàn)行技術(shù)現(xiàn)行的信息管理和信息技術(shù)標準、規(guī)范和有關法律制度用戶需求系統(tǒng)運行環(huán)境5.1系統(tǒng)設計概述1.系統(tǒng)性系統(tǒng)是作為統(tǒng)一整體而存在的,因此,在系統(tǒng)設計中,要從整個系統(tǒng)的角度進行考慮,系統(tǒng)的代碼要統(tǒng)一,設計規(guī)范要標準,傳遞語言要盡可能一致,對系統(tǒng)的數(shù)據(jù)采集要做到數(shù)出一處、全局共享,使一次輸入得到多次利用。5.1.2系統(tǒng)設計的原則2.靈活性為保持系統(tǒng)的長久生命力,要求系統(tǒng)具有很強的環(huán)境適應性。為此,系統(tǒng)應具有較好的開放性和結(jié)構(gòu)的可變性。5.1.2系統(tǒng)設計的原則3.可靠性可靠性是指系統(tǒng)抵御外界干擾的能力及受外界干擾時的恢復能力衡量系統(tǒng)可靠性的指標是平均故障間隔時間和平均維護時間5.1.2系統(tǒng)設計的原則4.經(jīng)濟性
經(jīng)濟性是指在滿足系統(tǒng)需求的前提下,盡可能減少系統(tǒng)的開銷。5.1.2系統(tǒng)設計的原則1.制定規(guī)范需要采用的管理規(guī)則:包括操作流程、交流方式、工作紀律等設計文檔的編制標準:包括文檔體系、文檔格式、圖表樣式等信息編碼形式,硬件、操作系統(tǒng)的接口規(guī)約,命名規(guī)則等設計目標、設計原則5.1.3系統(tǒng)設計的內(nèi)容2.系統(tǒng)架構(gòu)設計系統(tǒng)架構(gòu)設計就是根據(jù)系統(tǒng)的需求框架,確定系統(tǒng)的基本結(jié)構(gòu),以獲得有關系統(tǒng)創(chuàng)建的總體方案。5.1.3系統(tǒng)設計的內(nèi)容3.軟件結(jié)構(gòu)設計通常程序中的一個模塊完成一個適當?shù)墓δ?,應該把模塊組織成良好的層次系統(tǒng),頂層模塊調(diào)用它的下層模塊以實現(xiàn)程序的完整功能,每個下層模塊再調(diào)用更下層的模塊,從而完成程序的一個子功能,最下層模塊完成具體的功能。如果數(shù)據(jù)流程圖已經(jīng)細化到了適當?shù)膶哟危瑒t可以直接從數(shù)據(jù)流程圖中映射出軟件結(jié)構(gòu)。5.1.3系統(tǒng)設計的內(nèi)容4.公共數(shù)據(jù)庫結(jié)構(gòu)設計公共數(shù)據(jù)變量的數(shù)據(jù)結(jié)構(gòu)與作用范圍;輸入、輸出文件的結(jié)構(gòu);數(shù)據(jù)庫中的表結(jié)構(gòu)、視圖結(jié)構(gòu)以及數(shù)據(jù)完整性等。5.1.3系統(tǒng)設計的內(nèi)容5.安全性設計系統(tǒng)安全性設計包括:操作權(quán)限管理設計、操作日志管理設計、文件與數(shù)據(jù)加密設計以及特定功能的操作校驗設計等。系統(tǒng)總體設計需要對這些方面的問題做出專門的說明,并制定出相應的處理規(guī)則。5.1.3系統(tǒng)設計的內(nèi)容6.故障處理設計
在系統(tǒng)總體設計時,需要對各種可能出現(xiàn)的、來自于軟件、硬件以及網(wǎng)絡通信方面的故障做出專門考慮。例如,提供備用設備、設置出錯處理模塊、設置數(shù)據(jù)備份模塊等。5.1.3系統(tǒng)設計的內(nèi)容7.編寫文檔
應該用正式文檔記錄系統(tǒng)總體設計的結(jié)果,在這個階段應該完成的文檔通常包括:系統(tǒng)總體設計說明書、詳細設計說明書、用戶手冊、測試計劃、詳細的實現(xiàn)計劃等。5.1.3系統(tǒng)設計的內(nèi)容8.系統(tǒng)設計評審需求確認:確認所設計的軟件是否覆蓋了所有已確定是軟件需求接口確認:確認該軟件的內(nèi)部接口與外部接口是否已經(jīng)明確定義模塊確認:確認所設計的模塊是否滿足高內(nèi)聚性、低耦合度的要求,模塊的作用范圍是否在其控制范圍之內(nèi)風險性:該設計在現(xiàn)有技術(shù)條件下和預算范圍內(nèi)是否能按時實現(xiàn)實用性:該設計對于需求的解決是否實用可維護性:該設計是否考慮了今后的可維護性質(zhì)量:該設計是否表現(xiàn)出了良好的質(zhì)量特征5.1.3系統(tǒng)設計的內(nèi)容5.2.1系統(tǒng)架構(gòu)設計定義子系統(tǒng)子系統(tǒng)要具有相對獨立性要使子系統(tǒng)之間數(shù)據(jù)的依賴性盡量小
子系統(tǒng)劃分的結(jié)果應使數(shù)據(jù)冗余最小子系統(tǒng)的設置應考慮今后管理發(fā)展的需要子系統(tǒng)的劃分應便于系統(tǒng)分階段實現(xiàn)1.2系統(tǒng)5.2總體設計
定義子系統(tǒng)外部接口分析子系統(tǒng)之間的通信與協(xié)作,以獲得對子系統(tǒng)外部接口的定義定義系統(tǒng)物理架構(gòu)根據(jù)系統(tǒng)的整體邏輯結(jié)構(gòu)、技術(shù)特點、應用特點以及系統(tǒng)開發(fā)的資金投入等情況,選擇合適的系統(tǒng)物理架構(gòu)。包括硬件設備、軟件環(huán)境、網(wǎng)絡結(jié)構(gòu)、數(shù)據(jù)庫結(jié)構(gòu)等,并將子系統(tǒng)按照子系統(tǒng)所選的物理架構(gòu)進行合理部署與優(yōu)化1.2系統(tǒng)5.2.1系統(tǒng)架構(gòu)設計
1.模塊化模塊化是軟件設計和開發(fā)的基本原則和方法,是總體設計的主要工作之一模塊是指一個獨立命名的,擁有明確定義的輸入、輸出和特性的程序?qū)嶓w把一個管理信息系統(tǒng)設計成若干模塊的方法稱為模塊化1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
模塊化的基本思想:
將系統(tǒng)設計成由相對獨立、單一功能的模塊組成的結(jié)構(gòu),從而簡化研制工作,防止錯誤蔓延,提高系統(tǒng)的可靠性。在這種模塊結(jié)構(gòu)圖中,模塊之間的調(diào)用關系非常明確、簡單。每個模塊可以單獨被理解、編寫、調(diào)試、查錯與修改。模塊結(jié)構(gòu)整體上具有較高的正確性、可理解性和可維護性。5.2.2軟件結(jié)構(gòu)設計
模塊的屬性輸入和輸出:模塊的輸入來源和輸出去向都是同一個調(diào)用者。一個模塊從調(diào)用者取得輸入,加工后再把輸出返回調(diào)用者邏輯功能:模塊把輸入轉(zhuǎn)換成輸出所做的1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
內(nèi)部信息:僅供該模塊本身引用的數(shù)據(jù)
程序代碼:實現(xiàn)模塊功能的程序1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
前兩個要素是模塊的外部特性,即反映模塊的外貌。后兩個要素是模塊的內(nèi)部結(jié)構(gòu)特性。在結(jié)構(gòu)化設計中,首先關心的是外部特性,其內(nèi)部特性只做必要了解2.模塊的獨立性模塊同模塊的聯(lián)系稱為模塊的耦合度一個模塊內(nèi)部各成份的聯(lián)系稱為模塊的內(nèi)聚性1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
耦合度內(nèi)容耦合公共耦合控制耦合數(shù)據(jù)耦合獨立耦合1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
模塊的耦合是指模塊間聯(lián)系的緊密程度,又稱模塊的聯(lián)結(jié)。耦合度越低,模塊的獨立性越好。返回數(shù)據(jù)耦合?如果兩個模塊之間不僅存在著調(diào)用和被調(diào)用關系?模塊之間存在著數(shù)據(jù)通信?模塊之間的通信方式是數(shù)據(jù)傳遞或稱參數(shù)交換返回計算水、電費計算水費計算電費本月用水量。電費。本月用電量。水費數(shù)據(jù)耦合控制耦合?如果兩個模塊之間不僅存在著調(diào)用和被調(diào)用關系控制信息表面上是以數(shù)據(jù)形式出現(xiàn),但實質(zhì)是一個標識、開關或狀態(tài)。接受信息的模塊根據(jù)該控制信息的狀態(tài)作出判斷?模塊A向模塊B傳遞的信息控制了模塊B的內(nèi)部邏輯公布成績確定成績等級成績優(yōu)良中及不返回公共耦合?如果兩個模塊都和同一個公用數(shù)據(jù)環(huán)境有關ABCDE公用數(shù)據(jù)當需要修改公共數(shù)據(jù)時,與之相關的所有模塊可能都要進行修改公共的數(shù)據(jù)環(huán)境可以是全局數(shù)據(jù)結(jié)構(gòu)、共享的通信區(qū)、內(nèi)存的公共覆蓋區(qū)等返回內(nèi)容耦合?如果一個模塊訪問另一個模塊的內(nèi)部數(shù)據(jù)?使用另一個模塊內(nèi)部的控制信息?一個模塊調(diào)用執(zhí)行另一個模塊中間的部分程序代碼?模塊不符合單入口和單出口的原則返回內(nèi)聚性偶然內(nèi)聚邏輯內(nèi)聚時間內(nèi)聚過程內(nèi)聚通信內(nèi)聚順序內(nèi)聚功能內(nèi)聚1.2系統(tǒng)5.2.2軟件結(jié)構(gòu)設計
高內(nèi)聚性、低耦合度返回功能聚合?一個模塊內(nèi)部的各個組成部分的處理動作全都為執(zhí)行同一個功能而存在?功能組合內(nèi)聚性最高,它是一個“暗盒”模塊例“解一個方程”,“求平方根”,“計算利息”返回順序聚合?一個模塊內(nèi)部的各個組成部分執(zhí)行的幾個處理動作具有這樣的特征?前一個處理動作所產(chǎn)生的輸出數(shù)據(jù)是下一個處理動作的輸入數(shù)據(jù)?順序組合模塊的內(nèi)聚性較高例:“輸入并驗證提貨單”返回讀入數(shù)據(jù)編輯數(shù)據(jù)A累加打印B順序聚合(內(nèi)聚)通信聚合?一個模塊內(nèi)部的各個組成部分的處理動作都使用相同的輸入數(shù)據(jù)?一個模塊內(nèi)部的各個組成部分的處理動作都產(chǎn)生相同的輸出數(shù)據(jù)?內(nèi)聚性低于順序組合模塊返回修改庫存開發(fā)貨單庫存A購貨單修改D1刪除D1B庫存D1通信聚合(內(nèi)聚)過程聚合?一個模塊內(nèi)部的各個組成部分的處理動作各不相同,彼此沒有什么關系?它們受同一個控制流支配,決定它們的執(zhí)行順序?內(nèi)聚性較低例“學籍變動管理”返回時間聚合(temporalcohesion)?一個模塊內(nèi)部的各個組成部分的處理動作和時間有關?內(nèi)聚性低,耦合性高例“初始化”返回邏輯聚合?一個模塊內(nèi)部的各個組成部分的處理動作在邏輯上相似,但功能卻彼此不同或無關?內(nèi)聚性低返回準備取平均成績?算平均成績求最高成績返回YN邏輯聚合(內(nèi)聚)邏輯聚合偶然聚合?一個模塊內(nèi)部的各個組成部分的處理動作彼此沒有任何關系?它們是根據(jù)設計人員的個人喜好而隨意混合在一起的?無內(nèi)聚性PQRSB:=A;READCardfile;D:=CT偶然組合(內(nèi)聚)返回模塊組合判斷樹模塊組合判斷樹該模塊只執(zhí)行一個功能嗎?功能組合否模塊內(nèi)各組成部分關系如何?數(shù)據(jù)流否是順序組合通信組合否是過程組合時間組合否是邏輯組合偶然組合控制流兩者皆非是次序重要嗎?邏輯相似嗎?次序重要嗎?5.2.2軟件結(jié)構(gòu)設計
設計時應注意:設計功能獨立單一的模塊控制使用全局數(shù)據(jù)模塊間盡量傳遞數(shù)據(jù)型信息5.2.2軟件結(jié)構(gòu)設計
3.結(jié)構(gòu)化設計建模模塊:使用矩形來表示軟件系統(tǒng)中的一個模塊,框中寫模塊名調(diào)用:用帶箭頭的線段表示模塊間的調(diào)用關系模塊間的通訊:用小箭頭表示模塊間在調(diào)用過程中相互傳遞的信息模塊間傳遞的信息可分為兩類:作數(shù)據(jù)用的信息和作控制用的信息。具體可分為以下兩種箭頭:尾部有小空心圓圈標記,表示作數(shù)據(jù)用信息尾部有小實心圓圈標記,表示作控制用信息5.2.2軟件結(jié)構(gòu)設計
5.2.2軟件結(jié)構(gòu)設計
輔助符號選擇調(diào)用循環(huán)調(diào)用5.2.2軟件結(jié)構(gòu)設計
模塊化對一個復雜系統(tǒng),采用“自頂向下,逐步求精”的方法予以化簡,分解有若干個有層次聯(lián)系、功能相對單一且彼此相對獨立的模塊。結(jié)構(gòu)圖(SC)的基本符號模塊名稱表示一個功能模塊表示模塊與模塊之間的調(diào)用關系表示模塊與模塊之間的數(shù)據(jù)傳遞關系表示模塊與模塊之間的控制信息傳遞關系表示判斷關系表示循環(huán)關系模塊的調(diào)用ABx,yzABx,yy,zABx,yzc(1)(2)(3)ACDB(4)模塊的調(diào)用ACDB(5)模塊的調(diào)用?描述系統(tǒng)的物理模型及系統(tǒng)功能是怎樣逐步完成的?結(jié)構(gòu)圖沒有嚴格地表示模塊的調(diào)用次序,只表明模塊的調(diào)用關系?結(jié)構(gòu)圖不指明上級模塊什么時候調(diào)用下層模塊結(jié)構(gòu)圖(SC)?它從功能層次上來考慮系統(tǒng)憑證審核輸入憑證號讀取數(shù)據(jù)審核輸出審核結(jié)果憑證號憑證號數(shù)據(jù)數(shù)據(jù)結(jié)果結(jié)果某財務系統(tǒng)中審核憑證處理過程結(jié)構(gòu)圖憑證財務數(shù)據(jù)庫1輸入憑證編號審核工作取得數(shù)據(jù)記錄某財務系統(tǒng)中審核憑證處理的DFD用戶用戶結(jié)構(gòu)圖的表示結(jié)構(gòu)圖與數(shù)據(jù)流程圖的區(qū)別數(shù)據(jù)流程圖反映的是系統(tǒng)的邏輯模型是從數(shù)據(jù)在系統(tǒng)中的流動情況來考慮系統(tǒng)的?描述系統(tǒng)的物理模型及系統(tǒng)功能是怎樣逐步完成的?結(jié)構(gòu)圖沒有嚴格地表示模塊的調(diào)用次序,只表明模塊的調(diào)用關系?結(jié)構(gòu)圖不指明上級模塊什么時候調(diào)用下層模塊結(jié)構(gòu)圖:?它從功能層次上來考慮系統(tǒng)結(jié)構(gòu)圖與數(shù)據(jù)流程圖的區(qū)別從數(shù)據(jù)流圖導出初始結(jié)構(gòu)圖的方法變換流分析確定變換流、輸入流和輸出流部分設計模塊結(jié)構(gòu)的頂層和第一層設計中下各層5.2.2軟件結(jié)構(gòu)設計
實例:某學校的學生“選課”系統(tǒng)的數(shù)據(jù)流程圖下圖5.7所示。這是一個簡單、具有明顯變換流特征的數(shù)據(jù)流程圖。首先登錄到系統(tǒng),輸入密碼,經(jīng)過驗證合格后,即可進行選課處理。先查詢相關課程信息,再進行選課登記,選課完成后,顯示所選課程表,并打印輸出課表5.2.2軟件結(jié)構(gòu)設計
5.2.2軟件結(jié)構(gòu)設計
確定變換流、輸入流和輸出流部分。從左向右分析數(shù)據(jù)流程圖,確定“登錄系統(tǒng)”為輸入部分;從右向左分析數(shù)據(jù)流程圖,確定“打印課表”、“顯示課表”為輸出部分;分別用虛線加以標示,則得到虛線內(nèi)部分為變換流,包括“課程查詢”和“選課登記”兩個加工。虛線外的兩部分為輸入流和輸出流。將數(shù)據(jù)流程圖映射為模塊結(jié)構(gòu)圖5.2.2軟件結(jié)構(gòu)設計
5.2.2軟件結(jié)構(gòu)設計
系統(tǒng)FHG123變換分析的過程UUWW1G2F3HXX`Y`Y變換中心變換分析的步驟分析DFD,確定中心變換、輸入和輸出設計上層模塊設計輸入、輸出和變換中心的下層模塊確定中心變換和輸入/輸出從物理輸入端開始,沿著每一個由數(shù)據(jù)源傳入的數(shù)據(jù)流的移動方向進行跟蹤,逐步向中心移動,直到數(shù)據(jù)流不再被看作系統(tǒng)的輸入為止UUWW1G2F3HXX`Y`Y與(1)跟蹤的數(shù)據(jù)流的方向相反,從物理輸出端開始查找介于邏輯輸入和邏輯輸出之間的加工就是中心變換變換中心確定中心變換和輸入/輸出UUWW1G2F3HXX`Y`Y用戶用戶1輸入修改內(nèi)容2查找?guī)つ?修改帳目4排列帳目帳目文件編碼表實例變換中心設計頂層模塊和第一層模塊?系統(tǒng)的主處理就是系統(tǒng)的頂層模塊?第一層模塊按輸入、變換、輸出等分支來處理修改帳目?為每一個邏輯輸入設計一個輸入模塊,其功能是為頂層模塊提供相應的數(shù)據(jù)?為每一個邏輯輸出設計一個輸出模塊,它的功能是輸出頂層模塊的輸出信息?為主處理設計一個變換模塊,它的功能是將邏輯輸入變成邏輯輸出設計頂層模塊和第一層模塊修改帳目獲得用戶輸入及帳目記錄修改帳目輸出帳目記錄及修改內(nèi)容帳目記錄修改內(nèi)容修改內(nèi)容初始結(jié)構(gòu)圖寫帳目文件修改內(nèi)容修改帳目初始結(jié)構(gòu)圖修改帳目獲得用戶輸入及帳目記錄修改帳目輸出帳目記錄及修改內(nèi)容帳目記錄修改內(nèi)容修改內(nèi)容設計中、下層模塊——輸入模塊的設計?確定實現(xiàn)輸入變換的變換模塊為變換模塊設計某些輸入輸入接收數(shù)據(jù)變換數(shù)據(jù)變換后的數(shù)據(jù)數(shù)據(jù)?輸出的分解與上面方法相同輸出變換輸出數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)變換后的數(shù)據(jù)設計中、下層模塊——輸出模塊的設計輸入檢索數(shù)據(jù)記錄修改內(nèi)容修改內(nèi)容帳目記錄顯示或打印變換數(shù)據(jù)形式修改后的數(shù)據(jù)輸出內(nèi)容寫帳目文件修改后的數(shù)據(jù)修改帳目獲得用戶輸入及帳目記錄修改帳目輸出帳目記錄及修改內(nèi)容帳目記錄修改內(nèi)容修改內(nèi)容模塊的設計事務流分析5.2.2軟件結(jié)構(gòu)設計
對于事務型數(shù)據(jù)流程圖,通過事務分析,可以導出它所對應的標準形式的模塊結(jié)構(gòu)圖5.2.2軟件結(jié)構(gòu)設計
實例:某火車售票系統(tǒng)的數(shù)據(jù)流程圖如下所示5.2.2軟件結(jié)構(gòu)設計
5.2.2軟件結(jié)構(gòu)設計
事務分析的過程分析DFD,設計出高層模塊將處理分解成信息系統(tǒng)的事務設計事務處理模塊為每個事務處理模塊設計操作模塊XXZZD11AA2BB3CCYYD2(a)系統(tǒng)BBCCAA123(b)用程序?qū)崿F(xiàn)高層模塊就是一個菜單選擇程序事務分析的過程混合流分析與設計混合數(shù)據(jù)流程圖5.2.2軟件結(jié)構(gòu)設計
由混合數(shù)據(jù)流程圖導出的控制結(jié)構(gòu)圖5.2.2軟件結(jié)構(gòu)設計
?檢查初始設計方案系統(tǒng)的結(jié)構(gòu)系統(tǒng)的深度與寬度,模塊的扇入與扇出,以及模塊的控制范圍和影響范圍等是否存在不合理的現(xiàn)象
模塊之間的耦合程度模塊之間聯(lián)系方式如何,是否滿足低耦合的要求,模塊的接口是否清晰、簡單以及是否是單入口、單出口等。
系統(tǒng)設計的優(yōu)化
系統(tǒng)設計的優(yōu)化?模塊內(nèi)部的聚合度每一個模塊內(nèi)部的功能應該清楚,內(nèi)部的聚合度應高于通信聚合。另外還要檢查輸入輸出的表達是否明確。
系統(tǒng)的性能系統(tǒng)是否具有較強的可讀性、可維護性、可修改性以及可靠性等,系統(tǒng)與用戶之間的接口是否簡單、明確,易于理解,系統(tǒng)能否實現(xiàn),能否正確地工作模塊的扇入和扇出原則模塊的扇出模塊扇出的原則模塊的扇入模塊的扇入原則模塊扇出扇入總原則模塊的扇出(Fan_Out)?模塊的扇出表達了一個模塊對它的直屬下級模塊的控制范圍?模塊的扇出系數(shù)是指其直屬下級模塊的個數(shù)ABCC1C3B1C2A的扇出系數(shù)為2B的扇出系數(shù)為1C的扇出系數(shù)為3模塊的扇出原則?模塊的扇出直接影響著系統(tǒng)的寬度?模塊的扇出過大,控制與協(xié)調(diào)困難,模塊的聚合可能較低?模塊的扇出過小,說明上下級模塊或本身過大,應進行分解?一個系統(tǒng)的平均扇出系數(shù)通常是2至5,一般不應超過9模塊的扇入(Fan_In)?模塊的扇入表達了一個模塊與其的直屬上級模塊的關系?模塊的扇入系數(shù)是指其直接上級模塊的個數(shù)A的扇出系數(shù)為3B的扇出系數(shù)為2F的扇入系數(shù)為2ABCFHEGD模塊的扇入原則?模塊的扇入說明系統(tǒng)的通用情況?模塊的扇入系數(shù)越大,表明共享該模塊的上級模塊數(shù)目越多,通用性越強?系統(tǒng)的通用性強,維護也方便?片面追求高扇入可能使得模塊的獨立性降低模塊的扇出扇入總原則一個較好的系統(tǒng)結(jié)構(gòu)?高層模塊的扇出系數(shù)較高?中層模塊的扇出系數(shù)較少?低層模塊有很高的扇入系數(shù)模塊的規(guī)模
模塊的深度模塊的寬度模塊的深度和寬度對模塊的影響模塊的規(guī)模模塊的深度模塊的深度:表示系統(tǒng)結(jié)構(gòu)中的控制層數(shù)ABCFHEGD模塊的寬度模塊的寬度:表示系統(tǒng)的總分布,即同一層次的模塊總數(shù)的最大值ABCFHEGD模塊的深度和寬度對模塊的影響?模塊的深度和寬度標志著一個系統(tǒng)的大小和復雜程度?模塊的深度和寬度應有一定的比例,即深度和寬度要適當?深度過大,可能說明系統(tǒng)分割的過分細化?寬度過大,可能帶來系統(tǒng)管理上的困難模塊的規(guī)模?模塊的規(guī)模不可過大,也不可過小?規(guī)模過大,可能說明系統(tǒng)分解的不充分,模塊的聚合降低?模塊過小,可能降低模塊的獨立性,造成系統(tǒng)接口的復雜?模塊的規(guī)模最好是限制在一頁之內(nèi)模塊的控制范圍一個模塊的控制范圍,是指由它可以調(diào)用的所有下層模塊和其本身所組成的集合IFIDE=WTHENCALLBELSECALLC計算工資計算工人工資計算干部工資計算月工資總額BCD控制標志(IDE)
工資額A模塊的控制范圍是A,B,C,D模塊的影響范圍一個模塊的影響范圍,是指由該模塊中包含的判斷處理所影響到的所有其它模塊的集合計算工人工資計算干部工資計算月工資總額計算工資ABCD控制標志(IDE)
工資額IFIDE=WTHENCALLBELSECALLC模塊的影響范圍是B,C模塊的控制范圍對于任意具有判斷功能的模塊,其影響范圍都應當是它的控制范圍的一個子集模塊結(jié)構(gòu)圖的改進與完善進行模塊優(yōu)化,應遵循的原則提高模塊的聚合度,降低模塊間的耦合度模塊的規(guī)模應適中加大模塊的扇入數(shù),但模塊的扇出數(shù)應控制在合適的范圍之內(nèi)模塊的作用范圍應該是它的控制范圍的子集設計單入口、單出口模塊HIPO
(hierarrchyplusinput-process-output)是IBM公司于70年代中期在層次結(jié)構(gòu)圖的基礎上推出的一種描述系統(tǒng)結(jié)構(gòu)和模塊內(nèi)部處理功能的工具(技術(shù))。由以下兩部分組成:1.層次結(jié)構(gòu)圖----H圖
描述整個系統(tǒng)的設計結(jié)構(gòu)以及各類模塊之間的關系;2.IPO圖描述了某個特定模塊內(nèi)部的處理過程和輸入/輸出關系。1.HIPO圖的H圖H圖用于描述軟件的層次結(jié)構(gòu),矩型框表示一個模塊,矩形框之間的直線表示模塊之間的調(diào)用關系。銷售管理系統(tǒng)的H圖.可供貨處理缺貨訂單留底打印統(tǒng)計表減少庫存量訂單留底打印備貨單可供貨處理修改缺貨記錄銷售管理系統(tǒng)訂貨處理進貨處理銷售統(tǒng)計缺貨處理輸入并檢驗訂單讀庫存記錄確定能否供貨輸入進貨單增加庫存量讀缺貨記錄缺貨訂單處理讀訂單記錄分類統(tǒng)計讀缺貨記錄統(tǒng)計各項缺貨量打印缺貨單銷售管理系統(tǒng)的H圖2.IPO圖H圖只說明了軟件系統(tǒng)由哪些模塊組成及其控制層次結(jié)構(gòu),并未說明模塊間的信息傳遞及模塊內(nèi)部的處理。因此對一些重要模塊還必須根據(jù)數(shù)據(jù)流圖、數(shù)據(jù)字典及H圖繪制具體的IPO圖。
IPO圖就是用來說明每個模塊的輸入、輸出數(shù)據(jù)和數(shù)據(jù)加工的重要工具。
IPO圖的主體是算法說明部分,該部分可采用結(jié)構(gòu)化語言、判定表、判定樹等工具進行描述,要準確而簡明的描述模塊執(zhí)行的細節(jié)。
系統(tǒng)名:銷售管理系統(tǒng)設計人:模塊名:確定能否訂貨日期:模塊編號:
上層調(diào)用模塊:訂貨處理下層被調(diào)用模塊:可供貨處理缺貨訂單留底文件名:庫存文件全局變量:輸入數(shù)據(jù):訂單訂貨量X相應貨物庫存量Y輸出數(shù)據(jù):供貨標志supplyIFY-X>0THEN可供貨處理處理:ELSE缺貨訂單留底ENDIF
注釋:
確定能否供貨模塊的IPO圖例:“確定能否供貨”的IPO圖。
結(jié)構(gòu)圖與HIPO圖中的層次圖在反映軟件結(jié)構(gòu)圖的層次關系方面優(yōu)點是一致的。HIPO圖因為圖上無過多的符號顯得較為清晰易讀,作為概要設計的文檔比較合適。開發(fā)人員不僅可以利用HIPO圖進行模塊設計,而且還可以利用它評價總體設計。用戶和管理人員可利用HIPO圖編寫、修改和維護程序。因而,HIPO圖是系統(tǒng)設計階段的一種重要文檔資料。1.設計系統(tǒng)物理配置方案的方法開發(fā)人員在設計計算機物理系統(tǒng)配置方案的時候,可采用以下方法得到計算機物理系統(tǒng)配置的各種方案。5.2.3系統(tǒng)物理配置方案設計
設計物理系統(tǒng)配置方案的方法信息調(diào)查法方案征集法招標法試用法基準測試法2.系統(tǒng)配置方案報告的具體內(nèi)容計算機物理系統(tǒng)配置概述計算機物理系統(tǒng)選擇的依據(jù)計算機物理系統(tǒng)配置指出費用情況具體配置方案的評價5.2.3系統(tǒng)物理配置方案設計
3.系統(tǒng)軟硬件選擇計算機網(wǎng)絡的選擇網(wǎng)絡的配置與設計應遵循以下原則:技術(shù)先進可擴充保護現(xiàn)有資源可靠性和安全性配套能力好5.2.3系統(tǒng)物理配置方案設計
網(wǎng)絡設備選型應遵循以下原則:技術(shù)可行性原則服務保證原則經(jīng)濟合理原則
5.2.3系統(tǒng)物理配置方案設計
3.系統(tǒng)軟硬件選擇計算機硬件的選擇數(shù)據(jù)庫管理系統(tǒng)的選擇應用軟件的選擇5.2.3系統(tǒng)物理配置方案設計
管理信息5.3.1代碼設計1.代碼的功能鑒別分類排序?qū)S煤x5.3詳細設計
管理信息2.代碼的種類順序碼層次碼區(qū)間碼縮略碼助記碼混合碼5.3.1代碼設計順序碼--有序碼例:各系編碼01管理系02土木系03信息系……14機電系用一串連續(xù)的數(shù)字來代表系統(tǒng)中的客觀實體或?qū)傩?優(yōu)點:簡單、方便、易處理?缺點:不反映編碼對象的特征例:人的性別代碼(GB2261-80)1男2女層次碼例:關于某公司的組織機構(gòu)的代碼含義如下表在碼的結(jié)構(gòu)中,為數(shù)據(jù)項的各個屬性各規(guī)定一個位置并使其排列符合一定層次關系代碼112代表總公司銷售科廣告組區(qū)間碼
例:郵政編碼東北電力學院:132012把數(shù)據(jù)項分成若干組,每一區(qū)間代表一個組。碼中的數(shù)字和位置都代表一定意義助記碼例:TV--B--12TV--C--20將編碼對象的名稱、規(guī)格等作為代碼的一部分縮略碼例:Amt總額(amount)Cont合同(conntract)Inv.No發(fā)票號(invoicenumber)是助記碼的特例,從編碼對象名稱中提取幾個關鍵字母作為代碼校驗碼為什么使用校驗碼校驗碼的生成過程用校驗碼檢驗代碼的過程實例為什么使用校驗碼當人們抄寫、錄入時,發(fā)生錯誤的可能性很大,如抄寫錯(1234寫成1235)、移位錯(1234記為1243)、隔位移位錯(1234記為1432)等為了檢驗輸入代碼的正確性,要在代碼本體的基礎上,再外加校驗位校驗碼是代碼的一部分為什么使用校驗碼為了保證正確輸入,有意識地在編碼設計結(jié)構(gòu)中原有代碼的基礎上,另外加上一個校驗位,使它事實上變成代碼的一個組成部分。校驗位通過事先規(guī)定的數(shù)學方法計算出來。代碼一旦輸入,計算機會用同樣的數(shù)學運算方法按輸入的代碼數(shù)字計算出校驗位,并將它與輸入的校驗位進行比較,以證實輸入是否正確。身份證的校驗碼校驗碼由公式對身份證號碼的前17位進行校驗,如果校驗結(jié)果在0-9之間,校驗碼就取校驗結(jié)果的這個數(shù)字,如果校驗結(jié)果為10,則校驗碼是X。
校驗的計算方式:
1.對前17位數(shù)字本體碼加權(quán)求和
公式為:S=Sum(Ai*Wi),i=0,...,16
其中Ai表示第i位置上的身份證號碼數(shù)值,Wi表示第i位置上的加權(quán)因子,其各位對應的值依次為:7910584216379105842
2.以11對計算結(jié)果取模
Y=mod(S,11)
3.根據(jù)模的值得到對應的校驗碼
對應關系為:
Y值:012345678910
校驗碼:10X98765432好象很復雜,但具體的說也很簡單.便是:
1.將前面的身份證號碼17位數(shù)分別乘以不同的系數(shù)。從第一位到第十七位的系數(shù)分別為:7910584216379105842
2.將這17位數(shù)字和系數(shù)相乘的結(jié)果相加。
3.用加出來和除以11,看余數(shù)是多少?
4余數(shù)只可能有012345678910這11個數(shù)字。其分別對應的最后一位身份證的號碼為10X98765432。
5.通過上面得知如果余數(shù)是2,就會在身份證的第18位數(shù)字上出現(xiàn)羅馬數(shù)字的Ⅹ。如果余數(shù)是10,身份證的最后一位號碼就是2.一個男人籍貫在延邊朝鮮族自治州延吉市,出生日期為1988年5月27日,而順序碼(由當?shù)嘏沙鏊鶝Q定,通常不作為網(wǎng)站判別依據(jù),故暫設為12"15--16位"吧),而設他是當?shù)匚ㄒ灰粋€該日出生的男人,故第十七位為1.所以,查表可知,他的身份證號碼前17位為22240119880527121,那么他的第18位該是什么呢?
2*7+2*9+2*10+4*5+0*8+1*4+1*2+9*1+8*6+8*3+0*7+5*9+2*10+7*5+1*8+2*4+1*2=277277/11=25,余數(shù)為2,而0對應的數(shù)為X,故其最后一位號碼為X.
即他的號碼驗碼的生成過程(1)對原代碼中的每一位加權(quán)求和n位代碼:c1c2……cn
權(quán)因子為:p1p2……pn
加權(quán)和:c1p1+c2p2
+……+cnpn即權(quán)因子可選為自然數(shù)12345;幾何級數(shù)2,4,8,16,32;質(zhì)數(shù)3,5,7,11,13或其它(2)以模除和得余數(shù)和模商余數(shù)??扇〔煌臄?shù)10,11等校驗碼的生成過程(3)得到校驗碼將模和余數(shù)之差作為校驗碼將余數(shù)直接作校驗碼,附加在原代碼后校驗碼的生成過程實例1
原代碼:123456權(quán)因子為:173173模為:10生成校驗碼(1)求加權(quán)和(3)求校驗碼:帶校驗位的代碼為1234569S=1×1+2×7+3×3+4×1+5×7+6×3=81(2)求余數(shù)R=110-1=9實例2原代碼為12345權(quán)為3216842模為11將模與余數(shù)的差作為校驗碼帶校驗位的代碼為123457實例3原代碼為11345權(quán)為65432模為11將模與余數(shù)的差作為校驗碼帶校驗位的代碼為123450用校驗碼檢查代碼過程設輸入的代碼(含檢驗碼)為K1,K2,K3,……,Kn,Cn+1,其中Cn+1為校驗位?對每一位乘以它的原來的權(quán),校驗位乘的權(quán)為1,即?用所得的和被模除,若余數(shù)為0,則該代碼一般來說是正確的,否則就是輸入錯誤管理信息3.代碼設計的原則惟一性可擴充性合理性規(guī)范性系統(tǒng)性短小精悍即選擇最小值代碼具有規(guī)律性、便于編碼和識別5.3.1代碼設計管理信息4.代碼設計的步驟確定代碼對象考察是否已有標準代碼根據(jù)代碼的使用范圍、使用時間,根據(jù)實際情況選擇代碼的種類與類型考慮檢錯功能編寫代碼表5.3.1代碼設計5.3.2數(shù)據(jù)庫設計概念結(jié)構(gòu)設計邏輯結(jié)構(gòu)設計物理結(jié)構(gòu)設計數(shù)據(jù)庫設計概述數(shù)據(jù)庫設計的步驟用戶需求分析概念結(jié)構(gòu)設計邏輯結(jié)構(gòu)設計物理結(jié)構(gòu)設計數(shù)據(jù)庫設計步驟系統(tǒng)開發(fā)步驟系統(tǒng)分析(詳細調(diào)查)系統(tǒng)分析(邏輯設計)系統(tǒng)設計系統(tǒng)設計數(shù)據(jù)庫設計與系統(tǒng)開發(fā)階段對照管理信息系統(tǒng)1.概念設計實體:指客觀存在并相互區(qū)別的事物,實體可以是具體的,也可以是抽象的聯(lián)系:實體和實體之間的關系被抽象為聯(lián)系。聯(lián)系分為一對一,一對多或多對多三種屬性:指實體的特征主鍵:能唯一地標識該實體的屬性或?qū)傩越M5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)2.邏輯設計邏輯結(jié)構(gòu)設計是在概念設計的基礎上完成的設計數(shù)據(jù)表:按以下規(guī)則從數(shù)據(jù)關系模型中映射出數(shù)據(jù)庫中的數(shù)據(jù)表每一個實體應該映射為數(shù)據(jù)庫邏輯結(jié)構(gòu)中的一個數(shù)據(jù)表每一個n:m關系也應映射為數(shù)據(jù)庫邏輯結(jié)構(gòu)中的一個數(shù)據(jù)表每一個1:n關系也可映射為一個獨立的數(shù)據(jù)表每一個1:1關系可映射為一個獨立的數(shù)據(jù)表,也可以與跟它相連的任意一端或兩端的實體合并組成數(shù)據(jù)表5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)規(guī)范數(shù)據(jù)表第一范式:每個屬性值都必須是原子值,即僅僅是一個簡單值而不含內(nèi)部結(jié)構(gòu)第二范式:滿足第一范式條件,而且每個非主鍵屬性都由整個主鍵決定第三范式:符合第二范式的條件,每個非主鍵屬性的進一步描述,即一個非主鍵屬性值不依賴于另一個非主鍵屬性值5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)關聯(lián)數(shù)據(jù)表關聯(lián)數(shù)據(jù)表就是將數(shù)據(jù)關系模型中數(shù)據(jù)實體之間的關系,在數(shù)據(jù)庫邏輯結(jié)構(gòu)中明確體現(xiàn)出來,它們將作為建立數(shù)據(jù)表之間參照完整性規(guī)則的依據(jù)5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)設計數(shù)據(jù)視圖數(shù)據(jù)視圖也稱為虛表,與數(shù)據(jù)表一樣,都可以將數(shù)據(jù)以記錄集合的形式表現(xiàn)出來數(shù)據(jù)視圖的作用是能夠使數(shù)據(jù)表現(xiàn)與數(shù)據(jù)存儲之間進行有效的邏輯隔離,可以使數(shù)據(jù)庫中的數(shù)據(jù)具有更高的安全性,可以簡化前端程序員對數(shù)據(jù)庫的復雜編程等5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)3.物理設計數(shù)據(jù)存儲結(jié)構(gòu)數(shù)據(jù)索引與聚集數(shù)據(jù)完整性5.3.2數(shù)據(jù)庫設計管理信息系統(tǒng)1.輸出設計輸出類型設計外部輸出內(nèi)部輸出中間輸出交互輸出操作輸出5.3.3輸入/輸出設計
管理信息系統(tǒng)輸出形式設計打印輸出顯示輸出磁介質(zhì)輸出1.輸出設計
管理信息系統(tǒng)輸出內(nèi)容設計輸出頻率、速度、有效期、份數(shù)、機密安全性等輸出信息的具體形式輸出項目及數(shù)據(jù)的結(jié)構(gòu),數(shù)據(jù)類型、精度、取值范圍等輸出設備的選擇1.輸出設計
管理信息系統(tǒng)1.輸出設計
管理信息系統(tǒng)設計輸出報告應注意的問題方便使用者要考慮系統(tǒng)的硬件性能盡量利用原系統(tǒng)的輸出格式,確實需要修改的,應與有關部門協(xié)商,征得用戶同意輸出表格要考慮發(fā)展的需要。例如,是否有必要在輸出表中留出備用項目,以滿足將來新增項目的需要輸出格式和大小要根據(jù)硬件能力,認真設計,并試制輸出樣品,經(jīng)用戶同意后才可正式使用1.輸出設計
管理信息系統(tǒng)2.輸入設計輸入設計的原則輸入量要少輸入過程應便捷,有容錯能力,以減少錯誤的發(fā)生盡早校驗數(shù)據(jù)。對輸入數(shù)據(jù)的校驗應盡量接近原數(shù)據(jù)發(fā)生點,以便錯誤及時得到糾正盡量直接輸入編碼,減少漢字的輸入量5.3.3輸入/輸出設計
管理信息系統(tǒng)輸入方式設計鍵盤輸入鍵盤—磁盤輸入數(shù)模/模數(shù)轉(zhuǎn)換方式:條碼;掃描儀;傳感器網(wǎng)絡或通信傳輸2.輸入設計
管理信息系統(tǒng)輸入內(nèi)容及格式設計輸入數(shù)據(jù)的校驗q
視覺校驗q
控制總數(shù)校驗
q
數(shù)據(jù)類型校驗q
格式校驗
q
邏輯校驗q
界限校驗
q
記錄計數(shù)校驗q
平衡校驗
q對照校驗q重復校驗2.輸入設計
1.界面設計應考慮的因素用戶工作環(huán)境與工作習慣界面風格的一致性界面信息反饋界面的合適性容錯性審美性和可用性5.3.4人機界面設計
2.界面功能設計
用戶與界面之間的交互系統(tǒng)信息在界面上的表示系統(tǒng)對新用戶的學習指導錯誤消息聯(lián)機幫助5.3.4人機界面設計
程序流程圖PAD圖盒圖5.3.5計算機處理過程設計
程序流程圖程序流程圖是一種用圖形來描述處理邏輯的描述工具,它由一些幾何圖框表示各種類型的操作,稱為框圖。有順序、分支、循環(huán)三種基本結(jié)構(gòu)輸入/輸出框處理框判斷框流程線PADABABBACWHILE條件LUNTIL條件LN—S圖順序結(jié)構(gòu)框選擇結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車沖壓生產(chǎn)線操作工技師模擬試題與參考答案
- 精-品解析:廣東省深圳市羅湖區(qū)2023-2024學年高一上學期期末考試化學試題(原卷版)
- 智能儲物柜課程設計
- 急診內(nèi)科培訓課程設計
- 服裝電腦繪圖課程設計
- 大學蒙古舞教學課程設計
- 電氣值班員(電力調(diào)度)初級題庫(含答案)
- 冬季小兒常見病有哪些
- 【7歷期末】安徽省阜陽市潁州區(qū)2023-2024學年上學期七年級期末學情調(diào)研歷史卷(含解析)
- 悟空問答智能化課程設計
- 《微機系統(tǒng)與匯編語言》-課程設計-實時時鐘的設計與實現(xiàn)
- 智能電網(wǎng)建設與發(fā)展趨勢
- 門診部預約診療制度
- 收發(fā)管理工作流程
- 幼兒園中班數(shù)學活動《數(shù)數(shù)有幾個》
- 基于PLC的變頻恒壓供水控制系統(tǒng)設計
- 突發(fā)性耳聾的護理查房
- 物品移交接收單(模板)
- 小米科技公司的供應鏈管理策略分析(全面完整版)
- 2023-2024學年廣東省中山一中物理高二上期末統(tǒng)考試題含解析
- 班級活動安排表秋季學期德育主題教育活動安排表??
評論
0/150
提交評論