版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程軟件工程 典型方法有典型方法有Jackson方法和方法和Warnier方法方法 主要特點(diǎn):主要特點(diǎn): 以信息對(duì)象及其操作為核心進(jìn)行需求分析 認(rèn)為復(fù)合信息對(duì)象具有層次結(jié)構(gòu),并且可按順序、選擇、重復(fù)三種結(jié)構(gòu)分解為成員信息對(duì)象 提供由層次信息結(jié)構(gòu)映射為程序結(jié)構(gòu)的機(jī)制,從而為軟件設(shè)計(jì)奠定良好的基礎(chǔ) JSP:Jackson結(jié)構(gòu)程序設(shè)計(jì)方法結(jié)構(gòu)程序設(shè)計(jì)方法 JSD:Jackson系統(tǒng)開發(fā)方法系統(tǒng)開發(fā)方法2/27 JSP方法方法 JSD方法簡(jiǎn)介方法簡(jiǎn)介 小結(jié)小結(jié)3/27 JSD方法簡(jiǎn)介方法簡(jiǎn)介 小結(jié)小結(jié)4/27 總結(jié)了總結(jié)了COBOL事務(wù)處理程序中的開發(fā)方事務(wù)處理程序中的開發(fā)方法而發(fā)展起來的,特點(diǎn):
2、法而發(fā)展起來的,特點(diǎn): 重點(diǎn)不是自頂向下逐步求精,而是在數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)上進(jìn)行構(gòu)造 根據(jù)輸入/輸出的數(shù)據(jù)結(jié)構(gòu)建立程序結(jié)構(gòu) 目標(biāo):獲得簡(jiǎn)單清晰的設(shè)計(jì)方案目標(biāo):獲得簡(jiǎn)單清晰的設(shè)計(jì)方案 設(shè)計(jì)原則:使程序結(jié)構(gòu)與問題結(jié)構(gòu)設(shè)計(jì)原則:使程序結(jié)構(gòu)與問題結(jié)構(gòu)(數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu)結(jié)構(gòu))相對(duì)應(yīng)相對(duì)應(yīng)5/27 一般的數(shù)據(jù)處理系統(tǒng)處理的是具有層次結(jié)一般的數(shù)據(jù)處理系統(tǒng)處理的是具有層次結(jié)構(gòu)的數(shù)據(jù),因而其問題結(jié)構(gòu)可以用它所處構(gòu)的數(shù)據(jù),因而其問題結(jié)構(gòu)可以用它所處理的數(shù)據(jù)結(jié)構(gòu)來表示理的數(shù)據(jù)結(jié)構(gòu)來表示6/27 JSP方法采用方法采用Jackson圖來表示數(shù)據(jù)結(jié)圖來表示數(shù)據(jù)結(jié)構(gòu)和程序結(jié)構(gòu)構(gòu)和程序結(jié)構(gòu) 結(jié)構(gòu)圖是一種從左到右閱讀的樹狀層次結(jié)構(gòu)圖是
3、一種從左到右閱讀的樹狀層次結(jié)構(gòu)圖結(jié)構(gòu)圖 數(shù)據(jù)結(jié)構(gòu)圖中方框表示數(shù)據(jù),程序結(jié)構(gòu)圖中方框就表示模塊(過程或函數(shù)) 底部的葉子節(jié)點(diǎn)稱為基本元素 在底部枝干以上的節(jié)點(diǎn)稱為結(jié)構(gòu)元素 三種元素類型:順序元素、選擇元素、重復(fù)元素7/27 一個(gè)順序元素由一個(gè)或多個(gè)從左到右的一個(gè)順序元素由一個(gè)或多個(gè)從左到右的元素組成元素組成 每個(gè)組成的元素只出現(xiàn)一次每個(gè)組成的元素只出現(xiàn)一次8/27 選擇是選擇是“If Then Else”或或“Case”的結(jié)構(gòu),而且的結(jié)構(gòu),而且必須有兩個(gè)或多個(gè)元素必須有兩個(gè)或多個(gè)元素 使用選擇元素時(shí)根據(jù)指定的條件從這些子元素中使用選擇元素時(shí)根據(jù)指定的條件從這些子元素中選擇一個(gè)子元素選擇一個(gè)子元素
4、 供選擇的子元素用右上角標(biāo)以小圓的矩形表示供選擇的子元素用右上角標(biāo)以小圓的矩形表示 示例:左圖中A、B、C是D的可選項(xiàng),而S是選擇條件 如果需要一個(gè)如果需要一個(gè)“If A=B Then X Else do nothing”那么需要加入一個(gè)空元素那么需要加入一個(gè)空元素 示例:右圖 中空元素用一個(gè)標(biāo)有連字符的矩形表示9/27 重復(fù)元素僅由一個(gè)子元素構(gòu)成,表示重重復(fù)元素僅由一個(gè)子元素構(gòu)成,表示重復(fù)元素由子元素重復(fù)復(fù)元素由子元素重復(fù)0次或多次組成次或多次組成 子元素用右上角標(biāo)以星號(hào)的矩形表示子元素用右上角標(biāo)以星號(hào)的矩形表示 下圖表示元素下圖表示元素D由元素由元素A重復(fù)重復(fù)0次或多次次或多次組成,其中組
5、成,其中I是重復(fù)條件是重復(fù)條件10/27 結(jié)構(gòu)正文又稱偽碼,完全與結(jié)構(gòu)圖相對(duì)應(yīng)結(jié)構(gòu)正文又稱偽碼,完全與結(jié)構(gòu)圖相對(duì)應(yīng) 分為:順序結(jié)構(gòu)正文、選擇結(jié)構(gòu)正文、重分為:順序結(jié)構(gòu)正文、選擇結(jié)構(gòu)正文、重復(fù)結(jié)構(gòu)正文復(fù)結(jié)構(gòu)正文 順序結(jié)構(gòu)正文順序結(jié)構(gòu)正文D Seq 順序順序 A; 元素元素D是由一個(gè)元素是由一個(gè)元素A B; 跟隨一個(gè)元素跟隨一個(gè)元素B C; 跟隨一個(gè)元素跟隨一個(gè)元素C組成組成D END 元素元素D是元素是元素A、元素、元素B、元素、元素C的序列的序列11/27選擇結(jié)構(gòu)正文選擇結(jié)構(gòu)正文D Select cond1 選擇選擇 A 元素元素D或是由一個(gè)元素或是由一個(gè)元素A Or cond2 B 或是由一
6、個(gè)元素或是由一個(gè)元素B Or cond3 C 或是由一個(gè)元素或是由一個(gè)元素C組成組成D END cond1、cond2、cond3分別是選擇分別是選擇A,B,C的條件的條件重復(fù)結(jié)構(gòu)正文重復(fù)結(jié)構(gòu)正文D Iter until cond 重復(fù)重復(fù) A; 元素元素D是由是由1個(gè)或多個(gè)元素個(gè)或多個(gè)元素A組成。組成。D END 元素元素D 是元素是元素A的重復(fù)的重復(fù)或或 D Iter while cond A; 元素元素D是由是由0至多個(gè)元素至多個(gè)元素A組成組成D END cond為循環(huán)條件為循環(huán)條件12/2713/27例例6.2:一個(gè)正文文件由若干個(gè)記錄組成,:一個(gè)正文文件由若干個(gè)記錄組成,每個(gè)記錄是一
7、個(gè)字符串,要求統(tǒng)計(jì)每個(gè)記每個(gè)記錄是一個(gè)字符串,要求統(tǒng)計(jì)每個(gè)記錄中空格個(gè)數(shù),以及文件中空格的總數(shù)。錄中空格個(gè)數(shù),以及文件中空格的總數(shù)。要求輸出的格式是:每復(fù)制一行輸入字符要求輸出的格式是:每復(fù)制一行輸入字符串后,另起一行輸出該字符串中的空格數(shù),串后,另起一行輸出該字符串中的空格數(shù),最后輸出文件空格的總數(shù)最后輸出文件空格的總數(shù)14/27 第第1步步.分析并確定輸入和輸出數(shù)據(jù)結(jié)構(gòu)的分析并確定輸入和輸出數(shù)據(jù)結(jié)構(gòu)的邏輯結(jié)構(gòu),并用邏輯結(jié)構(gòu),并用Jackson圖畫出圖畫出15/27 第第2步步.找出輸入數(shù)據(jù)結(jié)構(gòu)與輸出數(shù)據(jù)結(jié)構(gòu)找出輸入數(shù)據(jù)結(jié)構(gòu)與輸出數(shù)據(jù)結(jié)構(gòu)中有對(duì)應(yīng)關(guān)系的數(shù)據(jù)元素中有對(duì)應(yīng)關(guān)系的數(shù)據(jù)元素 有對(duì)應(yīng)關(guān)
8、系是指有直接因果關(guān)系,即在程序中可以同時(shí)處理的數(shù)據(jù)元素 對(duì)于表示“重復(fù)”的數(shù)據(jù)元素,只有其重復(fù)次數(shù)和次序都相同時(shí)才有對(duì)應(yīng)關(guān)系 輸入/輸出數(shù)據(jù)結(jié)構(gòu)最高層次的兩個(gè)數(shù)據(jù)元素總是有對(duì)應(yīng)關(guān)系的16/27 第第3步步.從描述數(shù)據(jù)結(jié)構(gòu)的從描述數(shù)據(jù)結(jié)構(gòu)的Jackson圖導(dǎo)出圖導(dǎo)出描述程序結(jié)構(gòu)的描述程序結(jié)構(gòu)的Jackson圖,導(dǎo)出規(guī)則:圖,導(dǎo)出規(guī)則: 有對(duì)應(yīng)關(guān)系的數(shù)據(jù)元素,按照它們?cè)跀?shù)據(jù)結(jié)構(gòu)圖中的層次在程序結(jié)構(gòu)圖的相應(yīng)層次上畫一個(gè)處理框(如果它們?cè)谳斎牒洼敵鰣D中的層次不同,則程序結(jié)構(gòu)圖中處理框?qū)哟闻c較低的那個(gè)對(duì)應(yīng) 為輸入數(shù)據(jù)結(jié)構(gòu)圖中剩余的每個(gè)數(shù)據(jù)元素,在程序結(jié)構(gòu)圖的相應(yīng)層次上畫一個(gè)處理框, 在模塊名稱上增加“分
9、析”或“處理”或取一個(gè)具有實(shí)際含義的名稱 為輸出數(shù)據(jù)結(jié)構(gòu)圖中剩余的每個(gè)數(shù)據(jù)元素,在程序結(jié)構(gòu)圖的相應(yīng)層次上畫上一個(gè)處理框17/27 程序結(jié)構(gòu)圖導(dǎo)出結(jié)果程序結(jié)構(gòu)圖導(dǎo)出結(jié)果18/27 第第4步步.列出所有操作和條件,并將它列出所有操作和條件,并將它們分配到程序結(jié)構(gòu)圖的適當(dāng)位置們分配到程序結(jié)構(gòu)圖的適當(dāng)位置 首先從輸出操作開始,再回到輸入操作 加入必須的與條件有關(guān)的操作 最后把每個(gè)操作都分配到程序結(jié)構(gòu)中去19/27設(shè)變量設(shè)變量sum存放一行字符串中的空格數(shù);存放一行字符串中的空格數(shù);totalsum存放空格總數(shù);存放空格總數(shù);pointer用來指示當(dāng)前分析的字符用來指示當(dāng)前分析的字符在字符串中的位置,可
10、列出其所有操作,并對(duì)其在字符串中的位置,可列出其所有操作,并對(duì)其編號(hào)如下:編號(hào)如下:停止停止 打開文件打開文件 關(guān)閉文件關(guān)閉文件 打印字符串打印字符串 打印空格數(shù)打印空格數(shù) 打印空格總數(shù)打印空格總數(shù) sum:=sum+1 totalsum:=totalsum+1 讀入字符串讀入字符串 sum:=013121113 totalsum:=0 pointer:=1 pointer:=pointer+1條件列表如下:條件列表如下:I(1):文件結(jié)束:文件結(jié)束I(2):字符串結(jié)束:字符串結(jié)束S(3):字符是空格:字符是空格將條件與相應(yīng)的循環(huán)條件關(guān)聯(lián),并將將條件與相應(yīng)的循環(huán)條件關(guān)聯(lián),并將 操作操作按次序與
11、相當(dāng)?shù)哪K進(jìn)行關(guān)聯(lián),按從左至右決定按次序與相當(dāng)?shù)哪K進(jìn)行關(guān)聯(lián),按從左至右決定先后順序,關(guān)聯(lián)后的程序結(jié)構(gòu)圖先后順序,關(guān)聯(lián)后的程序結(jié)構(gòu)圖 1312111320/27 第第5步步.把帶有把帶有操作的程序結(jié)操作的程序結(jié)構(gòu)圖轉(zhuǎn)換成結(jié)構(gòu)圖轉(zhuǎn)換成結(jié)構(gòu)正文,同時(shí)構(gòu)正文,同時(shí)加入選擇及迭加入選擇及迭代條件代條件統(tǒng)計(jì)空格統(tǒng)計(jì)空格 seq打開文件打開文件讀入字符串讀入字符串totalsum := 0程序體程序體 iter until 文件結(jié)束文件結(jié)束 處理字符串處理字符串 seq 印字符串印字符串 seq 打印字符串打印字符串 印字符串印字符串 end sum := 0 pointer := 1 分析字符串分析字符
12、串 iter until 字符串結(jié)束字符串結(jié)束 分析字符分析字符 select 字符是空格字符是空格 處理空格處理空格 seq sum := sum + 1 pointer := pointer + 1 處理空格處理空格 end 分析字符分析字符 or 字符不是空格字符不是空格 處理非空格處理非空格 seq pointer := pointer + 1 處理非空格處理非空格 end 分析字符分析字符 end 分析字符串分析字符串 end 印空格數(shù)印空格數(shù) seq 打印空格數(shù)打印空格數(shù) 印空格數(shù)印空格數(shù) end totalsum := totalsum + 1 讀入字符串讀入字符串 處理字符串處
13、理字符串 end程序體程序體 end印空格總數(shù)印空格總數(shù) seq 打印空格總數(shù)打印空格總數(shù)印空格總數(shù)印空格總數(shù) end關(guān)閉文件關(guān)閉文件停止停止統(tǒng)計(jì)空格統(tǒng)計(jì)空格 end21/27 簡(jiǎn)單、易學(xué)、形象直觀、可讀性好簡(jiǎn)單、易學(xué)、形象直觀、可讀性好 便于表示層次結(jié)構(gòu)便于表示層次結(jié)構(gòu) 適用于小型數(shù)據(jù)處理系統(tǒng)適用于小型數(shù)據(jù)處理系統(tǒng)22/27 JSP方法方法 小結(jié)小結(jié)23/27 JSP廣泛使用十多年后,廣泛使用十多年后,Jackson把它進(jìn)把它進(jìn)行了擴(kuò)充,不再局限于中小規(guī)模范圍的問行了擴(kuò)充,不再局限于中小規(guī)模范圍的問題及順序范圍,新的開發(fā)方法稱為題及順序范圍,新的開發(fā)方法稱為JSD JSD覆蓋了整個(gè)系統(tǒng)的分析
14、到實(shí)現(xiàn)覆蓋了整個(gè)系統(tǒng)的分析到實(shí)現(xiàn) JSD的本質(zhì):先建立一個(gè)現(xiàn)實(shí)模型,然后的本質(zhì):先建立一個(gè)現(xiàn)實(shí)模型,然后加入功能性處理,最后階段邏輯系統(tǒng)才轉(zhuǎn)加入功能性處理,最后階段邏輯系統(tǒng)才轉(zhuǎn)換為實(shí)際設(shè)計(jì)換為實(shí)際設(shè)計(jì)24/27標(biāo)識(shí)實(shí)體與行為:建立現(xiàn)實(shí)的模型,列出與系統(tǒng)有關(guān)的實(shí)標(biāo)識(shí)實(shí)體與行為:建立現(xiàn)實(shí)的模型,列出與系統(tǒng)有關(guān)的實(shí)體表及活動(dòng)表體表及活動(dòng)表生成實(shí)體結(jié)構(gòu)圖:分析實(shí)體表中實(shí)體之間的關(guān)系,形成實(shí)生成實(shí)體結(jié)構(gòu)圖:分析實(shí)體表中實(shí)體之間的關(guān)系,形成實(shí)體結(jié)構(gòu)圖體結(jié)構(gòu)圖創(chuàng)造軟件系統(tǒng)模型:根據(jù)現(xiàn)實(shí)世界,對(duì)實(shí)體與行為的組合創(chuàng)造軟件系統(tǒng)模型:根據(jù)現(xiàn)實(shí)世界,對(duì)實(shí)體與行為的組合建立進(jìn)程模型建立進(jìn)程模型擴(kuò)充功能性過程:說明系統(tǒng)輸出的功能,必要時(shí)在規(guī)格說擴(kuò)充功能性過程:說明系統(tǒng)輸出的功能,必要時(shí)在規(guī)格說明中加入附加的處理明中加入附加的處理施加時(shí)間控制:開發(fā)者考慮進(jìn)程調(diào)度的某些特征,這些特施加時(shí)間控制:開發(fā)者考慮進(jìn)程調(diào)度的某些特征,這些特征可能影響系統(tǒng)功能所輸出的結(jié)果的正確性及時(shí)間關(guān)系征可能影響系統(tǒng)功能所輸出的結(jié)果的正確性及時(shí)間關(guān)系實(shí)現(xiàn):開發(fā)者考慮運(yùn)行系統(tǒng)的軟硬件方面的問題,采用變實(shí)現(xiàn):開發(fā)者考慮運(yùn)行系統(tǒng)的軟硬件方面的問題,采用變換技術(shù)、調(diào)度技術(shù)、數(shù)據(jù)庫定義技術(shù)等,以使系統(tǒng)能有效換技術(shù)、調(diào)度技術(shù)、數(shù)據(jù)庫定義技術(shù)等,以使系統(tǒng)能有效地運(yùn)行地運(yùn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 管線改造合同范本
- 海淀區(qū)農(nóng)村集體經(jīng)濟(jì)合同管理辦法
- 合同裁判共同規(guī)則
- 角膜炎的治療與護(hù)理
- 2024-2025學(xué)年新教材高中地理第五章自然環(huán)境的整體性與差異性單元評(píng)價(jià)含解析湘教版選擇性必修一
- 2024房產(chǎn)抵押貸款的合同協(xié)議書
- 英文調(diào)查報(bào)告(共16篇)
- 精準(zhǔn)營銷策略15篇
- 無人機(jī)技術(shù)的應(yīng)用前景
- 2024店面租賃合同模板「標(biāo)準(zhǔn)版」
- 商務(wù)部績效考核表
- 無犯罪記錄證明書申請(qǐng)表模板(通用)
- 鋼結(jié)構(gòu)可行性分析報(bào)告
- 高中地理 選必一《自然環(huán)境的整體性》第二課時(shí)-教學(xué)設(shè)計(jì)
- 我的故鄉(xiāng)-德江課件
- 《Treasure Island金銀島》課外閱讀教學(xué)中的主題意義探究
- 《紀(jì)念白求恩》朱德《紀(jì)念白求恩同志》教科書原文版
- 四大穿刺知識(shí)點(diǎn)考試試題及答案
- DB11-T 1796-2020文物建筑三維信息采集技術(shù)規(guī)程
- DB11-T 513-2018 綠色施工管理規(guī)程
- 腰椎間盤突出癥的護(hù)理查房課件(PPT 27頁)
評(píng)論
0/150
提交評(píng)論