本書全面、系統地介紹了軟件工程的概念、原理和典型的技術方法。
全書共分l2章。第1章概括介紹了軟件工程的發展和基本原理,還對具有代表性的CASE工具進行了簡要介紹,討論了軟件工程職業道德規范,并對軟件工程的發展趨勢進行了展望;第2章討論了軟件過程的基本活動和常用的軟件開發方法,并介紹了典型的軟件過程模型和微軟公司的軟件開發過程實例;第3章主要介紹了常用軟件項目立項的方法、可行性分析、軟件項目團隊的建立以及軟件項目立項文檔的編寫;第4章主要介紹了需求分析的過程、方法和軟件需求分析文檔的編寫;第5章、第6章分別介紹了軟件的總體設計和詳細設計;第7~9章分別介紹了軟件編碼、測試與調試、維護;第l0章介紹了面向對象的方法學;第ll章介紹了統一建模語言(UML);第l2章介紹了軟件項目管理。為加強對學生實踐能力的培養,各章最后大都設置了“實戰訓練”和“討論”環節。
本書可作為高職高專學校軟件工程課程的教材,也可作為軟件開發人員的參考書。
第1章 概述
1.1 軟件
1.1.1 軟件的特點及分類
1.1.2 軟件的發展
1.1.3 軟件危機及其表現
1.1.4 軟件危機產生的主要原因
1.1.5 解決軟件危機的途徑
1.2 軟件工程
1.2.1 軟件工程的概念
1.2.2 軟件工程的三要素
1.3 軟件生命周期
1.4 軟件工程的目標
1.5 軟件工程的開發原則
1.6 軟件工程方法學
1.7 計算機輔助軟件工程
第1章 概述
1.1 軟件
1.1.1 軟件的特點及分類
1.1.2 軟件的發展
1.1.3 軟件危機及其表現
1.1.4 軟件危機產生的主要原因
1.1.5 解決軟件危機的途徑
1.2 軟件工程
1.2.1 軟件工程的概念
1.2.2 軟件工程的三要素
1.3 軟件生命周期
1.4 軟件工程的目標
1.5 軟件工程的開發原則
1.6 軟件工程方法學
1.7 計算機輔助軟件工程
1.8 軟件工程與其他相關學科的關系
1.9 軟件工程職業道德規范
1.10 軟件工程發展趨勢
1.11 實戰訓練
本章小結
習題1
第2章 軟件過程
2.1 軟件過程的概念
2.1.1 軟件過程的定義
2.1.2 軟件過程的基本活動
2.1.3 軟件過程的制品
2.2 典型的軟件過程模型
2.2.1 瀑布模型
2.2.2 增量模型
2.2.3 快速原型模型
2.2.4 螺旋模型
2.2.5 噴泉模型
2.2.6 V型模型
2.2.7 形式化方法模型
2.2.8 組合模型
2.3 軟件開發方法簡述
2.3.1 結構化的開發方法
2.3.2 面向數據結構的開發方法
2.3.3 面向對象的開發方法
2.3.4 原型化開發方法
2.4 案例微軟公司的軟件開發過程
2.4.1 微軟開發過程管理的基本原則
2.4.2 微軟公司的軟件開發過程模型
2.5 實戰訓練
本章小結
習題2
第3章 軟件項目立項
3.1 軟件項目立項方法
3.1.1 委托開發項目
3.1.2 自主開發項目
3.2 軟件可行性分析
3.2.1 可行性分析的內容
3.2.2 可行性分析的步驟
3.3 軟件項目規模成本估算
3.3.1 代碼行估算技術
3.3.2 功能點估算法
3.3.3 類比估算法
3.3.4 自下而上估算法
3.3.5 專家估算法
3.4 成本一效益分析
3.5 制定軟件項目開發計劃
……
第4章 需求分析
第5章 軟件的總體設計
第6章 軟件的詳細設計
第7章 軟件編碼
第8章 軟件測試與調試
第9章 軟件維護
第10章 面向對象的方法學
第11章 統一建模語言(UML)
第12章 軟件項目管理
第附錄 軟件開發過程中的文檔