第8章:系統(tǒng)設(shè)計_第1頁
第8章:系統(tǒng)設(shè)計_第2頁
第8章:系統(tǒng)設(shè)計_第3頁
第8章:系統(tǒng)設(shè)計_第4頁
第8章:系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、系統(tǒng)設(shè)計概述2、系統(tǒng)總體結(jié)構(gòu)設(shè)計3、代碼設(shè)計4、數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計5、輸入輸出設(shè)計6、模塊功能與處理過程設(shè)計第八章系統(tǒng)設(shè)計第一節(jié)系統(tǒng)設(shè)計概述系統(tǒng)設(shè)計的任務(wù)在系統(tǒng)分析提出的邏輯模型的基礎(chǔ)上,科學(xué)合理地進(jìn)行物理模型的設(shè)計。主要是解決“怎樣做”的問題。系統(tǒng)設(shè)計的具體工作確定系統(tǒng)輸出確定系統(tǒng)輸入確定數(shù)據(jù)的組織方法代碼設(shè)計繪制各處理功能的數(shù)據(jù)關(guān)系圖繪制系統(tǒng)流程圖選擇計算機(jī)系統(tǒng)系統(tǒng)模型的評價編寫系統(tǒng)說明書一、系統(tǒng)設(shè)計的任務(wù)二、系統(tǒng)設(shè)計的依據(jù)系統(tǒng)設(shè)計主要是依據(jù)系統(tǒng)分析階段生成的系統(tǒng)分析報告和開發(fā)者的知識與經(jīng)驗。系統(tǒng)設(shè)計也是一個建模的活動,它使用分析階段得出的邏輯模型轉(zhuǎn)化為物理模型。三、系統(tǒng)設(shè)計的步驟四、系統(tǒng)設(shè)計的方法系統(tǒng)設(shè)計階段的工作步驟:根據(jù)系統(tǒng)設(shè)計的內(nèi)容,將系統(tǒng)設(shè)計分為兩個階段:總體設(shè)計階段和詳細(xì)設(shè)計階段。系統(tǒng)設(shè)計方法主要有結(jié)構(gòu)化設(shè)計方法(以數(shù)據(jù)流程圖為基礎(chǔ)構(gòu)成系統(tǒng)的模塊結(jié)構(gòu))、Jackson方法(以數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)建立系統(tǒng)模塊結(jié)構(gòu))、面向?qū)ο蟮脑O(shè)計方法(以對象行為封裝、繼承性、多形性為基礎(chǔ)建立系統(tǒng)模塊結(jié)構(gòu))??傮w設(shè)計階段決定系統(tǒng)的模塊結(jié)構(gòu),而詳細(xì)設(shè)計階段是具體考慮每一模塊內(nèi)部采用什么算法。具體來說,在總體設(shè)計中,根據(jù)系統(tǒng)分析的成果進(jìn)行系統(tǒng)總體結(jié)構(gòu)設(shè)計,包括網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計、硬件結(jié)構(gòu)設(shè)計、軟件結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫存儲和處理方式設(shè)計等。詳細(xì)設(shè)計階段包括具體的代碼設(shè)計、輸入輸出設(shè)計、信息分類和數(shù)據(jù)庫設(shè)計、功能模塊設(shè)計,詳細(xì)設(shè)計是對上述總體設(shè)計的結(jié)果進(jìn)行進(jìn)一步細(xì)化,直至符合小組編程的要求。第二節(jié)系統(tǒng)總體結(jié)構(gòu)設(shè)計一、選取合適的系統(tǒng)體系(一)層次體系層次體系就是利用分層的方式來處理復(fù)雜的功能,屢次系統(tǒng)要求上層子系統(tǒng)可以使用下層子系統(tǒng)的功能,而下層子系統(tǒng)不能夠使用上層子系統(tǒng)的功能。(二)客戶機(jī)/服務(wù)器結(jié)構(gòu)(三)瀏覽器/服務(wù)器結(jié)構(gòu)(四)三層客戶機(jī)/服務(wù)器結(jié)構(gòu)二、系統(tǒng)物理配置方案設(shè)計(一)硬件結(jié)構(gòu)的設(shè)計(二)軟件結(jié)構(gòu)的設(shè)計三、系統(tǒng)功能模塊設(shè)計系統(tǒng)的功能分解的過程就是一個從抽象到具體的、由復(fù)雜到簡單的過程。所謂功能結(jié)構(gòu)圖就是按功能從屬關(guān)系畫成的圖表,圖中每一個框成為一個功能模塊。從管理職能的角度,把MIS看作是由不同職能的一系列子系統(tǒng)構(gòu)成,這些子系統(tǒng)可以再分解成更小的子系統(tǒng)和模塊,整個信息系統(tǒng)就是由這些功能模塊構(gòu)成的。整個企業(yè)管理信息系統(tǒng)是相應(yīng)的子系統(tǒng)的有機(jī)結(jié)合,每個子系統(tǒng)都有為完成有關(guān)的各種信息處理工作的專用或公用的計算機(jī)程序。在每個職能子系統(tǒng)內(nèi)部都包含用于事務(wù)處理、作業(yè)控制、管理控制和戰(zhàn)略計劃的具體應(yīng)用。功能模塊設(shè)計的流程是先完成處理流程圖,再生成功能模塊結(jié)構(gòu)圖,最后根據(jù)功能模塊結(jié)構(gòu)圖細(xì)化功能模塊。一般企業(yè)管理信息系統(tǒng)的系統(tǒng)功能模塊,如下圖所示:企業(yè)管理信息系統(tǒng)物資供應(yīng)子系統(tǒng)生產(chǎn)管理子系統(tǒng)市場銷售子系統(tǒng)財務(wù)會計子系統(tǒng)人力資源子系統(tǒng)工資管理子系統(tǒng)信息子系統(tǒng)工資管理子系統(tǒng)建立主文件建立扣款文件計算和打印數(shù)據(jù)錄入數(shù)據(jù)維護(hù)數(shù)據(jù)錄入數(shù)據(jù)維護(hù)計算打印工資條打印工資匯總表四、系統(tǒng)數(shù)據(jù)處理的總體結(jié)構(gòu)設(shè)計(一)集中式數(shù)據(jù)處理(二)協(xié)作式數(shù)據(jù)處理(三)分布式數(shù)據(jù)處理第三節(jié)代碼設(shè)計代碼的定義代碼是代表事物名稱、屬性、狀態(tài)等的符號。代碼的功能為事物提供一個概要而不含糊的認(rèn)定,便于數(shù)據(jù)的存貯和檢索。使用代碼可以提高處理的效率和精度。提高數(shù)據(jù)的全局一致性。代碼是人和計算機(jī)的共同語言,如零件號、圖號等早已使用代碼。一、代碼的定義與功能二、代碼設(shè)計的原則1.惟一性每個代碼應(yīng)惟一地表示一個實體或?qū)傩浴?.規(guī)范性

