出版時間:2011-2 出版社:彭 重慶大學(xué)出版社 (2011-02出版) 作者:彭 編 頁數(shù):242
內(nèi)容概要
《軟件工程》著重從實用的角度講述軟件工程的基本原理、概念和技術(shù)方法,同時也注意該書的全面性、系統(tǒng)性。 《軟件工程》共分為9章。第1章,軟件工程概論,主要介紹軟件和軟件工程的相關(guān)概念,以及軟件工程的基本原理和方法;第2章,軟件計劃與可行性研究,主要介紹可行性分析,成本/效益分析技術(shù)和方法,以及如何制訂科學(xué)的軟件開發(fā)計劃;第3章,軟件需求分析,主要介紹軟件需求分析的任務(wù)、過程、方法和工具;第4章,軟件結(jié)構(gòu)設(shè)計,主要介紹軟件結(jié)構(gòu)設(shè)計的概念、原理、方法及具體運用過程;第5章,軟件詳細設(shè)計,主要介紹結(jié)構(gòu)化程序設(shè)計的思想及描述工具,面向數(shù)據(jù)結(jié)構(gòu)的詳細設(shè)計方法;第6章,軟件編碼設(shè)計,主要介紹語言的特性、選擇的原則以及編碼的風(fēng)格和效率;第7章,軟件測試,主要介紹軟件測試概念、方法、過程以及用例設(shè)計;第8章,軟件維護,主要介紹軟件維護的有關(guān)概念、方法;第9章,面向?qū)ο蟮能浖_發(fā)技術(shù)概述,主要介紹面向?qū)ο蟮母拍?、對象分析、對象設(shè)計及對象實現(xiàn)的方法及其應(yīng)用,以及組件技術(shù)。
書籍目錄
第1章 軟件工程概論1.1 軟件綜述1.1.1 軟件的發(fā)展1.1.2 軟件的定義1.1.3 軟件的特性1.1.4 軟件的分類1.2 軟件危機1.3 軟件工程1.3.1 軟件工程的概念1.3.2 軟件工程的基本原理1.3.3 軟件工程研究的內(nèi)容1.3.4 軟件工程方法學(xué)1.4 軟件生命周期1.5 軟件開發(fā)模型1.5.1 瀑布模型1.5.2 快速原型模型1.5.3 增量模型1.5.4 螺旋模型1.5.5 基于構(gòu)件的開發(fā)模型1.5.6 智能模型1.6 小結(jié)習(xí)題1第2章 軟件計劃與可行性研究2.1 軟件計劃2.1.1 軟件的作用范圍2.1.2 資源需求2.1.3 進度安排2.2 可行性研究2.2.1 可行性研究的任務(wù)2.2.2 可行性研究的步驟2.2.3 可行性研究的CASE工具2.3 成本/效益分析2.3.1 軟件開發(fā)成本估計2.3.2 效益度量方法2.3.3 效益分析方法2.4 可行性研究報告的書寫2.5 小結(jié)習(xí)題2第3章 軟件需求分析3.1 需求分析的任務(wù)3.2 需求分析的步驟3.3 需求分析方法和原則3.4 需求分析的CASE工具3.4.1 層次方框圖3.4.2 Warnier圖3.4.3 IP0圖3.4.4 E-R圖3.4.5 狀態(tài)遷移圖3.4.6 Petri網(wǎng)3.5 軟件需求驗證3.5.1 軟件需求規(guī)格說明的主要內(nèi)容3.5.2 軟件需求的驗證3.6 小結(jié)習(xí)題3第4章 軟件結(jié)構(gòu)設(shè)計4.1 概述4.1.1 軟件設(shè)計的過程4.1.2 軟件結(jié)構(gòu)設(shè)計的目標(biāo)4.1.3 軟件結(jié)構(gòu)設(shè)計的任務(wù)4.1.4 軟件結(jié)構(gòu)設(shè)計的方法4.2 結(jié)構(gòu)化設(shè)計的概念和原理4.2.1 抽象和細化4.2.2 自頂向下,逐步求精4.2.3 信息隱藏和局部化4.2.4 模塊化4.2.5 模塊獨立性4.3 結(jié)構(gòu)設(shè)計的原則4.4 結(jié)構(gòu)設(shè)計的圖形工具4.4.1 層次圖和HIP0圖4.4.2 結(jié)構(gòu)圖4.5 面向數(shù)據(jù)流的設(shè)計方法4.5.1 數(shù)據(jù)流圖的類型4.5.2 結(jié)構(gòu)設(shè)計過程4.5.3 變換分析4.5.4 事務(wù)分析4.5.5 軟件結(jié)構(gòu)的優(yōu)化4.6 小結(jié)習(xí)題4第5章 軟件詳細設(shè)計5.1 結(jié)構(gòu)化程序設(shè)計5.1.1 結(jié)構(gòu)化的控制結(jié)構(gòu)5.1.2 逐步細化的實現(xiàn)方法5.1.3 結(jié)構(gòu)化程序設(shè)計的特點5.2 詳細設(shè)計的工具5.2.1 程序流程圖5.2.2 盒圖(N-S)圖5.2.3 問題分析圖(PAD圖)5.2.4 判定表5.2.5 判定樹5.2.6 過程設(shè)計語言(PDL)5.3 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法5.3.1 Jackson圖5.3.2 Jackson方法5.4 程序復(fù)雜度的概念及度量方法5.4.1 程序圖5.4.2 程序復(fù)雜度的度量方法5.5 小結(jié)習(xí)題5第6章 軟件編碼設(shè)計6.1 編碼設(shè)計的目的6.2 編碼的工具語言6.2.1 程序設(shè)計語言的分類6.2.2 程序設(shè)計語言的特性6.2.3 程序設(shè)計語言的選擇6.3 編碼風(fēng)格及軟件效率6.3.1 編碼風(fēng)格6.3.2 軟件效率6.4 小結(jié)習(xí)題6第7章 軟件測試7.1 軟件測試概述7.1.1 軟件測試的概念7.1.2 軟件測試的目的7.1.3 軟件測試的原則7.1.4 軟件測試方法7.2 軟件測試過程模型7.3 軟件開發(fā)過程的測試步驟7.3.1 單元測試7.3.2 集成測試7.3.3 系統(tǒng)測試7.3.4 驗收測試7.4 軟件測試用例的設(shè)計7.4.1 測試用例概述7.4.2 白盒測試法的用例設(shè)計7.4.3 黑盒測試法的用例設(shè)計7.5 軟件調(diào)試7.5.1 調(diào)試原則7.5.2 軟件調(diào)試的步驟7.5.3 軟件調(diào)試的策略7.6 小結(jié)習(xí)題7第8章 軟件維護8.1 軟件維護的任務(wù)和分類8.1.1 改正性維護(correctivemaintenance)8.1.2 適應(yīng)性維護(adaptivemaintenance)8.1.3 完善性維護(perfectivemaintenance)8.1.4 預(yù)防性維護(preventivemaintenance)8.2 軟件維護的特點8.2.1 非結(jié)構(gòu)化維護和結(jié)構(gòu)化維護8.2.2 軟件維護的困難性8.2.3 軟件維護的費用8.3 軟件的可維護性8.3.1 軟件可維護性的定義8.3.2 影響軟件可維護性的因素8.3.3 文檔8.3.4 軟件可維護性的定量度量8.3.5 提高軟件可維護性的方法8.4 軟件維護活動8.4.1 軟件維護組織機構(gòu)8.4.2 軟件維護申請報告8.4.3 軟件維護工作流程8.4.4 維護檔案記錄8.4.5 維護評價8.5 小結(jié)習(xí)題8第9章 面向?qū)ο蟮能浖_發(fā)技術(shù)概述9.1 面向?qū)ο蟮母拍?.2 面向?qū)ο蟮慕?.2.1 面向?qū)ο蠓椒ǖ拈_發(fā)模型9.2.2 面向?qū)ο蠓椒?.2.3 面向?qū)ο竽P?.3 面向?qū)ο蟮姆治?.3.1 面向?qū)ο蠓治龅?個模型與5個層次9.3.2 構(gòu)造對象模型9.3.3 構(gòu)造對象動態(tài)模型9.3.4 建立功能模型9.3.5 定義服務(wù)9.4 面向?qū)ο蟮脑O(shè)計9.4.1 面向?qū)ο笤O(shè)計的概念9.4.2 問題域子系統(tǒng)設(shè)計9.4.3 人機交互子系統(tǒng)設(shè)計9.4.4 任務(wù)管理子系統(tǒng)設(shè)計9.4.5 數(shù)據(jù)管理子系統(tǒng)設(shè)計9.4.6 服務(wù)與關(guān)聯(lián)的設(shè)計9.4.7 面向?qū)ο笤O(shè)計的優(yōu)化9.5 面向?qū)ο蟮膶崿F(xiàn)9.5.1 面向?qū)ο髮崿F(xiàn)的技術(shù)支持9.5.2 面向?qū)ο笳Z言選擇9.5.3 程序設(shè)計風(fēng)格9.5.4 面向?qū)ο蟮臏y試9.6 組件技術(shù)簡介9.6.1 組件的概念及特點9.6.2 組件模型9.6.3 組件開發(fā)模式9.7 小結(jié)習(xí)題9參考文獻
章節(jié)摘錄
版權(quán)頁:插圖:(2)硬件資源硬件資源包括開發(fā)系統(tǒng)、運行平臺和新系統(tǒng)的其他硬件。對于一個專業(yè)的開發(fā)機構(gòu)來說,為了提高軟件的開發(fā)效率,常常配備有專門的軟件開發(fā)系統(tǒng)(包含硬件和軟件)。這類開發(fā)系統(tǒng)中提供了大量的開發(fā)工具,這些開發(fā)工具不僅支持軟件開發(fā)的功能,還支持硬件開發(fā)和系統(tǒng)仿真等。在使用開發(fā)系統(tǒng)進行開發(fā)時,軟件計劃中主要考慮的是開發(fā)系統(tǒng)允許使用的時間安排和機時的消耗問題,這都涉及成本的估算和進度安排。在開發(fā)某些專用軟件時,還需要考慮某些特殊的硬件資源。例如,在開發(fā)自動排版軟件時,到達某一時刻就需要一臺照排機等。因此,在制訂計劃時,需要全面細致的考慮。(3)軟件資源軟件資源包括支撐軟件和可重用軟件兩大類。支撐軟件的范圍極為廣泛,它包含了所有的工具軟件。最一般的支撐軟件是操作系統(tǒng)、編譯程序、編輯連接程序等。另外,在軟件工程的各個階段都有相應(yīng)的支撐軟件可供采用。在需求分析階段,有自動的規(guī)格需求說明制作程序;在設(shè)計階段,有設(shè)計語言處理程序、流程圖、框圖生成程序;在測試階段,有測試驅(qū)動程序和分析程序等。適當(dāng)?shù)厥褂弥诬浖?,可以提高軟件開發(fā)速度和軟件生產(chǎn)率,也可以提高軟件質(zhì)量。但為了要使支撐軟件能在開發(fā)系統(tǒng)上運行,可能要花費巨大的人力資源和高昂的資金成本。故制訂計劃者在選擇支撐軟件時,要充分考慮到效益/成本問題。如果沒有對可重用性的認識,任何關(guān)于軟件資源的討論都將是不完整的,可重用性是指軟件建筑塊的創(chuàng)建及重用。Bennatan建議在計劃進行過程中應(yīng)該考慮的可重用軟件資源:①可直接使用的構(gòu)件:已有的,能夠從第三方廠商獲得或已經(jīng)在以前的項目中開發(fā)過的軟件。這些構(gòu)件已經(jīng)經(jīng)過驗證及確認且可以直接用在當(dāng)前的項目中。②具有完全經(jīng)驗的構(gòu)件:已有的為以前類似于當(dāng)前要開發(fā)的項目建立的規(guī)約、設(shè)計、代碼或測試數(shù)據(jù)。當(dāng)前軟件項目組的成員在這些構(gòu)件所代表的應(yīng)用領(lǐng)域中具有豐富的經(jīng)驗。因此,對于這類構(gòu)件進行所需的修改其風(fēng)險相對較小。
編輯推薦
《軟件工程》:21世紀(jì)高等學(xué)校本科系列教材·計算機科學(xué)與技術(shù)專業(yè)
圖書封面
評論、評分、閱讀與下載