內容簡介
《軟體工程基礎教程》可作為高等院校計算機、軟體工程、通信或電子類等相關專業的本科生或高職高專院校專科生的教材,也可作為工程技術人員及計算機愛好者的自學用書。
圖書目錄
第1章軟體工程概述
1.1軟體與軟體危機
1.1.1軟體的定義、特點及
分類
1.1.2軟體開發的演變
過程
1.1.3軟體危機
1.2軟體工程
1.2.1軟體工程的定義
1.2.2軟體工程的基本
原理
1.2.3軟體工程的內容
1.2.4軟體工程的目標及
原則
1.3軟體工程過程
1.4軟體生存周期
1.5軟體生存周期模型
1.5.1瀑布模型
1.5.2快速原型模型
1.5.3增量模型
1.5.4螺旋模型
1.5.5噴泉模型
1.5.6智慧型模型
1.5.7基於構件的過程
模型
1.5.8統一過程模型
1.5.9形式化模型
1.6小結
習題1
第2章需求分析
2.1可行性研究
2.1.1問題定義
2.1.2可行性研究的任務
2.1.3可行性研究的步驟
2.1.4系統流程圖
2.2需求分析
2.2.1需求的概念
2.2.2需求的層次
2.2.3需求分析的任務
2.2.4需求獲取的方法
2.2.5需求分析的原則
2.2.6需求分析的方法
2.3結構化分析方法
2.3.1結構化分析方法
的思想
2.3.2結構化分析方法
的步驟
2.3.3結構化分析方法的
描述工具
2.4數據流圖
2.4.1數據流圖的圖符
2.4.2分層數據流圖
2.4.3數據流圖的實例——
銷售管理系統
2.4.4構造分層圖的一般
原則
2.5數據字典
2.5.1數據字典中的詞條
2.5.2數據字典編寫的要求
及使用
2.6加工邏輯說明
2.6.1結構化語言
2.6.2判定表
2.6.3判定樹
2.7關係數據理論
2.7.1關係規範化的
原因
2.7.2關係模式規範化
2,7.3E—R方法
2.7.4E—R圖向關係模型
的轉換
2.7.5關係模型的最佳化
2.8小結
習題2
第3章概要設計
3.1概要設計綜述
3.1.1概要設計的內容
3.1.2軟體體系結構
3.2軟體結構設計的概念和
原理
3.2.1模組和模組化
3.2.2抽象
3.2.3信息隱蔽和局部化
3.2.4模組獨立性及其
度量
3.3軟體結構設計的準則
3.4概要設計工具
3.4.1IPO圖
3.4.2HIPO圖
3.4.3軟體結構圖
3.5結構化設計的方法
3.5.1數據流圖的類型
3.5.2設計過程
3.5.3設計最佳化
3.6小結
習題3
第4章詳細設計及實現
4.1結構化程式設計
4.2用戶界面設計
4.2.1用戶類型
4.2.2用戶界面的設計
思想
4.2.3用戶界面設計的
原則
4.3過程設計的工具
4.3.1程式設計流程圖
4.3.2N—S圖
4.3.3PAD圖
4.3.4過程設計語言
4.4程式設計語言及設計風格
4.4.1程式設計語言的發展
與分類
4.4.2程式設計語言的
選擇
4.4.3程式設計的風格
4.5程式設計的算法與效率
4.5.1程式設計的算法
4.5.2程式的運行效率
4.6小結
習題4
第5章測試與維護
5.1測試的基礎
5.1.1軟體測試的概念
5.1.2軟體測試的目標
5.1.3軟體測試的原則
5.1.4軟體測試的對象
5.2測試的方法
5.2.1靜態測試與動態
測試
5.2.2黑盒測試法與白盒
測試法
5.3白盒技術測試用例的設計
5.3.1邏輯覆蓋
5.3.2循環覆蓋
5.3.3基本路徑測試
5.4黑盒技術的測試用例的
設計
5.4.1等價類劃分法
5.4.2邊界值分析法
5.4.3因果圖法
5.5測試的過程
5.5.1單元測試
5.5.2集成測試
5.5.3確認測試
5.5.4系統測試
5.5.5驗收測試
5.6軟體維護的分類
5.7軟體維護的特點
5.7.1結構化維護與非結構
化維護
5.7.2維護的代價
5.7.3軟體維護中存在的
問題
5.8軟體可維護性
5.8.1軟體可維護性的
定義
5.8.2件可維護性度量
5.8.3提高軟體可維護性
的方法
5.9軟體再工程
5.9.1重構
5.9.2逆向工程
5.9.3正向工程
5.10軟體測試工具
5.10.1軟體自動化測試的
簡介
5.10.2LoadRunner測試
工具簡介
5.10.3LoadRunner的
功能
5.10.4生成腳本
5.10.5播放腳本
5.10.6準備用於負載測試
的腳本
5.11小結
習題5
第6章Rational Rose建模工具
6.1Rational Rose的特點
6.1.1Rational Rose支持三
層結構方案
6.1.2Rational Rose為大型軟體
提供了可塑性極強的
解決方案
6.1.3支持大型複雜項目
6.1.4可與多種開發環境無縫
集成
6.1.5Rational Rose支持UML、
OOSE和OMT
6.2Rational Rose的啟動
6.3Rational Rose主界面視窗
6.4Rational Rose的基本操作
6.4.1瀏覽模型結構
6.4.2保存模型
6.4.3增加或刪除包
6.4.4增加或刪除模型
元素
6.4.5自定義工具列
6.5在Rational Rose環境下建立
UML模型
6.5.1建立用例圖
6.5.2建立邏輯視圖
6.5.3建立構件圖
6.5.4部署圖
6.6小結
習題6
第7章面向對象方法學基礎
7.1面向對象的方法學
7.1.1面向對象方法的
要點
7.1.2面向對象的開發
方法
7.1.3面向對象建模
7.1.4面向對象方法與傳統
軟體方法的比較
7.2面向對象的基本概念
7.2.1對象
7.2.2其他概念
7.3小結
習題7
第8章面向對象的分析
8.1UML概述
8.1.1面向對象的開發
方法
8.1.2UML的定義
8.1.3UML中的圖
8.1.4UML在不同階段的
套用
8.1.5UML模型
8.2小結
習題8
第9章UMl元素符號
9.1UML基本元素介紹
9.2基本關係
9.3UML中的圖和視圖
9.3.1UML中的圖
9.3.2UML中的視圖
9.4小結
習題9
第10章類圖、對象圖與包圖
10.1類圖的概念
10.1.1類圖
10.1.2類圖的作用
10.1.3類圖的組成元素
10.2UML中的類和表示
10.2.1類的表示
10.2.2類的種類
10.2.3類圖中的關係
10.3對象圖的概念和表示
10.3.1對象
10.3.2對象圖
10.4包圖的概念及表示
10.4.1包圖的概念
10.4.2包的表示
10.4.3包圖中的關係
10.5小結
習題10
第11章用例圖
11.1需求分析與用例圖
11.1.1需求分析簡介
11.1.2需求分析與建模
11.2用例圖
11.2.1用例圖的概念
11.2.2用例的特徵
11.2.3用例圖的作用
11.2.4用例的描述
11.2.5用例圖之間的
關係
11.2.6用例圖的實現
11.2.7用例圖的測試
11.3參與者
11.3.1參與者的識別
11.3.2參與者之間的
關係
11.4小結
習題11
第12章活動圖
12.1活動圖的概念
12.2活動圖的分類
12.3構建活動圖
12.4小結
習題12
第13章互動圖
13.1順序圖
13.1.1順序圖的概念
13.1.2順序圖的表示
13.1.3順序圖的循環和
分支
13.1.4繪製順序圖
13.2通信圖
13.2.1通信圖的概念
13.2.2通信圖的表示
13.2.3建立通信圖的
步驟
13.3順序圖與通信圖比較
13.4互動圖的繪製
13.5小結
習題13
第14章狀態機圖
14.1狀態機圖
14.1.1狀態機圖的基本
元素
14.1.2轉換(1Yansition)
14.1.3偽狀態(f}seudo Stat
14.1.4複合狀態
14.2狀態機圖的例子
14.3狀態機圖套用範圍
14.4小結
習題14
第15章軟體項目管理
15.1軟體項目成本管理
15.2軟體項目進度管理
15.3軟體項目配置管理
15.4軟體項目質量管理
15.5軟體項目風險管理
15.6軟體項目的組織
15.6.1軟體項目的組織
模式
15.6.2軟體項目組管理
機制
15.6.3人員配備
15.7軟體項目團隊管理
15.7.1軟體項目團隊
15.7.2軟體項目團隊
管理
15.7.3軟體項目團隊
建設
15.8小結
習題15
第16章軟體工程新技術
16.1軟體復用技術
16.1.1軟體復用概念及
分類
16.1.2軟體復用的關鍵技術
和復用粒度
16.2計算機輔助軟體工程
技術
16.2.1 CASE的基本
概念
16.2.2 CASE工具與集成
CASE環境
16.3軟體過程與標準化
16.3.1軟體過程及其
改進
16.3.2ISO 9000標準
16.4小結
習題16
參考文獻
編輯推薦
《軟體工程基礎教程(英文版)》由淺入深、循序漸進地介紹了規範化的軟體開發方法所涉及的概念和方法。內容包括過程模型、軟體需求、設計工程、生產率和工作量度量、軟體測試、軟體維護、質量管理、項目管理和風險管理等內容,最後介紹了一些常用的軟體開發工具,並給出編碼風格上的建議。《軟體工程基礎教程(英文版)》內容注重理論與實踐結合,參考了IEEE和ACM關於軟體工程的10個知識體系內容。針對中國學生英文水平,做了針對性的編寫,並對重點難點內容進行了中文解釋。《軟體工程基礎教程(英文版)》配有線上習題、電子課件、案例分析、實驗指導等教學資源。
《軟體工程基礎教程(英文版)》將闡釋:
軟體工程的發展背景和發展趨勢如何?
IEEE和ACM軟體知識體系建議的軟體工程的主要內容有哪些?
軟體工程的共同演進方法核心內容是什麼?
經典的軟體工程流程包含哪些主要環節?
軟體工程的主要理論與實踐如何結合?
如何建立一個全局的需求分析、設計、測試與維護的軟體工程觀?
常用的軟體開發工具和編碼規範有哪些?