




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、軟件工程學學概述什么叫軟件件危機?軟軟件危機的的表現(xiàn)有哪哪些?產生生軟件危機機的原因是是什么? 答:11.軟件危危機是指在在計算機軟軟件的開發(fā)發(fā)和維護過過程中所遇遇到的一系系列嚴重問問題。 2.aa對軟件件開發(fā)成本本和進度的的估算很不不準確。b.用戶對對“已完成的的”軟件系統(tǒng)統(tǒng)不滿意的的現(xiàn)象經(jīng)常常發(fā)生。c.軟件產產品的質量量往往靠不不住。d.軟件常常常是不可可維護的。e.軟件通通常沒有適適當?shù)奈臋n檔資料。f.軟件成成本在計算算機系統(tǒng)總總成本中所所占的比例例逐年上升升。g.軟件開開發(fā)生產率率提高的速速度,遠遠遠跟不上計計算機應用用迅速普及及深入的趨趨勢。 3. 客觀:軟軟件本身特特點邏輯部件:缺
2、乏“可見性”;硬件常常有通用部部件規(guī)模龐大:管理和控控制開發(fā)過過程困難主觀:不正正確的開發(fā)發(fā)方法忽視需求分分析錯誤認為:軟件開發(fā)發(fā)=程序編寫寫輕視軟件維維護什么是軟件件工程?它它有哪些本本質特性?怎么樣用用軟件工程程消除軟件件危機? 答:1. 用工程、科學和數(shù)數(shù)學的原則則與方法研研制、維護護計算機軟軟件的有關關技術及管管理方法。 2. a. 軟件工工程關注于于大型程序序的構造b. 軟件件工程的中中心課題是是控制復雜雜性c. 軟件件經(jīng)常變化化d. 開發(fā)發(fā)軟件的效效率非常重重要e. 和諧諧地合作是是開發(fā)軟件件的關鍵f. 軟件件必須有效效地支持它它的用戶g. 在軟軟件工程領領域中是由由具有一種種文化
3、背景景的人替具具有另一種種文化背景景的人創(chuàng)造造產品3.a 對軟件有有一個正確確的認識:軟件程序序方法規(guī)則數(shù)數(shù)據(jù)文檔檔軟件開發(fā)應應該組織良良好、管理理嚴密、協(xié)協(xié)調配合推廣使用成成功的技術術和方法應用開發(fā)和和使用好的的軟件工具具b. 為了消除除軟件危機機,既要有有技術措施施(方法和和工具),又又要有必要要的組織管管理措施。軟件工程程正是從管管理和技術術兩方面研研究如何更更好地開發(fā)發(fā)和維護計計算機軟件件的一門新新興學科什么是軟件件工程三要要素? 它它們之間是是什么關系系?軟件工工程的基本本原理是什什么?答:1.工工具,方法法,過程 2.方法是完完成軟件開開發(fā)的各項項任務的技技術方法,回回答“怎樣做”
4、的問題;工具是運運用方法而而提供的自自動或半自自動的軟件件工程支撐撐環(huán)境;過過程是為了了獲得高質質量的軟件件所需完成成的一系列列任務的框框架,它規(guī)規(guī)定了完成成各項任務務的工作步步驟。 3. (1)嚴嚴格按照計計劃進行管管理;(2)堅持持進行階段段評審;(3)實行行嚴格的產產品控制;(4)采用用現(xiàn)代化的的程序設計計技術;(5)結果果要能清晰晰地審查;(6)開發(fā)發(fā)小組成員員的素質要要好,數(shù)量量卻不易多多;(7)要承承認不斷改改善軟件工工程實踐的的必要性。說明軟件生生命周期的的劃分為幾幾個階段,每每個階段的的基本任務務?瀑布模模型、原型型模型、螺螺旋模型、增量模型型優(yōu)缺點以以及適用范范圍?答:1.(
5、11).問題題定義:問問題定義階階段必須回回答的關鍵鍵問題是:“要解決的的問題是什什么”.可行性研研究:該階階段要回答答的關鍵問問題是:“上一個階階段所確定定的問題是是否有行得得通的解決決辦法”。需求分析:a.這個階階段的任務務仍然不是是具體地解解決客戶的的問題,而而是準確地地回答“目標系統(tǒng)統(tǒng)必須做什什么”這個問題題。b.這個階階段的另外外一項重要要任務,是是用正式文文檔準確地地記錄對目目標系統(tǒng)的的需求,這這份文檔通通常稱為規(guī)規(guī)格說明(speccificcatioon)。概要設計:a.這個階階段的基本本任務是,概概括地回答答“怎樣實現(xiàn)現(xiàn)目標系統(tǒng)統(tǒng)?”b.概要設設計的另一一項主要任任務就是設設計
6、程序的的體系結構構,也就是是確定程序序由哪些模模塊組成以以及模塊間間的關系詳細設計a.詳細設設計階段的的任務就是是把解法具具體化,也也就是回答答“應該怎樣樣具體地實實現(xiàn)這個系系統(tǒng)”這個關鍵鍵問題。b.這個階階段的任務務還不是編編寫程序,而而是設計出出程序的詳詳細規(guī)格說說明編碼和單元元測試:這這個階段的的關鍵任務務是寫出正正確的容易易理解、容容易維護的的程序模塊塊。綜合測試a.這個階階段的關鍵鍵任務是通通過各種類類型的測試試(及相應的的調試)使軟件達達到預定的的要求。軟件維護a.維護階階段的關鍵鍵任務是,通通過各種必必要的維護護活動使系系統(tǒng)持久地地滿足用戶戶的需要b.通常有有四類維護護活動:改改
7、正性維護護、適應性性維護、完完善性維護護、預防性性維護2.(1)瀑瀑布模型: 優(yōu)點:可可強迫開發(fā)發(fā)人員采用用規(guī)范的方方法;嚴格地規(guī)定定了每個階階段必須提提交的文檔檔;要求每個階階段交出的的所有產品品都必須經(jīng)經(jīng)過質量保保證小組的的仔細驗證證。 缺點:“瀑布模型型是由文檔檔驅動的”,缺乏靈靈活性:僅通過靜態(tài)態(tài)的規(guī)格說說明很難全全面正確地地認識動態(tài)態(tài)的軟件產產品。要求用戶不不經(jīng)過實踐踐就提出完完整準確的的需求是不不切實際的的。 適用范范圍:由于于瀑布模型型完全依賴賴于書面的的規(guī)格說明明,很可能能導致最終終開發(fā)出的的軟件不能能真正滿足足用戶的需需要。(2)原型型模型: 優(yōu)點:克克服瀑布模模型的缺點點,
8、減少由由于軟件需需求不明確確帶來的開開發(fā)風險;有助于獲獲取用戶需需求,加強強對需求的的理解盡早發(fā)現(xiàn)軟軟件中的錯錯誤支持需求的的動態(tài)變化化缺點:所選選用的開發(fā)發(fā)技術和工工具不一定定符合主流流的發(fā)展; 快速建立起起來的系統(tǒng)統(tǒng)結構加上上連續(xù)的修修改可能會會導致產品品質量低下下; 適適用范圍:適合于需需求動態(tài)變變化,事先先難以確定定系統(tǒng)(3)增量量模型:優(yōu)點:能在在較短的時時間內向用用戶提交可可完成部分分功能的產產品逐步增加產產品功能可可以使用戶戶有較充裕裕的時間學學習和適應應缺點:在把把每個新的的增量構件件集成到現(xiàn)現(xiàn)有的軟件件體系結構構中時,必必須不破壞壞原來已經(jīng)經(jīng)開發(fā)的產產品軟件體系結結構必須是是
9、開放的本身具有矛矛盾性*面要求開開發(fā)人員把把軟件看作作一個整體體*另一方面面要求開發(fā)發(fā)人員把軟軟件看作構構件序列,構構件間彼此此獨立(4)螺旋旋模型: 優(yōu)點:有有助于獲取取用戶需求求,加強對對需求的理理解 盡早發(fā)發(fā)現(xiàn)軟件中中的錯誤支持需求的的動態(tài)變化化支持風險分分析,可降降低或者消消除軟件開開發(fā)風險 缺點:過多的迭迭代次數(shù)會會增加開發(fā)發(fā)成本,延延遲提交時時間只適合大型型軟件項目目的開發(fā),否否則,每個個階段的風風險分析將將占用很大大一部分資資源,增加加成本對開發(fā)人員員的風險分分析能力是是極大的考考驗適用范圍:適合于需需求動態(tài)變變化,事先先難以確定定并且開發(fā)發(fā)風險較大大的系統(tǒng)可行性分析析1. 可行
10、行性分析的的目的?.可行性研研究的步驟驟有哪些?從哪些方方面進行可可行性研究究?答:1. 用最小的的代價,在在盡可能短短的時間內內確定問題題是否能夠夠解決2. (11)復查系系統(tǒng)規(guī)模和和目標 (2)研究究目前正在在使用的系系統(tǒng)(3)導出出新系統(tǒng)的的高層邏輯輯模型 ( 4) 進一步定定義問題 (5)55導出和評評價供選擇擇的解法(6)推薦薦行動方針針(7) 草草擬開發(fā)計計劃 (8)書寫寫文檔提交交審查3. 技術術可行性:使用現(xiàn)有有的技術能能實現(xiàn)這個個系統(tǒng)經(jīng)濟可行性性:系統(tǒng)的的經(jīng)濟效益益能否超過過開發(fā)成本本操作可行性性:系統(tǒng)的的操作方式式在這個用用戶組織內內是否行得得通 常用的成成本估算方方法有哪
11、些些?答:代碼行行技術,任任務分解技技術,自動動估計成本本技術 什么是是數(shù)據(jù)流圖圖?其作用用是什么?其中的基基本符號各各表示什么么含義?畫畫數(shù)據(jù)流圖圖的原則有有哪些? 答答:1. 軟件系統(tǒng)統(tǒng)邏輯模型型的一種圖圖形。 數(shù)據(jù)流圖圖(DFDD)是一種種圖形化技技術,它描描繪信息流流和數(shù)據(jù)從從輸入移動動到輸出的的過程中所所經(jīng)受的變變換。在數(shù)據(jù)流圖圖中沒有任任何具體的的物理部件件,它只是是描繪數(shù)據(jù)據(jù)在軟件中中流動和被被處理的邏邏輯過程。數(shù)據(jù)流圖是是系統(tǒng)邏輯輯功能的圖圖形表示,即即使不是專專業(yè)的計算算機技術人人員也容易易理解它,因因此是分析析員與用戶戶之間極好好的通信工工具。 數(shù)據(jù)流流圖有4種種基本符號號
12、:正方形形表示數(shù)據(jù)據(jù)的源點或或終點;圓圓角矩形代代表變換數(shù)數(shù)據(jù)的處理理;開口矩矩形代表數(shù)數(shù)據(jù)存儲;箭頭表示示數(shù)據(jù)流。 畫數(shù)據(jù)據(jù)流圖的原原則有:11 確定系系統(tǒng)的源點點和終點2 確定系系統(tǒng)的輸入入和輸出數(shù)數(shù)據(jù)流的關關系3 保持分分解前后輸輸入/輸出數(shù)據(jù)據(jù)流必須相相同(父子平衡衡)4 盡量簡簡化加工之之間的聯(lián)系系5 用“自自頂向下”方法,逐逐層畫出數(shù)數(shù)據(jù)流圖,每每張數(shù)據(jù)流流圖 中加工工(處理)的個數(shù)不不能超過99個(7加減2) 66 注意分分解速度(一般每分分解一層增增加2-77個加工)7 在畫數(shù)數(shù)據(jù)流圖時時應避免線線條交叉,必必要時可使使用重復 的外部部項(源點或終終點)或數(shù)據(jù)存存儲符號8 適當
13、的的命名,加加工處理要要編號什么是數(shù)據(jù)據(jù)字典?其其作用是什什么?包含含哪些元素素?數(shù)據(jù)字典是是關于數(shù)據(jù)據(jù)的信息的的集合,也也就是對數(shù)數(shù)據(jù)流圖中中包含的所所有元素的的定義的集集合。數(shù)據(jù)字典的的作用是在在軟件分析析和設計的的過稱中給給人提供關關于數(shù)據(jù)的的描述信息息。 數(shù)據(jù)據(jù)字典應該該由對下列列4類元素的的定義組成成: (1) 數(shù)據(jù)流流 (22) 數(shù)據(jù)據(jù)流分量(即數(shù)據(jù)元元素) (33) 數(shù)據(jù)據(jù)存儲 (44) 處理理 考考察重點:系統(tǒng)流程程圖、數(shù)據(jù)據(jù)流圖、數(shù)數(shù)據(jù)字典(應應用題) 第四章 總體設計計一需求分分析的定義義、任務和和目的是什什么?定義:為了了開發(fā)出真真正滿足用用戶需求的的軟件產品品,首先必必
14、須知道用用戶的需求求,對需求求的深入理理解是軟件件開發(fā)獲得得成功的前前提條件。任務:基本本任務是準準確回答“系統(tǒng)必須須做什么”。 需求分析任任務綜述:深入描述軟軟件的功能能和性能確定軟件設設計的約束束確定軟件同同其它系統(tǒng)統(tǒng)元素的接接口細節(jié)定義軟件的的其它有效效性需求目的:為了了開發(fā)出真真正滿足用用戶需求的的軟件產品品?;救稳蝿帐菧蚀_確回答“系統(tǒng)必須須做什么”。.獲取需求求的常用方方法 11.訪談正式訪談系統(tǒng)分析員員將提出一一些事先準準備好的具具體問題非正式訪談談系統(tǒng)分析員員將提出一一些用戶可可以自由回回答的開放放性問題,以以鼓勵被訪訪問人員說說出自己的的想法2.面向數(shù)數(shù)據(jù)流自頂頂向下求精精基
15、本思想:“自頂向下下,逐步求求精” 抽象象和分解簡易的應用用規(guī)格說明明技術快速建立軟軟件原型需求分析的的原則必須理解并并描述問題題的信息域域必須定義軟軟件應完成成的功能必須描述作作為外部事事件結果的的軟件行為為必須對描述述信息、功功能和行為為的模型進進行分解考察重點:狀態(tài)轉換換圖、ERR圖(應用用題)第五章一:總體設設計的目標標是什么?遵循的基基本原理有有哪些?目的:概括括的說總體體設計的目目的就是回回答“系統(tǒng)該如如何實現(xiàn)這這個問題” 通過這這個這個階階段的工作作將劃分出出組成系統(tǒng)統(tǒng)的物理元元素-程程序、文件件數(shù)據(jù)庫、人工過程程和文檔等等,但每個個物理元素素仍然處于于黑盒級,這這些黑盒子子里的
16、具體體內容將在在以后仔細細設計?;驹恚?抽象象:抽出本本質,忽略略細節(jié),分分層理解 2模模塊化:就就是把程序序劃分成獨獨立命名且且可獨立訪訪問的模塊塊,每個模模塊完成一一個子功能能,把這些些模塊集成成起來構成成一個整體體,可以完完成指定的的功能滿足足用戶的需需求。 3逐步求精精:為了能能集中精力力解決主要要問題而盡盡量推遲對對問題細節(jié)節(jié)的考慮。 4信息隱蔽蔽和局部化化:信息隱蔽原原理應該這樣設設計和確定定模塊,使使得一個模模塊內包含含的信息(過過程或數(shù)據(jù)據(jù))對于不不需要這些些信息的模模塊來說,是是不能訪問問的局部化是把一些關關系密切的的軟件元素素物理地放放得彼此靠靠近。顯然然, 局部部化有
17、助于于實現(xiàn)信息息隱藏 5模塊獨立立性:模塊塊獨立是好好設計的關關鍵,而設設計又是決決定軟件質質量的關鍵鍵環(huán)節(jié) 模模塊化程度度較高的軟軟件容易編編制 獨獨立的模塊塊比較容易易維護和測測試2.什么是是耦合?有有哪幾種耦耦合?什么么是內聚?有哪幾種種內聚?如如何增強模模塊的獨立立性?耦合:是對對一個軟件件結構內不不同模塊之之間互連程程度的度量量耦合強弱取取決于模塊塊間接口復復雜程度,進進入或訪問問一個模塊塊的點,以以及通過接接口的數(shù)據(jù)據(jù)模塊間的耦耦合程度強強烈影響系系統(tǒng)的可理理解性、可可測試性、可靠性和和可維護性性耦合表示示一個軟件件結構內各各個模塊之之間的互連連程度,應應盡量選用用松散耦合合的系統(tǒng)
18、耦合種類:公共耦合合:幾個模模塊共享一一個數(shù)據(jù)區(qū)區(qū)域 特征耦耦合:把整整個數(shù)據(jù)結結構作為參參數(shù)傳遞而而被調用模模塊只使用用其中一部部分數(shù)據(jù)元元素時就出出現(xiàn)了特征征耦合。 控制耦耦合:一個個模塊通過過傳遞控制制信息來控控制另一個個模塊 標記耦耦合: 模模塊間通過過參數(shù)表傳傳遞記錄信信息,這個個記錄是某某一數(shù)據(jù)結結構的子結結構,而不不是簡單變變量 數(shù)據(jù)耦耦合: 只只有數(shù)據(jù)在在模塊之間間進行交換換,只通過過參數(shù)傳遞遞基本類型型的數(shù)據(jù) 非直接接耦合: 兩個模塊塊之間沒有有直接關系系,它們之之間的聯(lián)系系完全是通通過主模塊塊的控制和和調用來實實現(xiàn)的非直接耦合合的模塊獨獨立性最強強內聚:標志志著一個模模塊內
19、各個個元素彼此此結合的緊緊密程度內聚有七種種,由弱到到強分別為為 偶偶然內聚-邏輯內內聚-時時間內聚-過程內內聚-通通信內聚-順序內內聚-功功能內聚增強模塊獨獨立性:提提高模塊的的內聚程度度,減少耦耦合衡量模塊獨獨立性的兩兩個標準是是什么?它它們各表示示什么含義義? * 高內聚,少少耦合;*對于一個個模塊而言言,模塊自自身的內聚聚越強,模模塊間的耦耦合就越小小,模塊所所具有的獨獨立性就越越好??梢砸哉f高內聚聚低耦合是是我們進行行軟件設計計的一貫原原則4.什么叫叫模塊?什什么叫模塊塊化?模塊塊設計時應應注意哪些些規(guī)則? 模塊:是是由邊界元元素限定的的相鄰程序序元素(例例如,數(shù)據(jù)據(jù)說明,可可執(zhí)行的
20、語語句)的序序列,而且且有一個總總體標識符符代表它。 模塊化:就是把程程序劃分成成獨立命名名且可獨立立訪問的模模塊,每個個模塊完成成一個子功功能,把這這些模塊集集成起來構構成一個整整體,可以以完成指定定的功能滿滿足用戶的的需求。 規(guī)則: 高內聚,少少耦合影響耦合度度的因素有有哪些?.降低耦合合度的方法法有哪些? 內容耦合 公共共耦合 特征耦合合 控控制耦合 標記記耦合 數(shù)據(jù)耦耦合 非非直接耦合合 -內容方法:盡量量使用數(shù)據(jù)據(jù)耦合,少少用控制耦耦合和特征征耦合,限限制公共環(huán)環(huán)境耦合環(huán)環(huán)境的范圍圍,完全不不用內容耦耦合。 第六六章詳細設設計1.詳細設設計的根本本目標和任任務?詳細設計階階段的根部部
21、目標是確確定應該怎怎樣具體地地實現(xiàn)所要要求的系統(tǒng)統(tǒng)。詳細設計階階段的任務務是要設計計出程序的的“藍圖”。2.層次圖圖和層次方方框圖分別別適用于軟軟件工程的的那個階段段?并比較較它們的區(qū)區(qū)別?層次圖和層層次方框圖圖不同點:層次圖的的形式和第第3.7節(jié)中中介紹的層層次方框圖圖形式相同同,但是表表現(xiàn)的內容容卻完全不不同。層次圖描描繪的是軟軟件的結構構,層次方方框圖描繪繪的是數(shù)據(jù)據(jù)結構層次圖中中的一個矩矩形框代表表一個模塊塊,方框間間的連線表表示調用關關系。層次次方框圖矩矩形框代表表數(shù)據(jù),連連線表示組組成關系。層次圖很適適于在自頂頂向下設計計軟件的過過程中使用用。層次方框圖圖適用于需需求分析階階段.3
22、.Jaccksonn方法的步步驟?Jaacksoon圖的優(yōu)優(yōu)點是什么么?三種基基本結構Jacksson結構構化設計方方法基本上上由下述五五個步驟組組成:1 分析并并確定輸入入數(shù)據(jù)和輸輸出數(shù)據(jù)的的邏輯結構構,并用JJacksson圖描描繪這些數(shù)數(shù)據(jù)結構2 找出輸輸入數(shù)據(jù)結結構和輸出出數(shù)據(jù)結構構中有對應應關系的數(shù)數(shù)據(jù)單元3 從描繪繪數(shù)據(jù)結構構的Jaccksonn圖導出描描繪程序結結構的Jaacksoon圖 - 按照在數(shù)數(shù)據(jù)結構圖圖中的層次次,在程序序結構圖的的相應層次次,為每對對有對應關關系的數(shù)據(jù)據(jù)單元畫一一個處理框框 - 根據(jù)輸入入數(shù)據(jù)結構構中剩余的的每個數(shù)據(jù)據(jù)單元所處處的層次,在在程序結構構圖
23、相應層層次分別為為它們畫上上對應的處處理框 - 根據(jù)輸出出數(shù)據(jù)結構構中剩余的的每個數(shù)據(jù)據(jù)單元所處處的層次,在在程序結構構圖相應層層次分別為為它們畫上上對應的處處理框 - 若在構成成順序結構構的元素中中出現(xiàn)了重重復或選擇擇元素,需需在Jaccksonn圖中增加加一個中間間層次的處處理框。4 列出所所有操作和和條件(包括分支支條件和循循環(huán)結束條條件),并且把把它們分配配到程序結結構圖的適適當位置。5 用偽碼碼表示程序序Jacksson圖的的優(yōu)點A:便于表表示層次結結構,而且且是對結構構進行自頂頂向下分解解的有力工工具;B:形象直直觀、可讀讀性好C:既能表表示數(shù)據(jù)結結構也能表表示程序結結構(因為為結
24、構程序序設計也只只使用上述述三種基本本結構。三種基本結結構順序結構A seq B C DA endDCBA順序結構的的數(shù)據(jù)由一一個或多個個數(shù)據(jù)元素素組成,每每個元素按按確定次序序出現(xiàn)一次次。選擇結構 選擇擇結構的數(shù)數(shù)據(jù)包含兩兩個或多個個數(shù)據(jù)元素素,每次按按一定的條條件從這些些數(shù)據(jù)元素素中選擇一一個使用,具具體分為:(1)選擇擇結構,(2)可選選結構重復結構 重復復結構的數(shù)數(shù)據(jù),根據(jù)據(jù)使用時的的條件由一一個數(shù)據(jù)元元素出現(xiàn)零零次或多次次構成。4.程序復復雜程度的的度量方法法?環(huán)形復復雜度的計計算方法?McCabbe方法和和Halssteadd方法McCabbe方法根根據(jù)程序控控制流的復復雜程度定定
25、量度量程程序的復雜雜程度,這這樣度量出出的結果稱稱為程序的的環(huán)形復雜雜度。環(huán)形復雜度度的計算方方法:可以用下述述3種方法中中的任何一一種來計算算環(huán)形復雜雜度。(1)流圖圖中的區(qū)域域數(shù)等于環(huán)環(huán)形復雜度度。 (2)流圖圖G的環(huán)形復復雜度V(G)E-N+2,其中中,E是流圖中中邊的條數(shù)數(shù),N是結點數(shù)數(shù)。(3)流圖圖G的環(huán)形復復雜度V(G)P+1,其其中,戶是是流圖中判判定結點的的數(shù)目。例如,使用用上述任何何一種方法法,都可以以計算出圖圖616所示流流圖的環(huán)形形復雜度為為4。5. 說明明結構化程程序設計的的主要思想想是什么?結構化設設計方法的的步驟是什什么?結構程序設設計的經(jīng)典典定義如下下所述:“如果
26、一個個程序的代代碼塊僅僅僅通過順序序、選擇和和循環(huán)這33種基本控控制結構進進行連接,并并且每個代代碼塊只有有一個入口口和一個出出口,則稱稱這個程序序是結構化化的?!苯Y構化設計計的步驟如如下:評審和細細化數(shù)據(jù)流流圖;確定數(shù)據(jù)據(jù)流圖的類類型;把數(shù)據(jù)流流圖映射到到軟件模塊塊結構,設設計出模塊塊結構的上上層;基于數(shù)據(jù)據(jù)流圖逐步步分解高層層模塊,設設計中下層層模塊;對模塊結結構進行優(yōu)優(yōu)化,得到到更為合理理的軟件結結構;描述模塊塊接口。掌握過程設設計工具:程序流程程圖,N-S圖,PPAD圖,判定樹,判定表(應用題)程序流程圖圖也稱為程程序框圖,程程序流程圖圖使用五種種基本控制制結構是:盒圖 (NN-S圖)
27、基本符號PAD圖第7章實現(xiàn)現(xiàn)一程序設設計語言的的選擇、編編碼風格(選選擇)程序設計語語言的選擇擇: 1.系系統(tǒng)用戶的的要求: 如果所開開發(fā)的系統(tǒng)統(tǒng)由用戶負負責維護,用用戶通常要要求用他們們熟悉的語語言書寫程程序. 2.可可以使用的的編譯程序序:運行目目標系統(tǒng)的的環(huán)境中可可以提供的的編譯程序序往往限制制了可以選選用的語言言的范圍. 3.可可以得到的的軟件工具具:如果某某種語言有有支持程序序開發(fā)的軟軟件工具可可以利用,則則目標系統(tǒng)統(tǒng)的實現(xiàn)和和驗證都變變得比較容容易 4.工工程規(guī)模:如果工程程規(guī)模很龐龐大,現(xiàn)有有的語言又又不完全適適用,那么么設計并實實現(xiàn)一種供供這個工程程項目專用用的程序設設計語言,
28、可可能是一個個正確的選選擇 5.程程序員的知知識:如果果和其他標標準不矛盾盾,那么應應該選擇一一種已經(jīng)為為程序員所所熟悉的語語言 6. 軟件可移移植性要求求:如果目目標系統(tǒng)將將在幾臺不不同的計算算機上運行行,或者預預期的使用用壽命很長長,那么選選擇一種標標準化程度度高、程序序可移植性性好的語言言就是很重重要的 7.軟軟件的應用用領域:FORTRRAN語言言特別適合合于工程和和科學計算算COBOLL語言適合合于商業(yè)領領域應用C語言和AAda語言言適用于系系統(tǒng)和實時時應用領域域LISP語語言適用于于組合問題題領域PROLOOG語言適適于表達知知識和推理理編碼風格:源程序代碼碼的邏輯簡簡明清晰、易讀
29、易懂懂軟件測試的的定義、目目的?軟件件測試的原原則?簡述述軟件測試試的各個步步驟的主要要任務?定義:為了了發(fā)現(xiàn)程序序中的錯誤誤而執(zhí)行程程序的過程程。目的:從用用戶的角度度出發(fā),普普遍希望通通過軟件測測試暴露軟軟件中隱藏藏的錯誤和和缺陷,以以考慮是否否可接受該該產品。從軟件開發(fā)發(fā)者的角度度出發(fā),則則希望測試試成為表明明軟件產品品中不存在在錯誤的過過程,驗證證該軟件已已正確地實實現(xiàn)了用戶戶的要求,確確立人們對對軟件質量量的信心。測試階段的的根本目標標是盡可能能多地發(fā)現(xiàn)現(xiàn)并排除軟軟件中潛藏藏的錯誤,最最終把一個個高質量的的軟件系統(tǒng)統(tǒng)交給用戶戶使用原則:1.所有測測試都應該該能追溯到到用戶需求求2.
30、應該該在測試開開始之前就就制定出測測試計劃:1.完成成了需求模模型就可以以著手制定定測試計劃劃2.在建建立了設計計模型后就就可以立即即開始設計計詳細的測測試方案3.測試發(fā)發(fā)現(xiàn)的錯誤誤中的800很可能能是由程序序中20的模塊造造成的。問問題是怎樣樣找出這些些可疑的模模塊并徹底底地測試它它們4.應該從從“小規(guī)?!睖y試開始始,并逐步步進行“大規(guī)?!睖y試通常,首先先重點測試試單個程序序模塊,然然后把測試試重點轉向向在集成的的模塊簇中中尋找錯誤誤,最后在在整個系統(tǒng)統(tǒng)中尋找錯錯誤5.窮舉測測試是不可可能的,所所謂窮舉測測試就是把把程序所有有可能的執(zhí)執(zhí)行路徑都都檢查一遍遍的測試6.為了達達到最佳的的測試效果
31、果,應該由由獨立的第第三方從事事測試工作作7.充分注注意測試中中的群集現(xiàn)現(xiàn)象。經(jīng)驗驗表明,測測試后程序序中殘存的的錯誤數(shù)目目與該程序序中已發(fā)現(xiàn)現(xiàn)的錯誤數(shù)數(shù)目成正比比。8.嚴格執(zhí)執(zhí)行測試計計劃,排除除測試的隨隨意性。9.妥善保保存測試計計劃,測試試用例,出出錯統(tǒng)計和和最終分析析報告,為為維護提供供方便。步驟:1.模塊測試試模塊測試的的目的是保保證每個模模塊作為一一個單元能能正確運行行模塊測試通通常又稱為為單元測試試在這個測試試步驟中所所發(fā)現(xiàn)的往往往是編碼碼和詳細設設計的錯誤誤2子系統(tǒng)統(tǒng)測試子系統(tǒng)測試試是把經(jīng)過過單元測試試的模塊放放在一起形形成一個子子系統(tǒng)來測測試模塊相互間間的協(xié)調和和通信是這這個
32、測試過過程中的主主要問題這個步驟著著重測試模模塊的接口口3.系統(tǒng)測測試把經(jīng)過測試試的子系統(tǒng)統(tǒng)裝配成一一個完整的的系統(tǒng)來測測試發(fā)現(xiàn)的往往往是軟件設設計中的錯錯誤,也可可能發(fā)現(xiàn)需需求說明中中的錯誤兼有檢測和和組裝兩重重含義,通通常稱為集集成測試4驗收測測試(驗收收測試也稱稱為確認測測試)驗收測試把把軟件系統(tǒng)統(tǒng)作為單一一的實體進進行測試,測測試內容與與系統(tǒng)測試試基本類似似,但是它它是在用戶戶積極參與與下進行的的,而且可可能主要使使用實際數(shù)數(shù)據(jù)(系統(tǒng)統(tǒng)將來要處處理的信息息)進行測測試驗收測試的的目的是驗驗證系統(tǒng)確確實能夠滿滿足用戶的的需要,在在這個測試試步驟中發(fā)發(fā)現(xiàn)的往往往是系統(tǒng)需需求說明書書中的錯誤
33、誤5.平行運運行所謂平行運運行就是同同時運行新新開發(fā)出來來的系統(tǒng)和和將被它取取代的舊系系統(tǒng),以便便比較新舊舊兩個系統(tǒng)統(tǒng)的處理結結果。這樣樣做的具體體目的有如如下幾點:(1)可以以在準生產產環(huán)境中運運行新系統(tǒng)統(tǒng)而又不冒冒風險(2)用戶戶能有一段段熟悉新系系統(tǒng)的時間間(3)可以以驗證用戶戶指南和使使用手冊之之類的文檔檔(4)能夠夠以準生產產模式對新新系統(tǒng)進行行全負荷測測試,可以以用測試結結果驗證性性能指標集成測試中中常使用自自頂向下集集成和自底底向上集成成兩種策略略,比較它它們的區(qū)別別?自頂向下 : 可在在測試早期期實現(xiàn)并驗驗證系統(tǒng)主主要功能且且不需驅動動模塊,但但是需樁模模塊自底向上: 設計測測試用例容容易且不需需樁模塊 但是只有有到最后程程序才能作作為一個整整體 。四黑盒測測試的優(yōu)缺缺點?白盒盒測
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)保油墨應用研究-洞察及研究
- 松樹水庫水源管理辦法
- 團隊內部培訓管理辦法
- 小學品德教育的目標與實現(xiàn)策略
- FDM在碳纖維增強尼龍6復合材料性能研究中的應用
- 國企資金管理辦法講解
- 數(shù)字時代舞蹈教學變革的理念、場景及實施路徑探索
- 民營藏品征集管理辦法
- 幼兒園早期閱讀活動中的師幼互動模式研究:理論與實踐
- 華為售后店長管理辦法
- 鐵路公司質量管理制度
- 物業(yè)公司接管公寓樓項目工作時間倒推計劃表(T日為入駐日)
- DB1304T 500-2025民用水表、電能表、燃氣表計量糾紛處理規(guī)范
- CRRT的枸櫞酸抗凝(ICU)培訓課件
- 計算機基礎知識理論競賽題庫與答案(960題)
- 醫(yī)院反恐防暴培訓內容
- GB/T 44353.1-2024動物源醫(yī)療器械第1部分:風險管理應用
- 2024年廣州市黃埔軍校紀念中學小升初分班考試數(shù)學模擬試卷附答案解析
- 新人教版五年級數(shù)學下冊期末試卷
- DB32-T 4757-2024 連棟塑料薄膜溫室建造技術規(guī)范
- 2025屆甘肅省天水市秦州區(qū)天水一中高一下數(shù)學期末達標檢測試題含解析
評論
0/150
提交評論