《軟件工程/高等學校本科計算機類專業(yè)應用型人才培養(yǎng)研究項目規(guī)劃教材》由淺入深、系統地介紹了軟件工程的基本概念、基本原理、軟件開發(fā)方法和技術、軟件測試與維護、軟件項目管理與質量保證,重點介紹了面向對象分析與面向對象設計。 配合知識點的介紹,《軟件工程/高等學校本科計算機類專業(yè)應用型人才培養(yǎng)研究項目規(guī)劃教材》各章有簡潔的舉例,并以一個規(guī)模和難度適中的項目為例貫穿書中的主要章節(jié),將軟件工程的概念、理論和技術融人實踐當中,加深讀者對軟件工程知識的認識和理解。同時,在每章后有與之對應的習題,供讀者復習鞏固。 《軟件工程/高等學校本科計算機類專業(yè)應用型人才培養(yǎng)研究項目規(guī)劃教材》可作為高等院校軟件工程、計算機及相關專業(yè)軟件工程課程的教材或教學參考書,也可供程序員、軟件測試工程師、軟件項目管理人員及其他專業(yè)技術人員參考。
第1章 概論
1.1 計算機軟件
1.1.1 計算機軟件的定義
1.1.2 計算機軟件的特征
1.1.3 計算機軟件的分類
1.1.4 計算機軟件的發(fā)展歷程
1.2 軟件危機的表現及產生的原因
1.2.1 軟件危機的表現
1.2.2 軟件危機產生的原因
1.3 軟件危機解決之道:軟件工程
1.3.1 軟件工程的定義
1.3.2 軟件工程的基本原理
1.4 軟件工程知識體SWEBOK V3.0
1.4.1 SWEBOK V3.0的組成
1.4.2 SWEBOK指南的特點
本章小結
習題
第2章 軟件工程過程模型
2.1 軟件生命周期
2.1.1 軟件定義期
2.1.2 軟件開發(fā)期
2.1.3 軟件運行與維護期
2.2 建造-修補模型
2.3 瀑布模型
2.4 快速原型開發(fā)模型
2.5 增量模型
2.6 極限編程
2.7 同步一穩(wěn)定模型
2.8 螺旋模型
2.9 面向對象的生命周期模型
2.10 Rational統一過程
2.11 案例引入
本章小結
習題
第3章 傳統軟件工程
3.1 結構化方法概述
3.2 結構化需求分析方法
3.2.1 需求分析的重要性
3.2.2 需求分析的困難
3.2.3 軟件需求分析的任務
3.2.4 軟件需求過程
3.2.5 軟件需求獲取
3.2.6 結構化分析方法
3.2.7 數據流圖
3.2.8 數據字典
3.2.9 數據加工邏輯說明
3.2.10 系統動態(tài)分析
3.2.11 數據及數據庫需求
3.2.12 原型化方法
3.2.13 軟件復用
3.2.14 需求文檔的編寫與審查
3.3 結構化設計方法
3.3.1 軟件設計的概念和原則
3.3.2 結構化設計的目標和任務
3.3.3 結構化設計基礎
3.3.4 模塊獨立性
3.3.5 概要設計
3.3.6 詳細設計
本章小結
習題
第4章 面向對象基礎
4.1 面向對象概述
4.2 面向對象的基本概念
4.3 UHL基礎
4.3.1 軟件架構的“4+1”視圖模型
4.3.2 UHL2的圖形
4.4 模式
4.4.1 模式概述
4.4.2 模式的分類
4.4.3 運用模式的意義
本章小結
習題
第5章 可行性分析與項目計劃制定
5.1 可行性分析的內容
5.2 經濟可行性
5.3 技術可行性
5.4 風險分析
5.4.1 風險標識
5.4.2 風險估算
5.4.3 風險評價和管理
5.5 方案選擇
5.6 規(guī)模及成本估算
5.6.1 軟件規(guī)模估算
5.6.2 軟件成本估算
5.7 軟件項目計劃
5.7.1 進度安排
5.7.2 甘特圖
5.7.3 項目計劃工具
本章小結
習題
第6章 面向對象分析
6.1 面向對象分析過程
6.2 需求獲取
6.2.1 項目需求的來源
6.2.2 需求獲取技術
6.3 面向對象的需求分析
6.3.1 分析問題定義
6.3.2 標識參與者和用例
6.3.3 復查參與者和用例
6.3.4 建立用例圖
6.3.5 編寫用例描述
6.3.6 建立領域模型
6.4 需求規(guī)格說明與評審
6.4.1 需求規(guī)格說明書
6.4.2 需求評審
本章小結
習題
第7章 面向對象設計
7.1 面向對象設計簡介
7.1.1 面向對象分析與設計之間的關系
7.1.2 面向對象設計的內容
7.1.3 面向對象設計基本原則
7.1.4 GRASP模式
7.2 軟件體系結構設計
7.3 問題域設計
7.3.1 完善域模型
7.3.2 職責分配
7.3.3 業(yè)務規(guī)則驗證
7.3.4 狀態(tài)建模
7.3.5 交互建模
7.3.6 類的組織
7.4 持久化設計
7.4.1 問題域模型到關系模型的轉換
7.4.2 持久化策略
7.5 用戶界面設計
7.5.1 用戶界面設計的基本原則
7.5.2 用戶界面的形式
7.5.3 用戶界面設計過程
7.5.4 用戶界面設計內容
7.5.5 用戶界面接口
7.6 任務管理設計
本章小結
習題
第8章 軟件編碼與測試
8.1 軟件編碼
8.1.1 程序設計語言的分類與選擇
8.1.2 編碼規(guī)范
8.1.3 代碼分析
8.2 代碼復審
8.3 軟件測試
8.3.1 軟件測試的概念與原則
8.3.2 軟件測試的方法與過程
8.3.3 軟件測試級別
8.3.4 軟件測試技術
8.3.5 面向對象的軟件測試
8.3.6 軟件測試文檔
8.3.7 軟件測試工具
本章小結
習題
第9章 軟件維護
9.1 軟件維護的概念
9.2 軟件維護的特點
9.3 軟件維護的過程
9.4 軟件的可維護性
9.5 軟件再工程
本章小結
習題
第10章 軟件項目管理與質量保證
10.1 軟件人員組織
10.2 軟件配置管理
10.2.1 軟件配置
10.2.2 軟件配置管理過程
10.2.3 配置管理工具
10.3 軟件質量保證
10.3.1 軟件質量度量
10.3.2 軟件質量保證體系
10.3.3 軟件的可靠性
10.4 軟件工程標準
10.4.1 ISO 9000.3質量標準
10.4.2 IEEE 1058軟件項目管理計劃標準
10.4.3 能力成熟度集成模型CMMI
本章小結
習題
參考文獻