代碼要遵循一定的規(guī)則,這些規(guī)則包括:代碼的位數(shù)、代碼的分段、每段代碼的類型和含義。3.可識別性

代碼的可識別性要求的目的是,通過代碼能夠比較容易地識別被編碼對象。

4.可擴(kuò)展性

是保證系統(tǒng)對企業(yè)管理業(yè)務(wù)變化的適應(yīng)性,即要求代碼規(guī)則對已有編碼對象留有足夠的余量。5.標(biāo)準(zhǔn)化與通用性

代碼設(shè)計要向國際、國家或部門及行業(yè)的標(biāo)準(zhǔn)靠攏。同一種類編碼對象的代碼應(yīng)統(tǒng)一,如會計科目編碼、生產(chǎn)物資編碼等。

6、實用性盡量使用原業(yè)務(wù)處理上已使用的且行之有效的代碼。

7、簡明性在不影響代碼系統(tǒng)的容量和擴(kuò)充性的前提下,代碼盡可能簡單、統(tǒng)一。三、代碼的種類(一)順序碼順序碼適宜中最簡單、最常用的代碼。這種代碼是將順序的自然數(shù)或字母賦予分類對象。例如:按照GB2261-80規(guī)定:1為男性,2為女性優(yōu)點:短而簡單,記錄的定位方法簡單,易于管理;缺點:代碼本身沒有給出對象的任何其它信息。(二)區(qū)間碼區(qū)間碼把數(shù)據(jù)項分成若干組,每一區(qū)間代表一個組,碼中數(shù)字的值和位置都代表一定意義。區(qū)間碼又可分為以下多種類型多面碼。例如,對于機(jī)制螺釘,可作如下表那樣的規(guī)定。代碼2342表示材料為黃銅的φ1.5mm方形頭鍍鉻螺釘。上下關(guān)聯(lián)區(qū)間碼。例如,會計核算方面,用最左位代表核算種類,下一位代表會計核算項目。十進(jìn)位碼。例如,圖書分類中的十進(jìn)位分類碼。材料螺釘直徑螺釘頭形狀表面處理1-不銹鋼1-Φ0.51-圓頭1未處理2-黃銅2-Φ1.02-平頭2鍍鉻3-鋼3-Φ1.53-六角形狀3鍍鋅4-方形頭4-方形頭4上漆區(qū)間碼的優(yōu)點是:信息處理比較可靠,排序、分類、檢索等操作易于進(jìn)行。但這種碼的長度與它分類屬性的數(shù)量有關(guān),有時可能造成很長的碼。在許多情況下,碼有多余的數(shù)。同時,這種碼的維修也比較困難。(三)助憶碼助憶碼用文字、數(shù)字或文字?jǐn)?shù)字結(jié)合起來描述,其特點是,可以通過聯(lián)想幫助記憶。例如,用W-B-l2代表12英寸黑白電視機(jī),用W-C-20代表20英寸彩色電視機(jī)。助憶碼適用于數(shù)據(jù)項數(shù)目較少的情況(一般少于50個),否則可能引起聯(lián)想出錯。此外,太長的助憶碼占用計算機(jī)容量太多,也不宜采用。為了保證正確輸入,在原有代碼的基礎(chǔ)上,另加一個校驗位,作為代碼的一個組成部分。校驗位通過事先規(guī)定的數(shù)學(xué)方法計算出來。代碼一旦輸入,計算機(jī)會用同樣的數(shù)學(xué)運算方法按輸入的代碼數(shù)字計算出校驗位,并將它與輸入的校驗位進(jìn)行比較,以證實輸入是否有錯。@抄寫錯誤12341235@易位錯誤12341243@隔位易位錯誤12341432四、代碼結(jié)構(gòu)中的校驗位XXXXXXX校驗位代碼本體校驗碼是根據(jù)事先規(guī)定好的數(shù)學(xué)方法及代碼本體計算出來的。校驗位生成方式1、對代碼的本體的每一位加權(quán)求和C1C2C3….Cn代碼本體P1P2P3….Pn加權(quán)因子加權(quán)因子可以為:@自然數(shù)1,2,3,……@幾何級數(shù)2,4,8,16……@質(zhì)數(shù)3,5,7,13,172、以模除和得到余數(shù),將余數(shù)作為檢驗位C1C2C3….CnR校驗位代碼本體示例1、算術(shù)級數(shù)法12345代碼本體65432加權(quán)因子123456校驗位代碼本體2、幾何級數(shù)法12345代碼本體3216842加權(quán)因子123454校驗位代碼本體3、質(zhì)數(shù)法12345代碼本體1713753加權(quán)因子123450校驗位代碼本體4、身份證校驗碼的生成權(quán)數(shù):7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2模數(shù):11可能出現(xiàn)的余數(shù):012345678910其對應(yīng)的校驗碼:10X98765432文件設(shè)計文件設(shè)計就是根據(jù)文件的使用要求、處理方式、存儲量、數(shù)據(jù)的活動性以及硬件設(shè)備的條件等,合理地確定文件類別,選擇文件介質(zhì),決定文件的組織方式和存取方法。文件按用途可分為:主文件處理文件工作文件周轉(zhuǎn)文件其它文件(如后備文件)文件設(shè)計通常從設(shè)計共享文件開始。文件由記錄組成,所以設(shè)計文件主要是設(shè)計文件記錄的格式,詳見文件記錄的格式實例。一、文件的分類記錄文件名:主文件應(yīng)用:工資子系統(tǒng)序號123456數(shù)據(jù)項名職工代碼職工姓名部門基本工資附加工資扣房費變量名DMXMBMJBGZFJGZFF類型CCCNNN寬度482777小數(shù)位數(shù)222輸入到:輸出自:設(shè)計人員簽名

