面向數(shù)據(jù)結構的分析與設計課件_第1頁
面向數(shù)據(jù)結構的分析與設計課件_第2頁
面向數(shù)據(jù)結構的分析與設計課件_第3頁
面向數(shù)據(jù)結構的分析與設計課件_第4頁
面向數(shù)據(jù)結構的分析與設計課件_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

軟件工程第6章面向數(shù)據(jù)結構的分析與設計面向數(shù)據(jù)結構的需求分析與設計典型方法有Jackson方法和Warnier方法主要特點:以信息對象及其操作為核心進行需求分析認為復合信息對象具有層次結構,并且可按順序、選擇、重復三種結構分解為成員信息對象提供由層次信息結構映射為程序結構的機制,從而為軟件設計奠定良好的基礎JSP:Jackson結構程序設計方法JSD:Jackson系統(tǒng)開發(fā)方法2/27內容摘要JSP方法JSD方法簡介小結3/27內容摘要JSP方法JSD方法簡介小結4/27JSP方法總結了COBOL事務處理程序中的開發(fā)方法而發(fā)展起來的,特點:重點不是自頂向下逐步求精,而是在數(shù)據(jù)結構基礎上進行構造根據(jù)輸入/輸出的數(shù)據(jù)結構建立程序結構目標:獲得簡單清晰的設計方案設計原則:使程序結構與問題結構(數(shù)據(jù)結構)相對應5/27數(shù)據(jù)結構和程序結構一般的數(shù)據(jù)處理系統(tǒng)處理的是具有層次結構的數(shù)據(jù),因而其問題結構可以用它所處理的數(shù)據(jù)結構來表示6/27數(shù)據(jù)結構與程序結構的表示JSP方法采用Jackson圖來表示數(shù)據(jù)結構和程序結構結構圖是一種從左到右閱讀的樹狀層次結構圖數(shù)據(jù)結構圖中方框表示數(shù)據(jù),程序結構圖中方框就表示模塊(過程或函數(shù))底部的葉子節(jié)點稱為基本元素在底部枝干以上的節(jié)點稱為結構元素三種元素類型:順序元素、選擇元素、重復元素7/27順序元素一個順序元素由一個或多個從左到右的元素組成每個組成的元素只出現(xiàn)一次8/27選擇元素選擇是“IfThenElse”或“Case”的結構,而且必須有兩個或多個元素使用選擇元素時根據(jù)指定的條件從這些子元素中選擇一個子元素供選擇的子元素用右上角標以小圓的矩形表示示例:左圖中A、B、C是D的可選項,而S是選擇條件如果需要一個“IfA=BThenXElsedonothing”那么需要加入一個空元素示例:右圖中空元素用一個標有連字符的矩形表示9/27重復元素重復元素僅由一個子元素構成,表示重復元素由子元素重復0次或多次組成子元素用右上角標以星號的矩形表示下圖表示元素D由元素A重復0次或多次組成,其中I是重復條件10/27結構正文的表示形式-1結構正文又稱偽碼,完全與結構圖相對應分為:順序結構正文、選擇結構正文、重復結構正文順序結構正文

DSeq

順序

A;元素D是由一個元素A B;跟隨一個元素B C;跟隨一個元素C組成

DEND元素D是元素A、元素B、元素C的序列11/27結構正文的表示形式-2選擇結構正文

DSelectcond1選擇

A元素D或是由一個元素A Orcond2 B或是由一個元素B Orcond3 C或是由一個元素C組成

DENDcond1、cond2、cond3分別是選擇A,B,C的條件重復結構正文

DIteruntilcond

重復

A;元素D是由1個或多個元素A組成。

DEND元素D是元素A的重復 或DIterwhilecond A;元素D是由0至多個元素A組成

