軟件工程實(shí)用教程

出版時(shí)間:2012-9  出版社:周麗娟、 王華 清華大學(xué)出版社 (2012-09出版)  作者:周麗娟,王華 著  頁(yè)數(shù):287  

內(nèi)容概要

  《中國(guó)高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(應(yīng)用型)規(guī)劃教材:軟件工程實(shí)用教程》分為三個(gè)部分。第一部分為傳統(tǒng)的軟件工程,從軟件生存周期的角度出發(fā),介紹軟件可行性分析、軟件計(jì)劃、結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計(jì)、編碼、測(cè)試以及軟件維護(hù)階段的過程、方法、工具、文檔及案例。第二部分為面向?qū)ο蟮能浖こ?,以面向?qū)ο蠹夹g(shù)和UML語(yǔ)言為主線,介紹面向?qū)ο蟮母拍?、模型、分析、設(shè)計(jì)及實(shí)現(xiàn)過程。第三部分為軟件工程管理,簡(jiǎn)要介紹軟件項(xiàng)目管理、軟件質(zhì)量管理、軟件配置管理及軟件過程管理的內(nèi)容?!吨袊?guó)高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(應(yīng)用型)規(guī)劃教材:軟件工程實(shí)用教程》不僅介紹軟件工程的概念、原理、方法和技術(shù),而且強(qiáng)調(diào)方法和技術(shù)的實(shí)際應(yīng)用,既闡述了理論知識(shí),又介紹了具體的操作方法和案例分析?!  吨袊?guó)高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(應(yīng)用型)規(guī)劃教材:軟件工程實(shí)用教程》可作為高等院校計(jì)算機(jī)及相關(guān)專業(yè)“軟件工程”課程的教材或參考書,也可供軟件工程師、軟件項(xiàng)目管理者和應(yīng)用軟件的開發(fā)人員閱讀參考。

書籍目錄