設(shè)計日期

。

文件記錄的格式實例二、文件設(shè)計數(shù)據(jù)厙設(shè)計是在選定的數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)上建立數(shù)據(jù)庫的過程。數(shù)據(jù)庫設(shè)計的步驟與系統(tǒng)開發(fā)的各個階段相對應(yīng),詳見下圖。三、數(shù)據(jù)庫設(shè)計的步驟(一)需求分析階段需求分析是整個數(shù)據(jù)庫設(shè)計過程中的第一步,也是最重要一步,進(jìn)行數(shù)據(jù)庫設(shè)計首先必須準(zhǔn)確了解與分析用戶需求。需求分析是作為基本的需求分析是否做得充分與準(zhǔn)確,決定了在其上構(gòu)建數(shù)據(jù)庫的速度與質(zhì)量。需求分析的任務(wù)是通過詳細(xì)調(diào)查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)工作概況,明確各用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴(kuò)充和改變,不能僅僅按當(dāng)前應(yīng)用需求來設(shè)計數(shù)據(jù)庫。需求分析階段的主要工作具體如下:(1)收集資料。(2)分析整理。(3)數(shù)據(jù)流程圖。(4)數(shù)據(jù)字典。(5)用戶確認(rèn)。(二)概念結(jié)構(gòu)設(shè)計如前所述,概念結(jié)構(gòu)設(shè)計應(yīng)在系統(tǒng)分析階段進(jìn)行。任務(wù)是根據(jù)用戶需求設(shè)計數(shù)據(jù)庫的概念數(shù)據(jù)模型(簡稱概念模型)。概念模型是從用戶角度看到的數(shù)據(jù)庫,它可用前面介紹的E-R模型表示,也可以用3NF關(guān)系群來表示。邏輯結(jié)構(gòu)設(shè)計是將概念結(jié)構(gòu)設(shè)計階段完成的概念模型轉(zhuǎn)換成能被選定的數(shù)據(jù)庫管理系統(tǒng)(DBMS)支持的數(shù)據(jù)模型。數(shù)據(jù)模型可以由實體聯(lián)系模型轉(zhuǎn)換而來,也可以用基于第三范式(3NF)的方法來設(shè)計。接著是用DBMS提供的數(shù)據(jù)描述語言DDL定義數(shù)據(jù)模型。(三)邏輯結(jié)構(gòu)設(shè)計內(nèi)容包括:選用庫文件的組織形式、存儲介質(zhì)的分配和存取路徑的選擇等。(四)物理結(jié)構(gòu)設(shè)計第五節(jié)輸入輸出設(shè)計1、有關(guān)輸出信息使用方面的內(nèi)容2、輸出信息的內(nèi)容3、輸出格式,如表格、圖形或文件;4、輸出設(shè)備5、輸出介質(zhì)1、確定輸出內(nèi)容⑴確定用戶在使用信息方面的需求:使用目的、輸出速度、頻率、數(shù)量、安全性要求等。⑵設(shè)計輸出信息的內(nèi)容,包括:信息的形式(表格、圖形、文字)、輸出的項目、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類型、位數(shù)及取值范圍等。一、系統(tǒng)輸出設(shè)計(一)系統(tǒng)輸出設(shè)計的內(nèi)容(二)輸出內(nèi)容的設(shè)計2、選擇輸出設(shè)備與介質(zhì)3、確定輸出格式提供給用戶的信息要進(jìn)行格式設(shè)計。輸出格式要滿足使用者的要求和習(xí)慣,達(dá)到格式清晰、美觀、易于閱讀和理解的要求。(三)輸出設(shè)計示例中國長江三峽開發(fā)總公司設(shè)備調(diào)撥單請購單位:工程建設(shè)部:右岸工程部1997年5月21日97調(diào)字第設(shè)備名稱棒磨機(jī)型號規(guī)格

