第1章 軟件與軟件工程
1.1 軟件的概念
1.1.1 軟件與軟件的組成
1.1.2 軟件生存周期
1.1.3 軟件的特點
1.1.4 幾類常用的軟件
1.1.5 軟件的質量
1.1.6 軟件的安全與保護
1.2 軟件工程的概念
1.2.1 軟件工程的定義
1.2.2 軟件工程的發(fā)展
1.2.3 軟件工程的目標和原則
1.2.4 軟件開發(fā)的主要方法
1.3 軟件過程模型
1.3.1 瀑布模型
1.3.2 增量過程模型
1.3.3 原型建造模型
1.3.4 螺旋模型
1.3.5 基于構件的過程模型
1.3.6 通用軟件過程模型
1.4 敏捷軟件開發(fā)原則和應用
1.4.1 敏捷軟件開發(fā)原則
1.4.2 敏捷軟件過程的極限編程實踐
1.4.3 敏捷軟件開發(fā)過程的應用
1.5 軟件工程人的因素
1.5.1 軟件工程教育
1.5.2 軟件工程學科
1.5.3 軟件工程從業(yè)人員的職業(yè)道德
1.6 軟件工具及軟件開發(fā)環(huán)境
1.6.1 軟件工具
1.6.2 軟件開發(fā)環(huán)境
1.7 基于計算機的系統(tǒng)
1.7.1 基于計算機的系統(tǒng)的概念
1.7.2 基于計算機的系繞的功能組件
1.7.3 典型的基于計算機的系統(tǒng)
1.7.4 基于計算機的系統(tǒng)的研制
小結
習題
第2章 UML與RUP統(tǒng)一過程
2.1 案例說明
2.2 面向對象的軟件開發(fā)方法
2.2.1 面向對象的概念
2.2.2 面向對象方法的優(yōu)勢
2.3 UML概述
2.4 RUP統(tǒng)一過程
2.4.1 RUP軟件過程框架
2.4.2 RUP的5個階段
2.4.3 RUP的9個工作流
小結
習題
第3章 需求工程概論
3.1 軟件需求的概念
3.1.1 軟件需求的分類
3.1.2 軟件需求的質量要素
3.2 需求工程的預備知識
3.2.1 與用戶交流的技巧
3.2.2 需求調查的基本方法
3.2.3 需求建模的基本方法
3.3 需求工程的過程模型
3.3.1 需求工程中的活動
3.3.2 迭代式的過程模型
3.3.3 過程模型的裁剪
小結
習題
第4章 需求獲取
4.1 軟件需求的初始表示
4.1.1 用例
4.1.2 用例圖
4.1.3 用例的表示
4.1.4 類圖
4.1.5 活動圖
4.2 需求獲取的過程模型
4.3 定義軟件問題
4.3.1 標識客戶和用戶
4.3.2 理解業(yè)務背景
4.3.3 策劃并實施需求調查
4.3.4 定義軟件系統(tǒng)的輪廓
4.4 創(chuàng)建框架用例
4.4.1 策劃并實施用例調查
4.4.2 以框架用例記錄調查結果
4.4.3 創(chuàng)建用例圖
4.4.4 整合并評審框架用例
4.5 精化用例
4.5.1 用例交互動作序列的描述方法
4.5.2 分解或合并用例
4.5.3 構建完整用例
4.5.4 精化用例圖
4.5.5 精化業(yè)務規(guī)則及非功能需求
4.6 評審用例模型
小結
習題
第5章 需求分析與驗證
5.1 分析模型的表示
5.1.1 順序圖
5.1.2 通信圖
5.1.3 狀態(tài)圖
5.1.4 擴充機制
5.2 需求分析的過程模型
5.3 需求優(yōu)先級分析
5.3.1 確定需求項優(yōu)先級
5.3.2 編排用例分析的優(yōu)先順序
5.4 用例分析
5.4.1 精化領域概念模型
5.4.2 設置分析類
5.4.3 構思分析類之間的協作關系
5.4.4 導出分析類圖
5.5 利用快速原型輔助需求分析
5.5.1 分析與規(guī)劃
5.5.2 設計與實現
5.5.3 檢查與評審
5.5.4 改進
5.6 評審分析模型
5.7 需求規(guī)約
5,8需求驗證
小結
習題
第6章 軟件設計概論
6.1 軟件設計的概念
6.1.1 軟件設計模型
6.1.2 設計模型的質量要素
6.2 軟件設計的基本原則
6.2.1 抽象與逐步求精
6.2.2 模塊化
6.2.3 信息隱藏
6.2.4 關注點分離
6.3 軟件設計的過程模型
6.3.1 軟件設計活動
6.3.2 迭代式設計過程模型
6.3.3 設計過程模型的裁剪
小結
習題
第7章 軟件體系結構設計
7.1 軟件體系結構的概念
7.1.1 何謂體系結構
7.1.2 體系結構視圖
7.2 體系結構的表示
7.2.1 包圖
7.2.2 構件圖
7.2.3 部署圖
7.2.4 對象圖
……
第8章 人機交互設計
第9章 軟件詳細設計
第10章 軟件實現
第11章 結構化軟件開發(fā)
第12章 軟件測試
第13章 軟件維護
第14章 Web軟件工程
第15章 軟件度量與估算
第16章 軟件項目管理與過程改進