第一部分 傳統(tǒng)的軟件工程 第1章 軟件工程概述 1.1 軟件的概念和特征 1.1.1 軟件的概念 1.1.2 軟件的分類 1.2 軟件危機(jī) 1.2.1 軟件危機(jī)的主要表現(xiàn) 1.2.2 產(chǎn)生軟件危機(jī)的原因 1.2.3 解決軟件危機(jī)的途徑 1.3 軟件工程 1.3.1 軟件工程的定義 1.3.2 軟件工程的目標(biāo) 1.3.3 軟件工程的研究?jī)?nèi)容 1.3.4 軟件工程的基本原理 1.4 軟件生存周期 1.4.1 軟件生存周期定義 1.4.2 軟件生存周期的基本任務(wù) 1.5 軟件生存周期模型 1.5.1 瀑布模型 1.5.2 原型模型 1.5.3 增量模型 1.5.4 螺旋模型 1.5.5 噴泉模型 1.5.6 形式化方法模型 1.5.7 基于組件的開發(fā)模型 1.5.8 第四代技術(shù)模型 1.5.9 混合模型 1.6 小結(jié) 習(xí)題 第2章 可行性研究與軟件開發(fā)計(jì)劃 2.1 可行性研究的任務(wù) 2.2 可行性研究的過程 2.3 成本/效益分析 2.3.1 成本估計(jì)方法 2.3.2 成本/效益分析方法 2.4 可行性研究報(bào)告 2.5 軟件開發(fā)計(jì)劃 2.5.1 軟件作用范圍 2.5.2 資源需求 2.5.3 進(jìn)度安排 2.6 軟件開發(fā)計(jì)劃說(shuō)明書 2.7 小結(jié) 習(xí)題 第3章 需求工程 3.1 軟件需求 3.1.1 業(yè)務(wù)需求 3.1.2 用戶需求 3.1.3 功能需求 3.1.4 非功能需求 3.2 需求工程過程 3.3 需求的獲取 3.3.1 需求獲取的過程 3.3.2 需求獲取的常用方法 3.4 需求分析 3.4.1 需求分析的特點(diǎn) 3.4.2 需求分析的原則 3.4.3 需求分析的任務(wù) 3.4.4 需求分析的方法 3.4.5 需求分析過程 3.5 需求定義 3.6 需求驗(yàn)證 3.7 需求管理 3.8 案例:小型教學(xué)管理系統(tǒng) 3.9 小結(jié) 習(xí)題 第4章 結(jié)構(gòu)化分析 4.1 結(jié)構(gòu)化分析方法 4.1.1 結(jié)構(gòu)化分析策略 4.1.2 SA的描述工具 4.1.3 SA的分析步驟 4.2 數(shù)據(jù)流圖DFD 4.2.1 數(shù)據(jù)流圖符號(hào) 4.2.2 繪制分層數(shù)據(jù)流圖的方法 4.2.3 實(shí)例 4.2.4 數(shù)據(jù)流圖的繪制與其他流程圖的差別 4.3 數(shù)據(jù)字典 4.3.1 數(shù)據(jù)字典的內(nèi)容 4.3.2 數(shù)據(jù)字典使用符號(hào) 4.3.3 數(shù)據(jù)字典條目實(shí)例 4.4 數(shù)據(jù)加工邏輯 4.4.1 結(jié)構(gòu)化語(yǔ)言 4.4.2 判定表 4.4.3 判定樹 4.5 實(shí)體關(guān)系圖 4.6 結(jié)構(gòu)化分析實(shí)例 4.7 小結(jié) 習(xí)題 第5章 總體設(shè)計(jì) 5.1 軟件設(shè)計(jì)基礎(chǔ) 5.1.1 軟件設(shè)計(jì)的目標(biāo) 5.1.2 軟件設(shè)計(jì)的任務(wù) 5.1.3 總體設(shè)計(jì)過程 5.2 軟件設(shè)計(jì)的基本原理 5.2.1 模塊化設(shè)計(jì)原理 5.2.2 抽象和逐步求精 5.2.3 信息隱蔽和局部化 5.2.4 模塊獨(dú)立性 5.2.5 軟件結(jié)構(gòu)設(shè)計(jì)優(yōu)化原則 5.3 表示軟件結(jié)構(gòu)的圖形 5.3.1 層次圖和HIPO圖 5.3.2 軟件結(jié)構(gòu)圖 5.4 結(jié)構(gòu)化設(shè)計(jì)方法 5.4.1 結(jié)構(gòu)化設(shè)計(jì)的流程 5.4.2 典型的數(shù)據(jù)流類型和系統(tǒng)結(jié)構(gòu) 5.4.3 變換分析 5.4.4 事物分析 5.5 總體設(shè)計(jì)文檔及復(fù)審 5.6 小結(jié) 習(xí)題 第6章 詳細(xì)設(shè)計(jì) 6.1 結(jié)構(gòu)化程序設(shè)計(jì) 6.2 詳細(xì)設(shè)計(jì)的任務(wù) 6.3 詳細(xì)設(shè)計(jì)的原則 6.4 詳細(xì)設(shè)計(jì)工具 6.4.1 程序流程圖 6.4.2 盒圖(N-S圖) 6.4.3 PAD圖 6.4.4 過程設(shè)計(jì)語(yǔ)言 6.4.5 詳細(xì)設(shè)計(jì)工具的選擇 6.5 程序復(fù)雜性度量 6.6 詳細(xì)設(shè)計(jì)文檔及設(shè)計(jì)復(fù)審 6.7 小結(jié) 習(xí)題 第7章 軟件編碼 7.1 程序設(shè)計(jì)語(yǔ)言 7.1.1 程序設(shè)計(jì)語(yǔ)言的特性 7.1.2 程序設(shè)計(jì)語(yǔ)言的分類 7.1.3 程序設(shè)計(jì)的選擇 7.2 程序設(shè)計(jì)的風(fēng)格 7.2.1 源程序文檔化 7.2.2 數(shù)據(jù)說(shuō)明 7.2.3 語(yǔ)句結(jié)構(gòu) 7.2.4 輸入和輸出 7.2.5 重用 7.3 效率 7.4 小結(jié) 習(xí)題 第8章 軟件測(cè)試 8.1 軟件測(cè)試基本理論 8.1.1 軟件測(cè)試的概念 8.1.2 軟件測(cè)試的原則 8.1.3 軟件測(cè)試過程 8.1.4 軟件測(cè)試方法 8.2 白盒測(cè)試技術(shù) 8.2.1 邏輯覆蓋法 8.2.2 基本路徑測(cè)試法 8.2.3 循環(huán)測(cè)試法 8.3 黑盒測(cè)試技術(shù) 8.3.1 等價(jià)類劃分法 8.3.2 邊界值分析法 8.3.3 錯(cuò)誤推測(cè)法 8.3.4 因果圖法 8.4 軟件測(cè)試策略 8.4.1 單元測(cè)試 8.4.2 集成測(cè)試 8.4.3 確認(rèn)測(cè)試 8.4.4 系統(tǒng)測(cè)試 8.5 小結(jié) 習(xí)題 第9章 軟件維護(hù) 9.1 軟件維護(hù)概述 9.1.1 軟件維護(hù)分類 9.1.2 軟件維護(hù)成本 9.2 軟件維護(hù)過程 9.2.1 軟件維護(hù)活動(dòng) 9.2.2 軟件維護(hù)技術(shù) 9.3 軟件可維護(hù)性 9.3.1 影響軟件可維護(hù)性的因素 9.3.2 軟件可維護(hù)性度量 9.3.3 提高可維護(hù)性的方法 9.4 軟件維護(hù)的副作用 9.4.1 代碼的副作用 9.4.2 數(shù)據(jù)副作用 9.4.3 文檔副作用 9.5 軟件再工程 9.5.1 軟件再工程概述 9.5.2 軟件再工程過程 9.5.3 軟件再工程方法 9.6 小結(jié) 習(xí)題 …… 第二部分 面向?qū)ο蟮能浖こ?第三部分 軟件工程管理

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   3.4 需求分析 3.4.1 需求分析的特點(diǎn) 需求分析是指開發(fā)人員要準(zhǔn)確理解用戶的要求,進(jìn)行細(xì)致的調(diào)查分析,將用戶非形式的需求陳述轉(zhuǎn)化為完整的需求定義,再由需求定義轉(zhuǎn)換到相應(yīng)的形式功能規(guī)約(需求規(guī)格說(shuō)明)的過程。需求分析雖處于軟件開發(fā)過程的開始階段,但它對(duì)于整個(gè)軟件開發(fā)過程以及軟件產(chǎn)品質(zhì)量是至關(guān)重要的。在計(jì)算機(jī)發(fā)展的早期,所求解問題的規(guī)模較小,需求分析被忽視。隨著軟件系統(tǒng)復(fù)雜性的提高及規(guī)模的擴(kuò)大,需求分析在軟件開發(fā)中所處的地位愈加突出,從而也愈加困難,它的難點(diǎn)主要體現(xiàn)在以下幾個(gè)方面。 (1)問題的復(fù)雜性。這是由用戶需求所涉及的因素繁多引起的,如運(yùn)行環(huán)境和系統(tǒng)功能等。 (2)交流障礙。需求分析涉及人員較多,如軟件系統(tǒng)用戶、問題領(lǐng)域?qū)<?、需求工程師和?xiàng)目管理員等,這些人具備不同的背景知識(shí),處于不同的角度,扮演不同角色,造成了相互之間交流的困難。 (3)不完備性和不一致性。由于各種原因,用戶對(duì)問題的陳述往往是不完備的,其各方面的需求還可能存在著矛盾,需求分析要消除其矛盾,形成完備及一致的定義。 (4)需求易變性。用戶需求的變動(dòng)是一個(gè)極為普遍的問題,即使是部分變動(dòng),也往往會(huì)影響到需求分析的全部,導(dǎo)致不一致性和不完備性。 為了克服上述困難,人們主要圍繞著需求分析的方法及自動(dòng)化工具(如CASE技術(shù))等方面進(jìn)行研究。 3.4.2 需求分析的原則 目前存在著許多需求分析的方法,雖然各種方法都有其獨(dú)特的描述方法,但不論采用何種方法,需求分析都必須遵循以下3個(gè)基本原則。 1.能夠表達(dá)和理解問題的數(shù)據(jù)域和功能域 所有軟件開發(fā)的最終目的都是為了解決數(shù)據(jù)處理的問題,數(shù)據(jù)處理的本質(zhì)就是將一種形式的數(shù)據(jù)轉(zhuǎn)換成另一種形式的數(shù)據(jù),即通過進(jìn)行一系列加工將輸入的原始數(shù)據(jù)轉(zhuǎn)換為所需的結(jié)果數(shù)據(jù)。需求分析階段必須明確系統(tǒng)中應(yīng)具備的每一個(gè)加工、加工的處理對(duì)象和由加工所引起的數(shù)據(jù)形式的變化。 2.能夠?qū)?fù)雜問題分解化簡(jiǎn) 為了便于問題的解決和實(shí)現(xiàn),在需求分析過程中需要對(duì)于原本復(fù)雜的問題按照某種合適的方式進(jìn)行分解(對(duì)功能域和數(shù)據(jù)域均可)。分解可以是同一層次上的橫向分解,也可以是多層上的縱向分解。每一步分解都是在原有基礎(chǔ)上對(duì)系統(tǒng)的細(xì)化,使系統(tǒng)的理解和實(shí)現(xiàn)變得較為容易。 3.能夠給出系統(tǒng)的邏輯表示和物理表示 系統(tǒng)需求的邏輯表示用于指明系統(tǒng)所要達(dá)到的功能要求和需要處理的數(shù)據(jù),不涉及實(shí)現(xiàn)的細(xì)節(jié)。系統(tǒng)需求的物理表示用于指明處理功能和數(shù)據(jù)結(jié)構(gòu)的實(shí)際表現(xiàn)形式,通常由系統(tǒng)中的設(shè)備決定。如處理數(shù)據(jù)的來(lái)源,某些軟件可能由終端輸入,另一些軟件可能由特定設(shè)備提供。給出系統(tǒng)的邏輯表示和物理表示對(duì)滿足系統(tǒng)處理需求所提出的邏輯限制條件和系統(tǒng)中其他成分提出的物理限制是必不可少的。結(jié)構(gòu)化分析方法和面向?qū)ο蠓治龇椒ǘ甲裱陨显瓌t。 3.4.3 需求分析的任務(wù) 需求分析的基本任務(wù)是準(zhǔn)確地回答“系統(tǒng)必須做什么?”這個(gè)問題。需求分析的任務(wù)不是確定系統(tǒng)怎樣完成工作,而是確定系統(tǒng)必須完成哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。需求分析階段的具體任務(wù)如下所述。 1.確定綜合需求 對(duì)系統(tǒng)的綜合需求有下述四個(gè)方面。 (1)系統(tǒng)功能需求:應(yīng)該劃分出系統(tǒng)必須完成的所有功能。 (2)系統(tǒng)性能需求:指待開發(fā)的軟件的技術(shù)性能指標(biāo),如存儲(chǔ)容量、運(yùn)行時(shí)間等限制。 (3)環(huán)境的需求:指軟件運(yùn)行時(shí)所需要的軟、硬件(如機(jī)型、外設(shè)、操作系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)等)的要求。 (4)將來(lái)可能提出的需求:應(yīng)該明確地列出那些雖然不屬于當(dāng)前系統(tǒng)開發(fā)范疇,但是據(jù)分析將來(lái)很可能會(huì)提出來(lái)的要求。這樣做的目的是在設(shè)計(jì)過程中對(duì)系統(tǒng)將來(lái)可能的擴(kuò)充和修改預(yù)做準(zhǔn)備,以便一旦需要時(shí)能比較容易地進(jìn)行這種擴(kuò)充和修改。 2.分析系統(tǒng)的數(shù)據(jù)要求 任何一個(gè)軟件系統(tǒng)本質(zhì)上都是信息處理系統(tǒng),系統(tǒng)必須處理的信息和系統(tǒng)應(yīng)該產(chǎn)生的信息在很大程度上決定了系統(tǒng)的面貌,對(duì)軟件設(shè)計(jì)有深遠(yuǎn)影響,因此,必須分析系統(tǒng)的數(shù)據(jù)要求,這是軟件需求分析的一個(gè)重要任務(wù)。分析系統(tǒng)的數(shù)據(jù)要求通常采用建立概念模型的方法。復(fù)雜的數(shù)據(jù)由許多基本的數(shù)據(jù)元素組成,數(shù)據(jù)結(jié)構(gòu)表示數(shù)據(jù)元素之間的邏輯關(guān)系。利用數(shù)據(jù)字典可以全面準(zhǔn)確地定義數(shù)據(jù),但是數(shù)據(jù)字典的缺點(diǎn)是不夠形象直觀。為了提高可理解性,常常利用圖形工具輔助描繪數(shù)據(jù)結(jié)構(gòu)。常用的圖形工具有層次方框圖和Warnier圖。 3.導(dǎo)出系統(tǒng)的邏輯模型 綜合上述兩項(xiàng)分析的結(jié)果可以導(dǎo)出系統(tǒng)的詳細(xì)的邏輯模型,通常用數(shù)據(jù)流圖、數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型。 4.編寫文檔 編寫文檔的步驟如下: (1)編寫“需求規(guī)格說(shuō)明書”,把雙方共同的理解與分析結(jié)果用規(guī)范的方式描述出來(lái),作為今后各項(xiàng)工作的基礎(chǔ)。

編輯推薦

《中國(guó)高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(應(yīng)用型)規(guī)劃教材:軟件工程實(shí)用教程》特點(diǎn)在于理論、方法與實(shí)踐相結(jié)合,針對(duì)傳統(tǒng)的軟件工程、面向?qū)ο蟮能浖こ毯蛙浖こ坦芾砣糠?,從?shí)踐角度介紹了軟件工程的基本概念、基本原理、實(shí)用的開發(fā)方法和技術(shù)?!吨袊?guó)高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)(應(yīng)用型)規(guī)劃教材:軟件工程實(shí)用教程》利用案例分析,對(duì)軟件的分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試到維護(hù)過程進(jìn)行全面講述,力求使讀者在學(xué)習(xí)基本理論和技術(shù)過程中掌握軟件工程的方法解決應(yīng)用問題。

圖書封面

評(píng)論、評(píng)分、閱讀與下載


    軟件工程實(shí)用教程 PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬(wàn)本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7