數(shù)量計劃1賬面價格單價180,200.00總價180,200.00單位設(shè)備編號15073001-001實收數(shù)1結(jié)算價款單價180,200.00總價180,200.0000臺合同號10號倉庫發(fā)貨倉庫中國建設(shè)銀行開戶銀行32100876543賬號備注總計金額其他有關(guān)費用運輸費管理費保險費包裝費610.45保險費包裝費(大寫)壹拾捌萬貳佰元整180,200.00□存根□財務(wù)會計□請購單位□發(fā)貨倉庫□財務(wù)稽查□業(yè)務(wù)單位主管:收款:提貨:發(fā)貨:制單:打印輸出的設(shè)備調(diào)撥單000016號接收用戶輸出格式定義的輸入畫面二、系統(tǒng)輸入設(shè)計(一)輸入方式設(shè)計1、鍵盤輸入鍵盤輸入方式(key-in)包括聯(lián)機(jī)鍵盤輸入和脫機(jī)鍵盤輸入兩種方式。它們主要適用于常規(guī)、少量的數(shù)據(jù)和控制信息的輸入以及原始數(shù)據(jù)的錄入。這種方式不大適合大批中間處理性質(zhì)的數(shù)據(jù)的輸入。2、數(shù)模/模數(shù)轉(zhuǎn)換方式數(shù)模/模數(shù)轉(zhuǎn)換方式(A/D,D/A)的輸入是目前比較流行的基礎(chǔ)數(shù)據(jù)輸入方式。這是一種直接通過光電設(shè)備對實際數(shù)據(jù)進(jìn)行采集并將其轉(zhuǎn)換成數(shù)字信息的方法,是一種既省事,又安全可靠的數(shù)據(jù)輸入方式。這種方法最常見的有如下幾種:⑴條碼(棒碼)輸入;⑵掃描儀輸入;⑶傳感器輸入。3、網(wǎng)絡(luò)傳送數(shù)據(jù)網(wǎng)絡(luò)傳送有兩種方式,第一種利用數(shù)字網(wǎng)絡(luò)直接傳送數(shù)據(jù),第二種利用電話網(wǎng)絡(luò)(通過modem)傳送數(shù)據(jù)。設(shè)計原則便于填寫便于歸檔單據(jù)的格式應(yīng)能保證輸入精度實例見下表人事變動通知單______年______月_____日1002周英杰01400.0040.0090.0001004吳關(guān)興02350.0035.0050.0021005趙子英01450.0045.0090.0021007馬凌云02600.0060.00120.001科長簽字_____________備注欄:0──調(diào)離1──新進(jìn)2──修改數(shù)據(jù)人員代碼姓名部門基本工資附加工資房費備注(二)輸入格式設(shè)計4、磁盤傳送數(shù)據(jù)即數(shù)據(jù)輸出和接收雙方事先約定好待傳送數(shù)據(jù)文件的標(biāo)準(zhǔn)格式然后再通過軟盤/光盤傳送數(shù)據(jù)文件。這種方式不需要增加任何設(shè)備和投入,是一種非常方便的輸人數(shù)據(jù)方式,它常被用在主、子系統(tǒng)之間的數(shù)據(jù)連接上。(三)輸入數(shù)據(jù)的校驗方法1、重復(fù)校驗將同一數(shù)據(jù)先后輸入兩次,然后由計算機(jī)程序自動進(jìn)行對比校驗,如果兩次輸入不一直,計算機(jī)顯示或打印出錯信息。2、視覺校驗3、校驗位校驗輸入的同時,由計算機(jī)打印或顯示輸入數(shù)據(jù),然后與原始單據(jù)進(jìn)行比較,找出差錯。視覺校驗不可能查出所有的差錯,其查錯率為75%—85%。4、控制總數(shù)校驗6、格式校驗5、數(shù)據(jù)類型校驗

