




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、CompanyLOGO軟件工程軟件工程教材:主編 曹哲 高誠 中國水利水電出版社教案:河北工業(yè)大學廊坊分院 計算機系 黃南川ZLL軟件工程軟件工程第8章面向數據流的設計方法面向數據流的設計方法,即通常所說的結構設計法面向數據流的設計方法,即通常所說的結構設計法(Structure Design,簡稱,簡稱SD方法),由方法),由Yourdon和和Constantine等人于等人于1874年提出的,與結構化分析年提出的,與結構化分析(SA)相銜接,根據對數據流的分析設計軟件結構。)相銜接,根據對數據流的分析設計軟件結構。本章所述技術用于軟件的概要設計描述,包括模塊、本章所述技術用于軟件的概要設計
2、描述,包括模塊、界面和數據結構的定義,這是所有后續(xù)開發(fā)的基礎。界面和數據結構的定義,這是所有后續(xù)開發(fā)的基礎。 SD方法對那些順序處理信息且不含層次數據結構的方法對那些順序處理信息且不含層次數據結構的系統最為有效,例如過程控制、復雜的數值分析過程、系統最為有效,例如過程控制、復雜的數值分析過程、以及科學與工程方面的應用。當以及科學與工程方面的應用。當SD方法用于完全的方法用于完全的數據處理時,即使系統中使用層次數據也同樣行之有數據處理時,即使系統中使用層次數據也同樣行之有效。效。ZLL軟件工程軟件工程8.1 SD方法的設計過程和有關概念方法的設計過程和有關概念SD方法能方便地將數據流圖轉換為軟件
3、結構,其過方法能方便地將數據流圖轉換為軟件結構,其過程分為五步:程分為五步: 1 確定信息流的類型;確定信息流的類型; 2 劃定流界;劃定流界; 3 將數據流圖映射為程序結構;將數據流圖映射為程序結構; 4 提取層次控制結構;提取層次控制結構; 5 通過設計復審和使用啟發(fā)式策略進通過設計復審和使用啟發(fā)式策略進 一步精化所得到的結構。一步精化所得到的結構。第第3步所用映射方法涉及信息流的類型。信息流分步所用映射方法涉及信息流的類型。信息流分為變換流和事務流兩種類型。為變換流和事務流兩種類型。ZLL軟件工程軟件工程1)變換流)變換流變換流變換流 在基本系統模型(即頂級數據在基本系統模型(即頂級數據
4、流圖)中信息通常以流圖)中信息通常以“外部世界外部世界”所具所具有的形式進入系統,經過處理后又以這有的形式進入系統,經過處理后又以這種形式離開系統。種形式離開系統。輸入流輸入流外外部部表表示示內內部部表表示示信信息息時間時間信息流信息流輸出流輸出流變換流變換流ZLL軟件工程軟件工程1)變換流)變換流典型的變換流典型的變換流變換流的特點是:經過變換變換流的特點是:經過變換B的數據流一部分先的數據流一部分先經過變換經過變換C到達變換到達變換E,然后另一部分經過變換,然后另一部分經過變換D到達到達E;即;即C和和D是順序結構。是順序結構。ABCDEFZLL軟件工程軟件工程2)事務流)事務流事務流事務
5、流單個數據項稱為事務(單個數據項稱為事務(transaction)沿傳入路徑(也稱接受通道)進入系統,由外部形沿傳入路徑(也稱接受通道)進入系統,由外部形式變換為內部形式后到達事務中心,事務中心根據式變換為內部形式后到達事務中心,事務中心根據數據項計值結果從若干動作路徑中選定一條繼續(xù)執(zhí)數據項計值結果從若干動作路徑中選定一條繼續(xù)執(zhí)行。行。可見它是一個選擇結構??梢娝且粋€選擇結構。事務中心事務中心TB事務事務CA事務流事務流ZLL軟件工程軟件工程圖面向數據流的設計精化數據流圖精化數據流圖流的類流的類型型確定事務中心確定事務中心和各動作路徑和各動作路徑確定輸入輸出確定輸入輸出流界流界映射為事務結構
6、映射為事務結構映射為變換結構映射為變換結構提取控制結構提取控制結構利用啟發(fā)式策略利用啟發(fā)式策略精化軟件結構精化軟件結構描述接口和全局描述接口和全局數據結構數據結構事務分析事務分析變換分析變換分析復審復審詳細設計詳細設計通過通過“變換變換”“事務事務”ZLL軟件工程軟件工程8.2 變換分析下面以下面以“家庭保安系統家庭保安系統”的傳感器監(jiān)測的傳感器監(jiān)測子系統為例說明變換分析的各個步驟。子系統為例說明變換分析的各個步驟。 步驟一、復審基本系統模型步驟一、復審基本系統模型 基本系統模型指頂級基本系統模型指頂級DFD和所有由外部和所有由外部提供的信息。這一設計步驟是對系統規(guī)提供的信息。這一設計步驟是對
7、系統規(guī)格說明書和軟件需求規(guī)格說明書進行評格說明書和軟件需求規(guī)格說明書進行評估。這兩個文檔描述軟件界面上信息的估。這兩個文檔描述軟件界面上信息的流程和結構。流程和結構。 ZLL軟件工程軟件工程“家庭保安系統家庭保安系統”的頂級數據流圖的頂級數據流圖警報類別警報類別家庭保安家庭保安系統軟件系統軟件控制面板控制面板顯示器顯示器警報器警報器電話線電話線傳感器傳感器用戶命令用戶命令顯示信息顯示信息傳感數據傳感數據電話撥號音頻電話撥號音頻ZLL軟件工程軟件工程“家庭保安系統家庭保安系統”的第一級的第一級DFD 電話撥號音頻電話撥號音頻配置數據配置數據配置配置 數據數據配置數據配置數據用戶命用戶命令處理令處
8、理顯示信息顯示信息和狀態(tài)和狀態(tài)傳感器傳感器監(jiān)測監(jiān)測系統系統配置配置控制面板控制面板顯示器顯示器警報器警報器電話線電話線傳感器傳感器配置信息配置信息配置配置 命令命令啟動啟動/ 停止命令停止命令原口令原口令有效口令有效口令傳感器信息傳感器信息報警類別報警類別傳感數據傳感數據顯示顯示 信息信息用戶命令用戶命令口令口令啟動啟動/停止停止系統和狀態(tài)系統和狀態(tài)啟動或啟動或停止消息停止消息口令口令核對核對用用戶戶交交互互子子系系統統圖圖8-5ZLL軟件工程軟件工程8.2 變換分析步驟二、復審和精化軟件數據流圖步驟二、復審和精化軟件數據流圖 這一步主要是對軟件需求規(guī)格說明書中的分這一步主要是對軟件需求規(guī)格說
9、明書中的分析模型進行精化,直至獲得足夠詳細的析模型進行精化,直至獲得足夠詳細的DFD。v例如,由例如,由“傳感器監(jiān)測子系統傳感器監(jiān)測子系統”的第一級和第的第一級和第二級二級DFD進一步推導出第三級數據流圖,此時,進一步推導出第三級數據流圖,此時,每個變換對應一個獨立的功能,可以用一個具每個變換對應一個獨立的功能,可以用一個具有較高內聚度的模塊實現,至此已有足夠的信有較高內聚度的模塊實現,至此已有足夠的信息可用于設計息可用于設計“傳感器監(jiān)測子系統傳感器監(jiān)測子系統”的程序結的程序結構,精化過程亦可結束。構,精化過程亦可結束。ZLL軟件工程軟件工程“傳感器監(jiān)測子系統傳感器監(jiān)測子系統”的第二級的第二級
10、DFD 傳感器信息傳感器信息傳感器標志傳感器標志的類型和位置的類型和位置傳感數據傳感數據警報類別警報類別警報數據警報數據顯示顯示格式格式產生警產生警報信號報信號電話電話撥號撥號異常數異常數據判別據判別讀取傳讀取傳感數據感數據配配 置置 信信 息息配置數據配置數據傳感器傳感器標識類型標識類型電話號碼電話號碼電話撥號音頻電話撥號音頻ZLL軟件工程軟件工程“傳感器監(jiān)測子系統傳感器監(jiān)測子系統”的第三級的第三級DFD 配配 置置 信信 息息警報條件碼警報條件碼傳感器標志傳感器標志定時信息定時信息傳感數據傳感數據電話號碼電話號碼對應的音頻對應的音頻電話撥電話撥號音頻號音頻傳感器信息傳感器信息號碼表號碼表電
11、話號碼電話號碼讀取傳讀取傳感數據感數據獲取響獲取響應信息應信息建立警建立警報條件報條件選擇電選擇電話號碼話號碼連通電連通電話網話網產生撥產生撥號脈沖號脈沖產生警產生警報信號報信號格式化格式化顯示顯示產生產生顯示顯示傳感器標志的傳感器標志的類型和位置類型和位置格式化標志的格式化標志的類型和位置類型和位置置傳感器標識置傳感器標識警報數據警報數據警報類別警報類別配配 置置 數數 據據ZLL軟件工程軟件工程8.2 變換分析步驟三、確定步驟三、確定DFD的特性,判定它為變換的特性,判定它為變換流還是事務流。流還是事務流。v 以圖以圖8 2 4所示所示DFD為例,數據沿一個為例,數據沿一個傳入路徑進來,沿
12、三個傳出路徑離開,沒傳入路徑進來,沿三個傳出路徑離開,沒有明顯的事務中心,因此,該信息流應屬有明顯的事務中心,因此,該信息流應屬變換流。變換流。步驟四、劃定輸入流和輸出流的邊界,孤步驟四、劃定輸入流和輸出流的邊界,孤立變換中心。立變換中心。ZLL軟件工程軟件工程8.2 變換分析步驟五、執(zhí)行步驟五、執(zhí)行“一級分解一級分解”(first level factoring) 一級分解的目標是導出具有三個層次的程一級分解的目標是導出具有三個層次的程序結構,頂層為主控模塊;底層模塊執(zhí)行序結構,頂層為主控模塊;底層模塊執(zhí)行輸入、計算和輸出功能;中層模塊控制、輸入、計算和輸出功能;中層模塊控制、協調底層的工作
13、。協調底層的工作。ZLL軟件工程軟件工程8.2 變換分析程序結構可用程序結構可用Yourdon結構圖表示。結構圖中,方框結構圖表示。結構圖中,方框代表模塊,框內名稱表示模塊的功能;方框之間的有代表模塊,框內名稱表示模塊的功能;方框之間的有向邊(無二義時也可用無向邊)表示模塊間的調用關向邊(無二義時也可用無向邊)表示模塊間的調用關系。調用模塊上無標志表示順序調用:從左至右;菱系。調用模塊上無標志表示順序調用:從左至右;菱形表示選擇調用;弧形箭頭表示循環(huán)調用。但本書后形表示選擇調用;弧形箭頭表示循環(huán)調用。但本書后面除了順序調用外,并沒有遵循這些規(guī)定。面除了順序調用外,并沒有遵循這些規(guī)定。acbac
14、bab a) 順序調用順序調用 b) 選擇調用選擇調用 c) 循環(huán)調用循環(huán)調用ZLL軟件工程軟件工程8.2 變換分析對應于一級分解的上兩層模塊,即主控模對應于一級分解的上兩層模塊,即主控模塊和下面幾個中層控制模塊:塊和下面幾個中層控制模塊: 輸入流控制模塊,接收所有輸入數據;輸入流控制模塊,接收所有輸入數據; 變換流控制模塊,對內部形式數據進行加變換流控制模塊,對內部形式數據進行加工、處理;工、處理; 輸出流控制模塊,產生輸出數據。輸出流控制模塊,產生輸出數據。ZLL軟件工程軟件工程8.2 變換分析一級分解一級分解輸入流輸入流變換流變換流變換流變換流控制模塊控制模塊輸入流輸入流控制模塊控制模塊
15、輸出流輸出流主控模塊主控模塊輸出流輸出流控制模塊控制模塊ABCDEFGHZLL軟件工程軟件工程8.2 變換分析一個簡單三叉結構,實際處理大型系統一個簡單三叉結構,實際處理大型系統的復雜數據流時,可能需要多個模塊對的復雜數據流時,可能需要多個模塊對應一個模塊的功能。應一個模塊的功能。“一級分解一級分解”總的總的原則是,在完成控制功能并保持低耦合原則是,在完成控制功能并保持低耦合度、高內聚度的前提下盡可能地減少模度、高內聚度的前提下盡可能地減少模塊的數量。塊的數量?!皞鞲衅鞅O(jiān)測子系統傳感器監(jiān)測子系統”一級分解,其中一級分解,其中控制模塊的名字概括了所有下屬模塊的控制模塊的名字概括了所有下屬模塊的功
16、能。功能。ZLL軟件工程軟件工程傳感器監(jiān)測子系統一級分解結果傳感器監(jiān)測子系統一級分解結果 警報條件控警報條件控制模塊制模塊傳感器輸入傳感器輸入控制模塊控制模塊主控模塊主控模塊警報輸出控警報輸出控制模塊制模塊配配 置置 信信 息息ZLL軟件工程軟件工程8.2 變換分析步驟六、執(zhí)行步驟六、執(zhí)行“二級分解二級分解”。 二級分解的任務是把數據流圖中每個處理二級分解的任務是把數據流圖中每個處理框映射為結構圖中的一個模塊。其過程是框映射為結構圖中的一個模塊。其過程是從變換中心的邊界開始沿輸入、輸出通道從變換中心的邊界開始沿輸入、輸出通道向外移動;從變換中心的輸入向外移動;從變換中心的輸入(出出)邊界向外邊
17、界向外移動,把遇到的每個處理框映射為結構圖移動,把遇到的每個處理框映射為結構圖中相應控制模塊下的一個模塊。中相應控制模塊下的一個模塊。ZLL軟件工程軟件工程二級分解二級分解 輸入流輸入流變換流變換流輸入流控制輸入流控制模塊模塊輸出流輸出流主控模塊主控模塊ABCDEFGHBDAC變換流控制變換流控制模塊模塊輸出流控制輸出流控制模塊模塊EFGHZLL軟件工程軟件工程8.2 變換分析DFD的處理框與程序結構模塊一一對應,的處理框與程序結構模塊一一對應,但按照軟件設計原則進行設計時,可能但按照軟件設計原則進行設計時,可能需要把幾個處理框聚合為一個模塊,或需要把幾個處理框聚合為一個模塊,或者把一個處理框
18、裂變?yōu)閹讉€模塊??傊甙岩粋€處理框裂變?yōu)閹讉€模塊。總之,應根據應根據“良好良好”設計的標準,進行二級設計的標準,進行二級分解。分解。 二級分解后得到的僅僅是程序結構的二級分解后得到的僅僅是程序結構的“雛形雛形”(first cut),后續(xù)的復審和),后續(xù)的復審和精化會反復修改。精化會反復修改。ZLL軟件工程軟件工程8.2 變換分析程序結構的模塊名已隱含了模塊功能,但仍程序結構的模塊名已隱含了模塊功能,但仍有必要為每個模塊寫一個簡要的處理說明,有必要為每個模塊寫一個簡要的處理說明,它應當包括:它應當包括: 1進出模塊的信息(接口描述);進出模塊的信息(接口描述); 2模塊的局部信息;模塊的局部
19、信息; 3處理過程陳述,包括任務和主要的判處理過程陳述,包括任務和主要的判 斷點的位置、條件;斷點的位置、條件; 4對有關限制和一些專門特性的簡要說對有關限制和一些專門特性的簡要說 明(例如,文件明(例如,文件I/O,獨立于硬件的,獨立于硬件的 特性,特殊的實時要求等)。特性,特殊的實時要求等)。這些描述構成第一版設計規(guī)格說明書。這些描述構成第一版設計規(guī)格說明書。ZLL軟件工程軟件工程8.2 變換分析步驟七、采用啟發(fā)式設計策略,精化所得步驟七、采用啟發(fā)式設計策略,精化所得程序結構雛形,改良軟件質量程序結構雛形,改良軟件質量 對于程序結構的雛形,以對于程序結構的雛形,以“模塊獨立模塊獨立”為為指
20、導思想,對模塊進行整合或分解,旨在指導思想,對模塊進行整合或分解,旨在追求高內聚、低耦合,以及易實現、易測追求高內聚、低耦合,以及易實現、易測試、易維護的軟件結構。試、易維護的軟件結構。ZLL軟件工程軟件工程結構的優(yōu)化結構的優(yōu)化輸入流控制模塊輸入流控制模塊主控模塊主控模塊BDAC變換流控制模塊變換流控制模塊輸出流控制模塊輸出流控制模塊EFGH輸入流控制模塊輸入流控制模塊主控模塊主控模塊BDACEFGHZLL軟件工程軟件工程8.2 變換分析上述七個設計步驟的目標是給出軟件上述七個設計步驟的目標是給出軟件的一個整體描述。的一個整體描述。一旦有了這樣一個描述,設計人員即一旦有了這樣一個描述,設計人員
21、即可從整體角度評價和精化軟件的總體可從整體角度評價和精化軟件的總體結構,此時修改所需耗費不多,卻能結構,此時修改所需耗費不多,卻能大大提高軟件質量。大大提高軟件質量。ZLL軟件工程軟件工程8.3 事務分析當數據流具有明顯的事務特征時,即能找到一當數據流具有明顯的事務特征時,即能找到一個事務(亦稱觸發(fā)數據項)和一個事務中心,個事務(亦稱觸發(fā)數據項)和一個事務中心,采用事務分析法更為適宜。采用事務分析法更為適宜。下面以下面以“家庭保安系統家庭保安系統”中中“用戶交互子系統用戶交互子系統”為例,說明事務分析法。為例,說明事務分析法。該子系統的第一級數據流圖(圖該子系統的第一級數據流圖(圖8-5)精化
22、后)精化后得到第二級數據流圖(得到第二級數據流圖(8-14)。圖中)。圖中“用戶命用戶命令數據令數據”流入系統后,沿三條動作路徑之一離流入系統后,沿三條動作路徑之一離開系統,若將數據項開系統,若將數據項“命令類型命令類型”看作事務,看作事務,該子系統的信息流具有明顯的事務特征。該子系統的信息流具有明顯的事務特征。ZLL軟件工程軟件工程用戶交互子系統的二級數據流圖用戶交互子系統的二級數據流圖 無效口令無效口令啟動啟動/停止命令停止命令口令口令啟動啟動/停止停止消息消息配置數據配置數據配置數據配置數據配置命令配置命令顯示信息顯示信息“再試再試”信信息息讀取讀取用戶用戶命令命令啟動啟動命令命令處理處
23、理啟動啟動/停止停止系統系統產生無效產生無效的信息的信息讀取讀取系統系統數據數據讀取讀取配置配置文件文件讀取讀取口令口令顯示信息顯示信息和狀態(tài)和狀態(tài)比較口令比較口令與文件與文件配配 置置 信信 息息用戶命令數據用戶命令數據系統參數和數據系統參數和數據原始配置項原始配置項格式化的格式化的配置數據配置數據命令類型命令類型確認口令確認口令四位數四位數有效口令有效口令ZLL軟件工程軟件工程8.3 事務分析事務分析法可概括為七個步驟:事務分析法可概括為七個步驟:步驟一、復審基本系統模型;步驟一、復審基本系統模型;步驟二、復審并精化軟件數據流圖;步驟二、復審并精化軟件數據流圖;步驟三、確定數據流圖的特征;
24、步驟三、確定數據流圖的特征;步驟四、指出事務中心,確定接收部分步驟四、指出事務中心,確定接收部分 和發(fā)送部分的流界;和發(fā)送部分的流界;步驟五、映射出系統上層模塊結構;步驟五、映射出系統上層模塊結構;ZLL軟件工程軟件工程映射系統上層結構模塊映射系統上層結構模塊9861254371011事務中心事務中心接收部分接收部分發(fā)送部分發(fā)送部分SYSTEM輸入輸入 1散轉散轉 2SUBSYS1SUBSYS2SUBSYS3ZLL軟件工程軟件工程8.3 事務分析步驟六、分解并精化事務結構以及每條動步驟六、分解并精化事務結構以及每條動作路徑所對應的結構。這些子結構是根據作路徑所對應的結構。這些子結構是根據流經每
25、一動作路徑的數據流特征,采用本流經每一動作路徑的數據流特征,采用本節(jié)或上節(jié)所述設計步驟逐一導出的。節(jié)或上節(jié)所述設計步驟逐一導出的。ZLL軟件工程軟件工程設計系統下層模塊結構設計系統下層模塊結構9861254371011事務中心事務中心接收部分接收部分發(fā)送部分發(fā)送部分SUBSYS2 710411輸入控制輸入控制變換控制變換控制輸出控制輸出控制ZLL軟件工程軟件工程8.3 事務分析圖圖8-3-4 將模塊結構組合,得到程序結構雛形將模塊結構組合,得到程序結構雛形SYSTEM輸入輸入 1散轉散轉 2SUBSYS1SUBSYS2SUBSYS3 710411輸入控制輸入控制變換控制變換控制輸出控制輸出控制
26、36589ZLL軟件工程軟件工程8.3 事務分析步驟七、使用啟發(fā)式設計策略,精化所步驟七、使用啟發(fā)式設計策略,精化所得程序結構雛形,改良軟件質量。這一得程序結構雛形,改良軟件質量。這一步驟與變換分析法相同。步驟與變換分析法相同。SYSTEM輸入輸入 1散轉散轉 2SUBSYS2 71041136589ZLL軟件工程軟件工程8.4 設計優(yōu)化及原則8.4.1 啟發(fā)式設計策略 1調整模塊的功能和規(guī)模,降低耦合度,提高內調整模塊的功能和規(guī)模,降低耦合度,提高內聚度。聚度。若在幾個模塊中發(fā)現了共有的子功能,一般應將若在幾個模塊中發(fā)現了共有的子功能,一般應將此子功能獨立出來作為一個模塊,以提高單個模此子功
27、能獨立出來作為一個模塊,以提高單個模塊的內聚度。合并模塊通常是為了減少控制信息塊的內聚度。合并模塊通常是為了減少控制信息的傳遞以及對全程數據的引用,同時降低接口的的傳遞以及對全程數據的引用,同時降低接口的復雜性。復雜性。 模塊的規(guī)模沒有固定的要求。以保持模塊的獨立模塊的規(guī)模沒有固定的要求。以保持模塊的獨立性為原則。一般而言,模塊規(guī)模以一頁左右為宜性為原則。一般而言,模塊規(guī)模以一頁左右為宜(高級語言在(高級語言在75個語句左右)。個語句左右)。ZLL軟件工程軟件工程8.4.1 啟發(fā)式設計策略啟發(fā)式設計策略2調整軟件結構的深度、寬度、扇出和扇入調整軟件結構的深度、寬度、扇出和扇入數目,改善軟件結構
28、性能。數目,改善軟件結構性能。經驗表明,設計良好的軟件結構通常頂層經驗表明,設計良好的軟件結構通常頂層扇出較高,中層扇出較低,底層又高扇入扇出較高,中層扇出較低,底層又高扇入到公共的實用模塊中去。到公共的實用模塊中去。 ZLL軟件工程軟件工程應追求與避免的程序結構應追求與避免的程序結構 應追求的結構應追求的結構應避免的結構應避免的結構8.4.1 啟發(fā)式設計策略ZLL軟件工程軟件工程8.4.1 啟發(fā)式設計策略3改造程序結構,使任一模塊的作用域在其控制域之內。改造程序結構,使任一模塊的作用域在其控制域之內。判定判定受受F中判定中判定的影響的影響ACFEGHDB違背第三條原則違背第三條原則滿足第三條
29、原則滿足第三條原則ADCEFHGB作用域與控制域作用域與控制域 ZLL軟件工程軟件工程8.4.1 啟發(fā)式設計策略啟發(fā)式設計策略4分析模塊之間的接口信息,降低界面分析模塊之間的接口信息,降低界面 的復雜性和冗余程度,提高協調性。的復雜性和冗余程度,提高協調性。 界面復雜是引起軟件錯誤的一個基本因素,界面復雜是引起軟件錯誤的一個基本因素,界面上傳遞的數據應盡可能簡單并與模塊界面上傳遞的數據應盡可能簡單并與模塊的功能相協調,界面不協調(即在同一個的功能相協調,界面不協調(即在同一個參數表內或以其他某種方式傳遞不甚相關參數表內或以其他某種方式傳遞不甚相關的一堆數據)本身就是模塊低內聚的表征。的一堆數據
30、)本身就是模塊低內聚的表征。ZLL軟件工程軟件工程8.4.1 啟發(fā)式設計策略啟發(fā)式設計策略5模塊功能應該可預言,避免對模塊施加模塊功能應該可預言,避免對模塊施加過多限制。過多限制。 模塊功能可預言指,只要模塊的輸入數模塊功能可預言指,只要模塊的輸入數據相同,其運行產生的輸出必然相同,據相同,其運行產生的輸出必然相同,也就是可以依據其輸入數據預測模塊的也就是可以依據其輸入數據預測模塊的輸出結果。此外,如果設計時對模塊中輸出結果。此外,如果設計時對模塊中局部數據的體積,控制流程的選擇及外局部數據的體積,控制流程的選擇及外部接口方式等諸因素限制過多,則以后部接口方式等諸因素限制過多,則以后為去掉這些
31、限制要增加維護開銷。為去掉這些限制要增加維護開銷。ZLL軟件工程軟件工程8.4.1 啟發(fā)式設計策略6. 改造程序結構,追求單入口單出口的模塊。改造程序結構,追求單入口單出口的模塊。7. 為滿足設計或可移植性的要求,把某些軟為滿足設計或可移植性的要求,把某些軟 件用包(件用包(package)的形式封裝起來。)的形式封裝起來。軟件設計常常附帶一些特殊限制,例如,要求軟件設計常常附帶一些特殊限制,例如,要求程序采用覆蓋技術。此時,根據模塊重要的程程序采用覆蓋技術。此時,根據模塊重要的程度、被訪問的頻率及兩次引用的間隔等因素對度、被訪問的頻率及兩次引用的間隔等因素對模塊分組。模塊分組。此 外 , 程 序 中 那 些 供 選 擇 的 或此 外 , 程 序 中 那 些 供 選 擇 的 或 “ 單 調單 調 ”(one shot)的模塊應單獨存在,以便高效)的模塊應單獨存在,以便高效地加載。地加載。ZLL軟件工程軟件工程輔助文檔輔助文檔無論是采用變換分析法還是事務分析法,獲得無論是采用變換分析法還是事務分析法,獲得程序結構后,必須開發(fā)一系列輔助文檔,作為程序結構后,必須開發(fā)一系列輔助文檔,作為軟件總體設計的組成部分。主要工作包括:軟件總體設計的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海洋氣象觀測數據的質量控制與保障考核試卷
- 罐頭食品企業(yè)環(huán)境保護與綠色生產考核試卷
- 煤炭市場結構優(yōu)化與產業(yè)發(fā)展考核試卷
- 煤炭洗選工藝設計與實踐考核試卷
- 吉林省遼源市第五中學2024-2025學年高三下期末質量檢查生物試題理試題含解析
- 山東省樂陵市花園鎮(zhèn)達標名校2025屆初三實驗班第一次質檢數學試題試卷含解析
- 江蘇省淮安市洪澤縣2024-2025學年初三下學期第二次模擬考試語文試題試卷含解析
- 內蒙古呼和浩特市2024-2025學年高三第二學期期終學習質量調研測試歷史試題含解析
- 吉林省長春市榆樹市2024-2025學年高三第五次模擬考試數學試題試卷含解析
- 西藏拉薩市墨竹工卡縣2025屆小升初全真模擬數學檢測卷含解析
- GB/T 44218-2024微型揚聲器測量方法
- (正式版)JB∕T 14666-2024 鋼質汽車轉向節(jié)臂鍛件 工藝規(guī)范
- 《無人機測繪技能訓練模塊》課件-模塊7:無人機航測影像獲取
- 人工髖關節(jié)置換隨訪資料庫模板
- (完整版)12123交管學法減分考試題及答案
- 腦干的解剖及臨床綜合征
- 人教版高一下學期期中考試數學試卷及答案解析(共五套)
- (高清版)JTG 3810-2017 公路工程建設項目造價文件管理導則
- FZ∕T 74001-2020 紡織品 針織運動護具
- 人體常見病 知到智慧樹網課答案
- 幼兒詩歌《家》課件
評論
0/150
提交評論