



付費(fèi)下載
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第一章 ,軟件工程導(dǎo)論一、軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科二、件工程的七條基本原則:1. 用分階段的生命周期計(jì)劃嚴(yán)格管理2. 堅(jiān)持進(jìn)行階段評審3. 實(shí)行嚴(yán)格的產(chǎn)品控制4. 采用現(xiàn)代程序設(shè)計(jì)技術(shù)5. 結(jié)果應(yīng)能清楚地審查6. 開發(fā)小組的人員應(yīng)該少而精7. 承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性三、軟件工程方法學(xué)包含 3 個(gè)要素 :方法、工具和過程。方法是完成軟件開發(fā)的各項(xiàng)任務(wù)的技術(shù)方法 ,回答 “怎樣做 ”的問題 ;工具是為運(yùn)用方法而提供的自動(dòng)的或半自動(dòng)的軟件工程支撐環(huán)境 ;過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架 ,它規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。四、軟件一程方法學(xué) :傳
2、統(tǒng)方法學(xué)、面向?qū)ο蠓椒▽W(xué)五、軟件生命周期 :軟件定義、軟件開發(fā)和運(yùn)行維護(hù)(也稱為軟件維護(hù) 3 個(gè)時(shí)期組成1 軟件定義主要任務(wù) :問題定義、可行性研究和需求分析2 開發(fā)時(shí)期主要任務(wù) :總體設(shè)計(jì) ,詳細(xì)設(shè)計(jì) ,編碼和單元測試 ,綜合測試3 維護(hù)時(shí)期主要任務(wù) :通過各種維護(hù)性活動(dòng)使系統(tǒng)持久地滿足用戶的需求 ,通常有四類維護(hù) :改正性維護(hù) ,也就是診斷和改正在使用過程中發(fā)現(xiàn)的軟件錯(cuò)誤 ;適應(yīng)性維護(hù) ,即修改軟件以適應(yīng)環(huán)境的變化 ;完善性維護(hù) ,即根據(jù)用戶的需求改進(jìn)若擴(kuò)充軟件使它更完善 ;預(yù)防性維護(hù) ,即修改軟件 ,為將來的維護(hù)活動(dòng)預(yù)先做準(zhǔn)備/問題定義階段必須回答的關(guān)鍵問題是: “要解決的問題是什么 ?
3、”可行性研究 :對于上一個(gè)階段所確定的問題有行得能的解決辦法嗎 ?需求分析 :確定目標(biāo)系統(tǒng)必須具備哪些工能總體設(shè)計(jì) :概括地說 ,應(yīng)該怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng) ?詳細(xì)設(shè)計(jì) :應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系統(tǒng)呢 ?編碼和單元測試 :寫出正確的容易理解、容易維護(hù)的程序模塊綜合測試 :通過各種類型測 (及相應(yīng)的調(diào)試使軟件達(dá)到預(yù)定的要求 ,最基本的測試是集成測試和驗(yàn)收測試 ,集成測試是根據(jù)設(shè)計(jì)的軟件結(jié)構(gòu) ,把經(jīng)過單元測試檢驗(yàn)的模塊按某種選定的策略裝配起來 ,在裝配過程中對程序進(jìn)行必要的測試 ;驗(yàn)收測試則是按照規(guī)格說明的規(guī)定 ,由用戶對目標(biāo)系統(tǒng)驗(yàn)收六、軟件過程的各種模型 :瀑布模型、快速原型模型增量模型、螺旋模型、噴
4、泉模型第二章可行性研究一、可行性研究的任務(wù)分析幾種主要的可能解法的利弊 ,從而判斷原定的系統(tǒng)規(guī)模和目標(biāo)是否現(xiàn)實(shí) ,系統(tǒng)完成后所能帶來的效益是否大到值得投資開發(fā)這個(gè)系統(tǒng)的程度二、可行性(1 技術(shù)可行性使用現(xiàn)有的技術(shù)能實(shí)現(xiàn)這個(gè)系統(tǒng)嗎?(2 經(jīng)濟(jì)可行性這個(gè)系統(tǒng)的經(jīng)濟(jì)效益能超過它的開發(fā)成本嗎?(3 操作可行性系統(tǒng)的操作方式在這個(gè)用戶組織內(nèi)行得通嗎?三、可行性研究過程1. 復(fù)查系統(tǒng)規(guī)模和目標(biāo)、2. 研究目前正在使用的系統(tǒng)3. 導(dǎo)出新系統(tǒng)的高層邏輯模型、4. 進(jìn)一步定義問題5. 導(dǎo)出和評價(jià)供選擇的解法、6. 推薦行動(dòng)方針7. 草擬開發(fā)計(jì)劃、 8. 書寫文檔提交審查四、系統(tǒng)流程圖 :是概括地描繪物理系統(tǒng)的傳
5、統(tǒng)工具。數(shù)據(jù)流圖 :描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換。數(shù)據(jù)流圖是系統(tǒng)邏輯功能的圖形表示數(shù)據(jù)字典 :數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合 ,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。一般說來 ,數(shù)據(jù)字典應(yīng)該由對下列3 類元素的定義組成 :(1 數(shù)據(jù)流(2 數(shù)據(jù)流分量 (即數(shù)據(jù)元素(3 數(shù)據(jù)存儲第 3 章需求分析一、需求分析的任務(wù)還不是確定系統(tǒng)怎樣完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。二、確定對系統(tǒng)的綜合要求1. 功能需求、2. 性能需求、3. 可靠性和可用性需求4. 出錯(cuò)處理需求、5. 接口需求、6. 約束7. 逆向需
6、求、 8. 將來可能提出的要求三、分析系統(tǒng)的數(shù)據(jù)要求分析系統(tǒng)的數(shù)據(jù)要求通常采用建立數(shù)據(jù)模型的方法導(dǎo)出系統(tǒng)的邏輯模型綜合上述兩項(xiàng)分析的結(jié)果可以導(dǎo)出系統(tǒng)的詳細(xì)的邏輯模型,通常用數(shù)據(jù)流圖、實(shí)體 -聯(lián)系圖、狀態(tài)轉(zhuǎn)換圖、數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型。四、獲取需求的方法訪談面向數(shù)據(jù)流自頂向下求精簡易的應(yīng)用規(guī)格說明技術(shù)快速建立軟件原型五、分析建模需求分析過程應(yīng)該建立3 種模型 ,它們分別是數(shù)據(jù)模型、功能模型和行為模型。3.4 節(jié)將介紹的實(shí)體 -聯(lián)系圖 ,描繪數(shù)據(jù)對象及數(shù)據(jù)對象之間的關(guān)系 ,是用于建立數(shù)據(jù)模型的圖形。2.4 節(jié)講過的數(shù)據(jù)流圖 ,描繪當(dāng)數(shù)據(jù)在軟件系統(tǒng)中移動(dòng)時(shí)被變換的邏輯過程 ,指明系
7、統(tǒng)具有的變換數(shù)據(jù)的功能 ,因此 ,數(shù)據(jù)流圖是建立功能模型的基礎(chǔ)。3.6 節(jié)將介紹的狀態(tài)轉(zhuǎn)換圖 (簡稱為狀態(tài)圖 ,指明了作為外部事件結(jié)果的系統(tǒng)行為。為此 ,狀態(tài)轉(zhuǎn)換圖描繪了系統(tǒng)的各種行為模式 (稱為 “狀態(tài) ”和在不同狀態(tài)間轉(zhuǎn)換的方式。狀態(tài)轉(zhuǎn)換圖是行為建模的基礎(chǔ)。3.4 實(shí)體 -聯(lián)系圖 (數(shù)據(jù)對象、屬性、聯(lián)系3.6 狀態(tài)轉(zhuǎn)換圖 (狀態(tài)、事件、符號3.7 其他圖形工具、層次方框圖圖、圖六、驗(yàn)證軟件需求(1 一致性所有需求必須是一致的,任何一條需求不能和其他需求互相矛盾。(2 完整性需求必須是完整的,規(guī)格說明書應(yīng)該包括用戶需要的每一個(gè)功能或性能。(3 現(xiàn)實(shí)性指定的需求應(yīng)該是用現(xiàn)有的硬件技術(shù)和軟件技術(shù)
8、基本上可以實(shí)現(xiàn)的。對硬件技術(shù)的進(jìn)步可以做些預(yù)測,對軟件技術(shù)的進(jìn)步則很難做出預(yù)測,只能從現(xiàn)有技術(shù)水平出發(fā)判斷需求的現(xiàn)實(shí)性。(4 有效性必須證明需求是正確有效的,確實(shí)能解決用戶面對的問題。第 4 章形式化說明技術(shù)有窮狀態(tài)機(jī)、 petri 網(wǎng)、 z 語言第 5 章總體設(shè)計(jì)劃分出組成系統(tǒng)的物理元素 (黑盒子級 程序、文件、數(shù)據(jù)庫、人工過程和文檔等2、設(shè)計(jì)軟件的結(jié)構(gòu)1、確定系統(tǒng)中每個(gè)程序是由哪些模塊組成2、這些模塊相互間的關(guān)系二、設(shè)計(jì)過程設(shè)想供選擇的方案、選取合理的方案、推薦最佳方案功能分解、設(shè)計(jì)軟件結(jié)構(gòu)、設(shè)計(jì)數(shù)據(jù)庫制定測試計(jì)劃、書寫文檔、審查和復(fù)審三、設(shè)計(jì)原理 :模塊化、抽象、逐步求精信息隱藏和局部化
9、、模塊獨(dú)立四、模塊獨(dú)立性的度量 :兩個(gè)定性標(biāo)準(zhǔn)度量 :內(nèi)聚和耦合耦合 :模塊間互相依賴 (連接的緊密程度內(nèi)聚 :模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度五、耦合數(shù)據(jù)耦合 (Data Coupling、特征耦合控制耦合 (Control Coupling公共環(huán)境耦合 (Common Coupling內(nèi)容耦合 (Content Coupling六、設(shè)計(jì)原則耦合是影響軟件復(fù)雜程度的一個(gè)重要因素。盡量使用數(shù)據(jù)耦合、少用控制耦合和特征耦合限制公共環(huán)境耦合的范圍、完全不用內(nèi)容耦合。七、模塊內(nèi)聚八、設(shè)計(jì)原則 ,如果給上述 7 種內(nèi)聚的優(yōu)劣評分 ,將得到如下結(jié)果 :功能內(nèi)聚 10 分順序內(nèi)聚 9 分通信內(nèi)聚 7 分
10、過程內(nèi)聚 5 分時(shí)間內(nèi)聚 3 分邏輯內(nèi)聚 1 分偶然內(nèi)聚 0 分力爭做到高內(nèi)聚、識別提高低內(nèi)聚的模塊九、啟發(fā)規(guī)則 :1.改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性2. 模塊規(guī)模應(yīng)該適中3. 深度、寬度、扇出和扇入都應(yīng)適當(dāng)4. 模塊的作用域應(yīng)該在控制域之內(nèi)5.力爭降低模塊接口的復(fù)雜程度6. 設(shè)計(jì)單入口單出口的模塊7. 模塊功能應(yīng)該可以預(yù)測十、描繪軟件結(jié)構(gòu)的圖形工具層次圖 HIPO 圖結(jié)構(gòu)圖面向數(shù)據(jù)流的設(shè)計(jì)方法 :信息流的類型 :變換流、事務(wù)流分析步驟 :第 1 步復(fù)查基本系統(tǒng)模型、第 2 步復(fù)查并精化數(shù)據(jù)流圖第 3 步確定數(shù)據(jù)流圖具有變換特性還是事務(wù)特性。第 4 步確定輸入流和輸出流的邊界 ,從而孤立出變換中心
11、。第 5 步完成 “第一級分解 ”。變換型數(shù)據(jù)流圖被映射成一個(gè)輸入、變換和輸出的信息處理過程。第 6 步完成 “第二級分解 ”。把數(shù)據(jù)流圖中的每個(gè)處理映射成軟件結(jié)構(gòu)中一個(gè)適當(dāng)?shù)哪K。第 7 步使用設(shè)計(jì)度量和啟發(fā)式規(guī)則對第一次分割得到的軟件結(jié)構(gòu)進(jìn)一步精化。第 6 章詳細(xì)設(shè)計(jì)目標(biāo) :系統(tǒng)的具體實(shí)現(xiàn)。n 應(yīng)該得出對目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。? 結(jié)構(gòu)程序設(shè)計(jì)的經(jīng)典定義如下所述 : “如果一個(gè)程序的代碼塊僅僅通過順序、選擇和循環(huán)這 3 種基本控制結(jié)構(gòu)進(jìn)行連接 ,并且每個(gè)代碼塊只有一個(gè)入口和一個(gè)出口 ,則稱這個(gè)程序是結(jié)構(gòu)化的。 ”? 如果只允許
12、使用順序、 IF-THEN-ELSE 型分支和DO-WHILE 型循環(huán)這 3 種基本控制結(jié)構(gòu) ,則稱為經(jīng)典的結(jié)構(gòu)程序設(shè)計(jì) ;? 如果除了上述 3 種基本控制結(jié)構(gòu)之外 ,還允許使用DO-CASE 型多分支結(jié)構(gòu)和DO-UNTIL 型循環(huán)結(jié)構(gòu) ,則稱為擴(kuò)展的結(jié)構(gòu)程序設(shè)計(jì) ;? 如果再加上允許使用 LEA VE( 或 BREAK 結(jié)構(gòu) ,則稱為修正的結(jié)構(gòu)程序設(shè)計(jì)。人機(jī)界面設(shè)計(jì) : 1. 系統(tǒng)響應(yīng)時(shí)間、 2. 用戶幫助設(shè)施3. 出錯(cuò)信息處理、4. 命令交互過程設(shè)計(jì)的工具 :程序流程圖、盒圖 (N-S 圖、 PAD 圖、判定表判定樹、過程設(shè)計(jì)語言面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法:? Jackson方法和 Warni
13、er 方法是最著名的兩個(gè)面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法 .? 使用面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法 ,當(dāng)然首先需要分析確定數(shù)據(jù)結(jié)構(gòu) ,并且用適當(dāng)?shù)墓ぞ咔逦孛枥L數(shù)據(jù)結(jié)構(gòu)。? Jackson方法 :(1 分析并確定輸入數(shù)據(jù)和輸出數(shù)據(jù)的邏輯結(jié)構(gòu) ,并用 Jackson圖描繪這些數(shù)據(jù)結(jié)構(gòu)。? (2 找出輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)中有對應(yīng)關(guān)系的數(shù)據(jù)單元。所謂有對應(yīng)關(guān)系是指有直接的因果關(guān)系 ,在程序中可以同時(shí)處理的數(shù)據(jù)單元 (對于重復(fù)出現(xiàn)的數(shù)據(jù)單元必須重復(fù)的次序和次數(shù)都相同才可能有對應(yīng)關(guān)系。? (3 用下述 3 條規(guī)則從描繪數(shù)據(jù)結(jié)構(gòu)的 Jackson圖導(dǎo)出描繪程序結(jié)構(gòu)的 Jackson圖:第一 ,為每對有對應(yīng)關(guān)系的數(shù)據(jù)單
14、元 ,按照它們在數(shù)據(jù)結(jié)構(gòu)圖中的層次在程序結(jié)構(gòu)圖的相應(yīng)層次畫一個(gè)處理框 (注意 ,如果這對數(shù)據(jù)單元在輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)中所處的層次不同 ,則和它們對應(yīng)的處理框在程序結(jié)構(gòu)圖中所處的層次與它們之中在數(shù)據(jù)結(jié)構(gòu)圖中層次低的那個(gè)對應(yīng);? 第二 ,根據(jù)輸入數(shù)據(jù)結(jié)構(gòu)中剩余的每個(gè)數(shù)據(jù)單元所處的層次 ,在程序結(jié)構(gòu)圖的相應(yīng)層次分別為它們畫上對應(yīng)的處理框;? 第三 ,根據(jù)輸出數(shù)據(jù)結(jié)構(gòu)中剩余的每個(gè)數(shù)據(jù)單元所處的層次 ,在程序結(jié)構(gòu)圖的相應(yīng)層次分別為它們畫上對應(yīng)的處理框。? 在導(dǎo)出程序結(jié)構(gòu)圖的過程中 ,由于改進(jìn)的 Jackson圖規(guī)定在構(gòu)成順序結(jié)構(gòu)的元素中不能有重復(fù)出現(xiàn)或選擇出現(xiàn)的元素 ,因此可能需要增加中間層次的
15、處理框? (4 列出所有操作和條件 (包括分支條件和循環(huán)結(jié)束條件,并且把它們分配到程序結(jié)構(gòu)圖的適當(dāng)位置。? (5 用偽碼表示程序程序復(fù)雜程度的定量度量:McCabe 方法、 Halstead方法第 7章實(shí)現(xiàn)通常把編碼和測試統(tǒng)稱為實(shí)現(xiàn)。所謂編碼就是把軟件設(shè)計(jì)結(jié)果翻譯成用某種程序設(shè)計(jì)語言書寫的程序。測試的目的就是在軟件投入生產(chǎn)性運(yùn)行之前,盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。單元測試、綜合測試軟件測試的目標(biāo) :(1 測試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程 ;(2 好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測試方案 ;(3 成功的測試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測試。測試方法 :? 黑盒測試 :
16、如果已經(jīng)知道了產(chǎn)品應(yīng)該具有的功能 ,可以通過測試來檢驗(yàn)是否每個(gè)功能都能正常使用 ;? 白盒測試 :如果知道產(chǎn)品的內(nèi)部工作過程 ,可以通過測試來檢驗(yàn)產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說明書的規(guī)定正常進(jìn)行。測試步驟 :1 模塊測試、 2 子系統(tǒng)測試、 3. 系統(tǒng)測試4. 驗(yàn)收測試、5. 平行運(yùn)行集成測試 :1、自頂向下集成2、自底向上集成邏輯覆蓋 :1. 語句覆蓋2. 判定覆蓋3. 條件覆蓋4. 判定 /條件覆蓋5. 條件組合覆蓋6. 點(diǎn)覆蓋7. 邊覆蓋 8 . 路徑覆蓋控制結(jié)構(gòu)測試 :1. 基本路徑測試 :第一步 ,根據(jù)過程設(shè)計(jì)結(jié)果畫出相應(yīng)的流圖。第二步 ,計(jì)算流圖的環(huán)形復(fù)雜度。第三步 ,確定線性獨(dú)立路徑的基本集合。第四步 ,設(shè)計(jì)可強(qiáng)制執(zhí)行基本集合中每條路徑的測試用例。黑盒測試技術(shù):等價(jià)劃分、邊界值分析、錯(cuò)誤推測軟件可靠性 :基本概念、估算平
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)發(fā)展戰(zhàn)略制定與規(guī)劃實(shí)務(wù)
- 農(nóng)業(yè)灌溉水窖管理辦法
- 效率提升:關(guān)鍵指標(biāo)勝任模型平衡記分卡
- 新質(zhì)生產(chǎn)力推動(dòng)無償獻(xiàn)血事業(yè)的高質(zhì)量發(fā)展
- 化妝品市場未來發(fā)展趨勢預(yù)測與規(guī)劃
- 供銷職工餐廳管理辦法
- 醫(yī)療資質(zhì)銷售管理辦法
- 土壤污染治理技術(shù)
- 古詩詞賞析教學(xué)方案
- 河南酒店采購管理辦法
- 低碳生活綠色環(huán)保演示文稿
- 過盈配合壓入力計(jì)算公式
- 第八章-材料工程-倫理問題-全
- 婚前協(xié)議(保護(hù)女方利益)
- 奉賢區(qū)教育系統(tǒng)師德師風(fēng)建設(shè)學(xué)習(xí)測試附有答案
- 扶貧農(nóng)產(chǎn)品購銷合同協(xié)議(農(nóng)產(chǎn)品購銷合同模板)
- 汽車維修高級工考試試題及參考答案
- GB/T 5782-2016六角頭螺栓
- GB/T 23445-2009聚合物水泥防水涂料
- GB/T 13451.2-1992著色顏料相對著色力和白色顏料相對散射力的測定光度計(jì)法
- GB/T 11264-2012熱軋輕軌
評論
0/150
提交評論