采用控制總數(shù)校驗時,工作人員先用手工求出數(shù)據(jù)的總值,然后在數(shù)據(jù)的輸入過程中由計算機(jī)程序累計總值,將兩者對比校驗。校驗數(shù)據(jù)是數(shù)字型還是字母型的。即校驗數(shù)據(jù)記錄中各數(shù)據(jù)項的位數(shù)和位置是否符合預(yù)先規(guī)定的格式。7、邏輯校驗即根據(jù)業(yè)務(wù)上各種數(shù)據(jù)的邏輯性,檢查有無矛盾。8、界限校驗即檢查某項輸入數(shù)據(jù)的內(nèi)容是否位于規(guī)定范圍之內(nèi)。9、順序校驗即檢查記錄的順序,例如,要求輸入數(shù)據(jù)無缺號時,通過順序校驗,可以發(fā)現(xiàn)被遺漏的記錄。又如,要求記錄的序號不得重復(fù)時,即可查出有無重復(fù)的記錄。10、記錄計數(shù)校驗11、平衡校驗12、對照校驗這種方法通過計算記錄個數(shù)來檢查記錄有否遺漏和重復(fù)。不僅對輸人數(shù)據(jù),而且對處理數(shù)據(jù)、輸出數(shù)據(jù)及出錯數(shù)據(jù)的個數(shù)等均可進(jìn)行計數(shù)校驗。平衡校驗的目的在于檢查相反項目間是否平衡。對照校驗就是將輸入的數(shù)據(jù)與基本文件的數(shù)據(jù)相核對,檢查兩者是否一致。例如,為了檢查銷售數(shù)據(jù)中的用戶代碼是否正確,可以將輸入的用戶代碼與計算機(jī)中存放的用戶代碼總表相核對。常用的界面設(shè)計包括:菜單方式繪畫方式提示操作方式操作權(quán)限管理方式詳見三峽工程開發(fā)總公司設(shè)備調(diào)撥單的錄入屏幕設(shè)計示例。(四)用戶界面設(shè)計三峽工程開發(fā)總公司設(shè)備調(diào)撥單的錄入屏幕設(shè)計示例第六節(jié)模塊功能與處理過程設(shè)計一、IPO圖與HIPO圖IPO圖主要是配合層次化模塊結(jié)構(gòu)圖詳細(xì)說明每個模塊內(nèi)部功能的一種工具。IPO圖的設(shè)計包括輸入(I)、處理(P)、輸出(O),以及與之相應(yīng)的數(shù)據(jù)庫/文件、在總體結(jié)構(gòu)中的位置等信息。IPO圖設(shè)計和處理最關(guān)鍵的是內(nèi)部處理過程的描述。目前用于描述模塊內(nèi)部處理過程的主要有如下幾種方法:結(jié)構(gòu)化英語方法、決策樹方法、判定表方法和算法描述語言方法。HIPO圖(HierarchyplusInput-Process-Output)是IBM公司于70年代中期在層次結(jié)構(gòu)圖(structurechart)的基礎(chǔ)上推出的一種描述系統(tǒng)結(jié)構(gòu)和模塊內(nèi)部處理功能的工具(技術(shù))。HIPO圖由層次結(jié)構(gòu)圖和IPO圖兩部分構(gòu)成,前者描述了整個系統(tǒng)的設(shè)計結(jié)構(gòu)以及各類模塊之間的關(guān)系,后者描述了某個特定模塊內(nèi)部的處理過程和輸入/輸出關(guān)系。(一)IPO圖(二)HIPO圖HIPO圖方法的模塊層次功能分解正是以模塊的這一特性以及模塊分解的層次性為基礎(chǔ),將一個大的功能模塊逐層分解,得到系統(tǒng)的模塊層次結(jié)構(gòu),而后再進(jìn)一步把每個模塊分解為輸入、處理和輸出的具體執(zhí)行模塊。通常,HIPO圖方法由三個基本圖表組成:1.總體IPO圖實際上是數(shù)據(jù)流程圖的初步分層細(xì)化結(jié)果,對最高層模塊進(jìn)行功能分解,并為其提供輸入變量表、處理功能和輸出變量表。2.HIPO圖對頂層模塊進(jìn)行重復(fù)逐層分解,而得到的關(guān)于組成頂層模塊的所有功能模塊的層次結(jié)構(gòu)關(guān)系圖。3.低層主要模塊的詳細(xì)IPO圖由于HIPO圖僅僅表示了一個系統(tǒng)功能模塊的層次分解關(guān)系,還沒有充分說明各模塊間的調(diào)用關(guān)系和模塊間的數(shù)據(jù)流及信息流的傳遞關(guān)系。因此,對某些較低層上的重要工作模塊,還必須根據(jù)數(shù)據(jù)字典和HIPO圖,繪制其IPO圖,用來描述模塊的輸入、處理和輸出細(xì)節(jié),以及與其他模塊間的調(diào)用和被調(diào)用關(guān)系。舉一個對銷售系統(tǒng)中“訂單處理”模塊進(jìn)行層次功能分解的例子,說明HIPO圖方法。第1步,如下圖所示,給出銷售系統(tǒng)中“訂單處理”部分的數(shù)據(jù)流程圖。訂單處理訂單備貨單缺貨文件庫存文件已處理訂單第2步,根據(jù)數(shù)據(jù)流程圖,把“訂單處理”模塊分解為輸入、處理和輸出三個功能模塊,從而得到總體IPO圖。1、輸入訂單2、讀庫存文件1、確定能否供貨2、處理缺貨單3、處理訂貨單1、編輯備貨單2、打印備貨單I-輸入P-處理O-輸出第3步,根據(jù)總體IP0圖,將各模塊逐層進(jìn)行功能分解,并繪制“訂單處理”的HIPO圖。畫HIPO圖的過程實際上是一個從上到下的反復(fù)調(diào)整過程。在HIP0圖中,模塊的執(zhí)行順序一般是從上到下、由左向右。訂單處理輸入處理輸出確定能否供貨處理缺貨訂單處理供貨單讀庫存文件輸入訂單編輯備貨單打印備貨單輸入訂單項目訂單校驗記錄缺貨項目存儲缺貨項目修改庫存量記錄可供貨項目第4步,在HIPO圖的基礎(chǔ)上,根據(jù)數(shù)據(jù)字典,繪制低層主要模塊的IP0圖,作為程序模塊結(jié)構(gòu)設(shè)計的依據(jù)。圖4是圖3上“確定能否供貨”模塊的IPO圖。系統(tǒng)名稱:訂單處理模塊名稱:確定能否供貨設(shè)計者:王言文日期:2007.12.26上層調(diào)用模塊:處理模塊可調(diào)用的下層模塊:無輸入:訂單訂貨量X庫存信息Y輸出:供貨類型標(biāo)志I缺貨信息Z處理:IFY-X>0I=1(可供貨)ELSEI=2(缺貨)ENDIF備注:訂二、層次模塊結(jié)構(gòu)圖層次模塊結(jié)構(gòu)圖或稱結(jié)構(gòu)圖(structurechart)是1974年由W.Steven等人從結(jié)構(gòu)化設(shè)計(structuredesign)的角度提出的一種工具。它的基本做法是將,系統(tǒng)劃分為若干子系統(tǒng),子系統(tǒng)下再劃分為若干的模塊,大模塊內(nèi)再分小模塊,而模塊是指具備有輸入輸出、邏輯功能、運行程序和內(nèi)部數(shù)據(jù)四種屬性的一組程序。層次模塊結(jié)構(gòu)圖主要關(guān)心的是模塊的外部屬性,即上下級模塊、同級模塊之間的數(shù)據(jù)傳遞和調(diào)用關(guān)系,而并不關(guān)心模塊的內(nèi)部。(一)模塊結(jié)構(gòu)的圖形表示結(jié)構(gòu)圖給出了5個圖例:模塊和模塊之間的聯(lián)系(二)結(jié)構(gòu)設(shè)計1、結(jié)構(gòu)設(shè)計的原則⑴所劃分的模塊其內(nèi)部的凝聚性要好,即模塊具有獨立性,模塊之間的聯(lián)系要少;⑵模塊之間的耦合只能存在上下級之間的調(diào)用關(guān)系,不能有同級之間的橫向聯(lián)系;⑶整個系統(tǒng)呈樹狀結(jié)構(gòu),不允許有網(wǎng)狀結(jié)構(gòu)或交叉調(diào)用關(guān)系;⑷所有模塊都必須嚴(yán)格地分類編碼并建立歸檔文件。2、模塊的耦合模塊耦合,是衡量一個模塊與其他模塊在聯(lián)接形式和接口復(fù)雜性方面相互作用關(guān)系的指標(biāo),標(biāo)志著系統(tǒng)結(jié)構(gòu)設(shè)計的質(zhì)量。模塊耦合程度的高低直接影響了系統(tǒng)的可修改性和可維護(hù)性。在一般情況下,耦合程度越低,說明系統(tǒng)各組成模塊間聯(lián)系越簡單,則每個模塊的獨立性就越強(qiáng),就越容易獨立地進(jìn)行設(shè)計、修改和維護(hù)。模塊的耦合程度,一般主要取決于模塊本身的質(zhì)量和相互聯(lián)結(jié)的類型、模塊間接口的復(fù)雜程度及模塊間傳遞的信息流類型等。據(jù)此,可以把模塊耦合劃分為以下三種類型:⑴數(shù)據(jù)耦合如果一個模塊與其他模塊之間的聯(lián)系全部是數(shù)據(jù)聯(lián)系,那么,這個模塊就是一個“黑箱”。一般來說,兩個模塊之間傳遞的數(shù)據(jù)越少,模塊間的獨立性就越強(qiáng),因此模塊的可修改性和可維護(hù)性就越高。⑵控制耦合如果兩個模塊之間,除了傳遞數(shù)據(jù)信息外,還傳遞控制信息,把模塊間的這種聯(lián)接關(guān)系稱為控制耦合。通常,控制標(biāo)志來自下層模塊,因此,調(diào)用模塊不是“黑箱”,它將根據(jù)不同的控制標(biāo)志執(zhí)行不同的處理功能,即它的輸入信息不是固定的。由于較多的控制標(biāo)志影響了模塊的獨立性,使系統(tǒng)維護(hù)工作更加復(fù)雜化。所以,在系統(tǒng)設(shè)計中,應(yīng)該盡量避免或減少控制耦合。⑶內(nèi)容耦合一個模塊直接與另一個模塊的內(nèi)容發(fā)生聯(lián)系,即在一個模塊的執(zhí)行過程中,從該模塊直接轉(zhuǎn)移到另一個模塊中去運行(病態(tài)轉(zhuǎn)移)。這種耦合程度最高,是最差的一種。如果兩個模塊是內(nèi)容耦合,則在修改其中一個模塊時,將直接影響到另一個模塊,產(chǎn)生波動現(xiàn)象。所謂波動現(xiàn)象是指由于系統(tǒng)中各組成模塊的獨立性較差,修改其中一個模塊,就會像往平靜的池塘中扔下一塊石頭一樣,影響整個系統(tǒng)。內(nèi)容耦合使模塊的獨立性、系統(tǒng)的可修改性和可維護(hù)性最差。2、模塊的聚合模塊聚合是衡量一個模塊內(nèi)部各組成部分間整體統(tǒng)一性的指標(biāo),描述了一個模塊功能專一性的程度。模塊聚合是指一個模塊內(nèi)部各軟件要素(如語句或語句段)之間的聯(lián)系,模塊聚合度越高則模塊獨立性越大。⑴偶然聚合如果一個模塊是由若干個毫無關(guān)系的功能偶然地組合在一起構(gòu)成的,把這種模塊稱為偶然聚合模塊。這種模塊內(nèi)部組織結(jié)構(gòu)的規(guī)律性最差,無法確定其功能,因此聚合程度最低。⑵邏輯聚合如果一個模塊是由若干個結(jié)構(gòu)不同、但具有邏輯相似關(guān)系的功能組合在一起構(gòu)成的,把這種模塊稱為邏輯聚合模塊。對邏輯聚合模塊的調(diào)用,常常需要有一個功能控制開關(guān),由上層的調(diào)用模塊向它發(fā)出一個控制信號,在其多個關(guān)連性的功能中選擇執(zhí)行某一個功能,其聚合程度為較差。⑶時間聚合如果若干個關(guān)系不大的功能,由于它們是幾乎在相同的時間內(nèi)執(zhí)行的,因此把它們放在一起構(gòu)成一個模塊,這種模塊稱為時間聚合模塊。在調(diào)用這種模塊時,一般是在特定的時間限制內(nèi)完成各個處理功能的執(zhí)行,其聚合程度為中等偏差。⑷過程聚合如果一個模塊是由若干個為實現(xiàn)某項業(yè)務(wù)處理、執(zhí)行次序受同一個控制流支配的功能組合在一起構(gòu)成的,那么把這種模塊稱為過程聚合模塊。過程聚合模塊的各組成功能由控制流聯(lián)結(jié)在一起,實際上是若干個處理功能的公共過程單元,其聚合程度為中等。⑸數(shù)據(jù)聚合如果一個模塊的內(nèi)部各組成部分的處理功能是對相同的輸入數(shù)據(jù)進(jìn)行處理或產(chǎn)生相同的輸出數(shù)據(jù),則把這種模塊稱作數(shù)據(jù)聚合模塊。它能更合理地定義模塊功能,結(jié)構(gòu)比較清楚,聚合程度為中上。⑹順序聚合如果一個模塊內(nèi)部的各個處理功能密切相關(guān),順序執(zhí)行,一個處理的輸出直接作為下一個處理的輸入,各處理功能處在同一線性鏈上,則把這種模塊稱為順序聚合模塊,其聚合程度為較好。⑺功能聚合如果一個模塊是由一個單獨的能夠確切定義的處理功能組成,那么把這種模塊稱為功能聚合模塊,一般地,功能聚合模塊可以用一個動詞和一個簡單的接受詞表示,例如“讀憑證文件”、“打印發(fā)貨單”等,它對確定的輸入進(jìn)行一定的處理,并輸出可以預(yù)期的結(jié)果。這是一種最理想的聚合方式,獨立性最強(qiáng),具有“黑箱”特征,使得模塊便于修改,系統(tǒng)便于分塊設(shè)計。(三)應(yīng)用舉例下面舉例來說明層次化模塊結(jié)構(gòu)圖的畫法。某公司銷售采購處理系統(tǒng)的數(shù)據(jù)處理子系統(tǒng)(簡稱GETSOL)的處理過程是:公司營業(yè)部對每天的顧客訂貨單形成一個訂貨單文件,它記錄了訂貨項目的數(shù)量、貨號、型號等詳細(xì)數(shù)據(jù)。然后在這個文件的基礎(chǔ)上對顧客訂貨情況進(jìn)行分類統(tǒng)計、匯總等項處理操作。該子系統(tǒng)的層次化模型結(jié)構(gòu),如下圖所示:示例(1)年交易額在5萬或5萬以下,則不給予折扣;(2)對于年交易額在5萬以上時:如果無欠款,則給予15%的折扣;如果有欠款,而且與本公司的交易關(guān)系在20年以上,則折扣為10%;如果有欠款,而且與本公司交易關(guān)系在20年以下,則折扣為5%。訂貨折扣政策如下:IF購貨金額在5萬以上

溫馨提示

  • 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

提交評論