《軟體工程——理論與實踐(附微課視頻第2版)》是2020年3月人民郵電出版社出版的圖書,作者是呂雲翔。
基本介紹
- 書名:軟體工程——理論與實踐(附微課視頻第2版)
- 作者:呂雲翔
- ISBN:9787115480194
- 頁數:293頁
- 定價:59.8元
- 出版社:人民郵電出版社
- 出版時間:2020年3月
- 裝幀:平裝
- 開本:16開
內容簡介,圖書目錄,
內容簡介
本書按照典型的軟體開發過程來組織內容,旨在培養讀者具備軟體工程思想及實際軟體開發的能力。本書共分為12章, 內容涉及軟體與軟體工程、軟體過程、可行性研究與項目開發計畫、結構化分析、結構化設計、面向對象方法與UML、面向對象分析、軟體體系結構與設計模式、面向對象設計、軟體實現、軟體測試、軟體維護與軟體工程管理。本書理論與實踐相結合,內容翔實,可操作性強。
本書是高等院校計算機科學、軟體工程及相關專業“軟體工程”課程的理想教材。
圖書目錄
第 1章 軟體與軟體工程
1.1 軟體
1.1.1 軟體的概念及特點
1.1.2 軟體的分類
1.2 軟體危機
1.2.1 軟體危機的表現與原因
1.2.2 軟體危機的啟示
1.3 軟體工程
1.3.1 軟體工程的概念
1.3.2 軟體工程研究的內容
1.3.3 軟體工程的目標和原則
1.3.4 軟體工程的知識體系
1.3.5 軟體工程的發展
1.4 軟體開發方法
1.5 軟體工程工具
1.6“小型網上書店系統”案例介紹
習題
第 2章 軟體工程
2.1 軟體工程概述
2.2 軟體生命周期
2.2.1 軟體生命周期的概念
2.2.2 傳統軟體生命周期的各個階段
2.3 軟體過程模型
2.3.1 瀑布模型
2.3.2 快速原型模型
2.3.3 增量模型
2.3.4 螺旋模型
2.3.5 噴泉模型
2.3.6 基於組件的開發模型
2.3.7 統一軟體開發過程模型
2.3.8 敏捷過程與極限編程
2.3.9 幾種模型之間的關係
2.3.10 選擇軟體過程模型
2.4 軟體過程模型實例
習題
第3章 可行性研究與項目開發計畫
3.1 項目立項概述
3.2 可行性研究的任務
3.3 技術可行性
3.4 操作可行性
3.5 經濟可行性
3.6 可行性研究的步驟
3.7 制定項目開發計畫
3.8 可行性研究實例
3.9 案例:“小型網上書店系統”的軟體開發計畫書
習題
第4章 結構化分析
4.1 需求分析
4.1.1 需求分析的任務和原則
4.1.2 需求分析的步驟
4.1.3 需求管理
4.1.4 需求分析的常用方法
4.2 結構化分析概述
4.3 結構化分析的方法
4.3.1 功能建模
4.3.2 數據建模
4.3.3 行為建模
4.3.4 數據字典
4.3.5 加工規格說明
4.4 結構化分析的圖形工具
4.4.1層次方框圖
4.4.2 Warnier圖
4.4.3 IPO圖
4.5 結構化分析實例
4.6 實驗:利用Visio繪製“小型網上書店系統”的數據流圖
習題
第5章 結構化設計
5.1 軟體設計的基本概念
5.1.1 軟體設計的意義和目標
5.1.2 軟體設計的原則
5.1.3 軟體設計的分類
5.2 資料庫結構設計
5.3 用戶界面設計
5.3.1 設計驅動開發
5.3.2 目標用戶群體
5.3.3 簡潔與清晰
5.3.4 實現模型與心智模型
5.3.5 設計的規範性
5.3.6 設計的可用性和易用性
5.3.7 設計的一致性
5.3.8 設計的容錯性
5.4 結構化軟體設計概述
5.5 結構化設計與結構化分析的關係
5.6 體系結構設計
5.6.1 表示軟體結構的圖形工具
5.6.2 面向數據流的設計方法
5.6.3 面向數據結構的設計方法
5.7 接口設計
5.7.1 接口設計概述
5.7.2 界面設計
5.8 數據設計
5.9 過程設計
5.9.1 程式流程圖
5.9.2 N-S圖
5.9.3 PAD圖
5.10結構化設計實例
5.11實驗:利用Visio繪製“小型網上書店系統”的結構圖
習題
第6章 面向對象方法與UML
6.1 面向對象的軟體工程方法
6.1.1 面向對象的基本概念
6.1.2 面向對象的軟體工程方法的特徵與優勢
6.1.3 面向對象的實施步驟
6.2. 統一建模語言UML
6.2.1 UML簡述
6.2.2 UML的特點
6.2.3 UML的套用範圍
6.2.4 UML的圖
6.2.5 UML“4+1”視圖
6.3 靜態建模機制
6.3.1 用例圖
6.3.2 類圖和對象圖
6.3.3 包圖
6.4 動態建模機制
6.4.1 順序圖
6.4.2 協作圖
6.4.3 狀態圖
6.4.4 活動圖
6.5 描述物理架構的機制
6.5.1 構件圖
6.5.2 部署圖
習題
第7章 面向對象分析
7.1 面向對象分析方法
7.1.1 面向對象分析過程
7.1.2 面向對象分析原則
7.2 面向對象建模
7.2.1 建立對象模型
7.2.2 建立動態模型
7.2.3 建立功能模型
7.2.4 3種模型之間的關係
7.3 面向對象分析實例
7.4實驗
7.4.1 利用Rose創建“小型網上書店系統”的用例模型
7.4.2 利用Rose繪製“小型網上書店系統”的類圖
7.4.3 利用Rose繪製“小型網上書店系統”的對象圖
7.4.4 利用Rose繪製“小型網上書店系統”的狀態圖
7.4.5 使用Rose繪製“小型網上書店系統”的順序圖
7.5 案例:“小型網上書店系統”的需求規格說明書
習題
第8章 軟體體系結構與設計模式
8.1 軟體體系結構的概念
8.1.1 什麼是軟體體系結構
8.1.2 軟體體系結構建模
8.1.3 軟體體系結構的分層模型
8.1.4 軟體體系結構的作用
8.2 典型的軟體體系結構風格
8.2.1 數據流風格
8.2.2 調用∕返迴風格
8.2.3 獨立構件風格
8.2.4 虛擬機風格
8.2.5 倉庫風格
8.3 軟體質量屬性
8.4 分散式系統結構
8.4.1 多處理器體系結構
8.4.2 客戶機/伺服器體系結構
8.4.3 分散式對象體系結構
8.4.4 對等端體系結構
8.4.5 代理
8.5 體系結構框架
8.5.1 模型-視圖-控制器
8.5.2 模型-視圖-表示器
8.5.3 J2EE體系結構框架
8.5.4 PCMEF框架
8.5.5 PCBMER框架
8.6軟體系統的設計模式
8.6.1 工廠模式
8.6.2 橋接模式
8.6.3 策略模式
8.6.4 其他模式
習題
第9章 面向對象設計
9.1 面向對象設計與結構化設計
9.2 面向對象設計與面向對象分析的關係
9.3 面向對象設計的過程與規則
9.3.1 面向對象設計的過程
9.3.2 面向對象設計的原則
9.4 面向對象設計的啟發規則
9.5 系統設計
9.5.1 系統分解
9.5.2 問題域子系統的設計
9.5.3 人機互動子系統的設計
9.5.4 任務管理子系統的設計
9.5.5 數據管理子系統的設計
9.6 對象設計
9.6.1 設計類中的服務
9.6.2 設計類的關聯
9.6.3 對象設計最佳化
9.7 面向對象設計實例
9.8 實驗
9.8.1 利用Rose繪製“小型網上書店系統”的活動圖
9.8.2 利用Rose繪製“小型網上書店系統”的協作圖
9.8.3 利用Rose繪製“小型網上書店系統”的構件圖
9.8.4 利用Rose繪製“小型網上書店系統”的部署圖
9.9 案例:“小型網上書店系統”的軟體設計說明書
習題
第 10章 軟體實現
10.1 程式語言
10.1.1 程式語言的發展與分類
10.1.2 選擇程式語言需考慮的因素
10.2 編程風格
10.3 面向對象實現
10.4 軟體實現實例
10.5 利用Visual Studio實現“小型網上書店系統”的用戶登錄模組
10.6 案例:“小型網上書店系統”的原始碼和部署文檔
習題
第 11章 軟體測試與維護
11.1 軟體測試的基本概念
11.1.1 軟體測試的原則
11.1.2 軟體測試模型
11.2 軟體測試的分類
11.3 測試用例
11.3.1 測試用例編寫
11.3.2 測試用例設計
11.3.3 測試用例場景
11.4 軟體測試方法
11.5 黑盒測試
11.5.1 等價類劃分法
11.5.2 邊界值分析法
11.5.3 錯誤推測法
11.5.4 因果圖法
11.5.5 決策表法
11.5.6 場景法
11.5.7 黑盒測試選擇
11.6 白盒測試
11.6.1 代碼檢查法
11.6.2 靜態結構分析法
11.6.3 程式插樁技術
11.6.4 邏輯覆蓋法
11.6.5 基本路徑法
11.6.6 白盒測試方法選擇
11.6.7 白盒測試與黑盒測試比較
11.7 軟體測試的一般步驟
11.8 單元測試
11.8.1 單元測試概述
11.8.2 單元測試內容
11.8.3 單元測試方法
11.9 集成測試
11.9.1 集成測試概述
11.9.2 集成測試分析
11.9.3 集成測試策略
11.10 系統測試
11.10.1 系統測試概述
11.10.2 系統測試類型
11.11 驗收測試
11.11.1 驗收測試概述
11.11.2 驗收測試內容
11.11.3 α測試和β測試
11.12 回歸測試
11.13 面向對象的軟體測試
11.14 軟體調試
11.14.1 調試過程
11.14.2 調試途徑
11.15 軟體測試實例
11.16 實驗:利用Visual Studio對“小型網上書店系統”的用戶登錄模組進行單元測試
11.17 案例:“小型網上書店系統”的測試分析報告
習題
第 12章 軟體維護與軟體工程管理
12.1 軟體維護
12.1.1 軟體維護的過程
12.1.2 軟體維護的分類
12.1.3 軟體的可維護性
12.1.4 軟體維護的副作用
12.1.5 軟體再工程技術
12.2 軟體估算
12.2.1 軟體估算的概念
12.2.2 軟體估算的方法
12.2.3 軟體估算的原則與技巧
12.3 軟體開發進度計畫
12.3.1 Gantt圖
12.3.2 PERT圖
12.4 軟體開發人員組織
12.4.1 民主製程序員組
12.4.2 主程式設計師組
12.4.3 現代程式設計師組
12.5 軟體開發風險管理
12.5.1 軟體開發風險
12.5.2 軟體開發風險管理
12.6 軟體質量保證
12.6.1 軟體質量的基本概念
12.6.2 軟體質量保證的措施
12.7 軟體配置管理概述
12.7.1 軟體配置管理術語
12.7.2 配置管理的過程
12.7.3 配置管理的角色劃分
12.8 軟體工程標準與軟體文檔
12.8.1 軟體工程標準
12.8.2 軟體文檔
12.9 軟體過程能力成熟度模型
12.10 軟體項目管理
12.10.1 軟體項目管理概述
12.10.2 軟體項目管理與軟體工程的關係
12.11 軟體復用
12.12 實驗:利用Project管理“小型網上書店系統”的開發過程
習題
附錄 A 課程設計
A.1課程設計指導
A.2課程設計的可選項目
附錄 B課程設計開發文檔
B.1 可行性研究報告
B.2 軟體開發計畫書編寫指南
B.3 需求規格說明書編寫指南
B.4 軟體設計說明書編寫指南
B.5 測試分析報告編寫指南
參考文獻