DENDcond為循環(huán)條件12/27示例:打印表格程序的輸出數(shù)據(jù)結構和對應的程序結構13/27JSP方法的分析和設計步驟-1例6.2:一個正文文件由若干個記錄組成,每個記錄是一個字符串,要求統(tǒng)計每個記錄中空格個數(shù),以及文件中空格的總數(shù)。要求輸出的格式是:每復制一行輸入字符串后,另起一行輸出該字符串中的空格數(shù),最后輸出文件空格的總數(shù)14/27JSP方法的分析和設計步驟-2第1步.分析并確定輸入和輸出數(shù)據(jù)結構的邏輯結構,并用Jackson圖畫出15/27JSP方法的分析和設計步驟-3第2步.找出輸入數(shù)據(jù)結構與輸出數(shù)據(jù)結構中有對應關系的數(shù)據(jù)元素有對應關系是指有直接因果關系,即在程序中可以同時處理的數(shù)據(jù)元素對于表示“重復”的數(shù)據(jù)元素,只有其重復次數(shù)和次序都相同時才有對應關系輸入/輸出數(shù)據(jù)結構最高層次的兩個數(shù)據(jù)元素總是有對應關系的16/27JSP方法的分析和設計步驟-4第3步.從描述數(shù)據(jù)結構的Jackson圖導出描述程序結構的Jackson圖,導出規(guī)則:有對應關系的數(shù)據(jù)元素,按照它們在數(shù)據(jù)結構圖中的層次在程序結構圖的相應層次上畫一個處理框(如果它們在輸入和輸出圖中的層次不同,則程序結構圖中處理框層次與較低的那個對應為輸入數(shù)據(jù)結構圖中剩余的每個數(shù)據(jù)元素,在程序結構圖的相應層次上畫一個處理框,在模塊名稱上增加“分析”或“處理”或取一個具有實際含義的名稱為輸出數(shù)據(jù)結構圖中剩余的每個數(shù)據(jù)元素,在程序結構圖的相應層次上畫上一個處理框17/27JSP方法的分析和設計步驟-5程序結構圖導出結果18/27JSP方法的分析和設計步驟-6第4步.列出所有操作和條件,并將它們分配到程序結構圖的適當位置首先從輸出操作開始,再回到輸入操作加入必須的與條件有關的操作最后把每個操作都分配到程序結構中去19/27JSP方法的分析和設計步驟-7設變量sum存放一行字符串中的空格數(shù);totalsum存放空格總數(shù);pointer用來指示當前分析的字符在字符串中的位置,可列出其所有操作,并對其編號如下:①停止②打開文件③關閉文件④打印字符串⑤打印空格數(shù)⑥打印空格總數(shù)⑦sum:=sum+1⑧totalsum:=totalsum+1⑨讀入字符串⑩

sum:=013121113totalsum:=0pointer:=1pointer:=pointer+1條件列表如下:I(1):文件結束I(2):字符串結束S(3):字符是空格將條件與相應的循環(huán)條件關聯(lián),并將①~操作按次序與相當?shù)哪K進行關聯(lián),按從左至右決定先后順序,關聯(lián)后的程序結構圖1312111320/27JSP方法的分析和設計步驟-8第5步.把帶有操作的程序結構圖轉換成結構正文,同時加入選擇及迭代條件統(tǒng)計空格

seq打開文件讀入字符串totalsum:=0程序體

iteruntil文件結束

處理字符串

seq

印字符串

seq

打印字符串

印字符串

endsum:=0pointer:=1

分析字符串

iteruntil字符串結束

分析字符

select字符是空格

處理空格

seqsum:=sum+1pointer:=pointer+1

處理空格

end

分析字符

or字符不是空格

處理非空格

seqpointer:=pointer+1

處理非空格

end

分析字符

end

分析字符串

end

印空格數(shù)

seq

打印空格數(shù)

印空格數(shù)

endtotalsum:=totalsum+1

讀入字符串

處理字符串

end程序體

end印空格總數(shù)

seq

打印空格總數(shù)印空格總數(shù)

end關閉文件停止統(tǒng)計空格

end21/27JSP方法的特點簡單、易學、形象直觀、可讀性好便于表示層次結構適用于小型數(shù)據(jù)處理系統(tǒng)22/27內容摘要JSP方法JSD方法簡介小結23/27JSD方法JSP廣泛使用十多年后,Jackson把它進行了擴充,不再局限于中小規(guī)模范圍的問題及順序范圍,新的開發(fā)方法稱為JSDJSD覆蓋了整個系統(tǒng)的分析到實現(xiàn)JSD的本質:先建立一個現(xiàn)實模型,然后加入功能性處理,最后階段邏輯系統(tǒng)才轉換為實際設計24/27JSD方法步驟標識實體與行為:建立現(xiàn)實的模型,列出與系統(tǒng)有關的實體表及活動表生成實體結構圖:分析實體表中實體之間的關系,形成實體結構圖創(chuàng)造軟件系統(tǒng)模型:根據(jù)現(xiàn)實世界,對實體與行為的組合建立進程模型擴充功能性過程:說明系統(tǒng)輸出的功能,必要時在規(guī)格說明中加入附加的處理施加時間控制:開發(fā)者考慮進程調度的某些特征,這些特征可能影響系統(tǒng)功能所輸出的結

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論