內容簡介
《軟體工程導論》內容豐富,構思新穎,突破軟體工程圖書的傳統框架,使整個軟體工程體系更清晰,從思想和管理出發,自然延伸到流程、方法、工具和環境,重新闡釋了軟體工程體系。《軟體工程導論》吸收了軟體工程的最新進展,適應軟體即服務(SaaS)的開發模式,增加了相應的內容,符合當今軟體工程的實際需求
編輯推薦
《軟體工程導論》系統性強、通俗易懂,內容豐富且實用,理論和實踐有效地結合,可作為高等學校的軟體工程專業、計算機軟體專業和相關專業的教材,也適合各類軟體工程管理人員和技術人員學習。
《軟體工程導論》將揭示軟體工程的實質和內涵,圍繞軟體工程最基本的核心——“質量和生產率”展開,充分闡述軟體工程的系統思想、方法體系和過程運行軌跡,從而幫助讀者建立其軟體工程的完整而清晰的概念,幫助讀者理解學習軟體工程的意義和內容,在思想高度上指導軟體工程專業的其他課程學習。
作品目錄
引子
第1章 為什麼要研究軟體工程
1.1 軟體危機
1.1.1 軟體不再只是程式
1.1.2 危機四伏
1.1.3 軟體危機之證
1.2 軟體的問題在哪裡
1.2.1 軟體特性
1.2.2 軟體業所面臨的問題
1.2.3 軟體問題的幽默畫
1.3 軟體工程的誕生
1.4 軟體工程的命題
1.5 軟體工程知識體系
1.5.1 軟體工程知識體系的構成
1.5.2 軟體工程要素
1.5.3 SWEBOK
1.6 現代軟體工程
1.6.1 開源軟體運動
1.6.2 SaaS
1.6.3 現代軟體工程的基本思想
1.7 小結
思考題
第2章 軟體過程
2.1 完整的軟體生命周期
2.1.1 軟體的工程過程
2.1.2 綜合的軟體過程
2.2 需求工程
2.2.1 軟體需求
2.2.2 需求開發
2.2.3 需求管理
2.3 設計
2.3.1 軟體設計的目標
2.3.2 體系結構設計
2.3.3 詳細設計
2.3.4 部署設計
2.3.5 設計評審
2.4 實施
2.4.1 單元測試
2.4.2 集成測試
2.4.3 功能測試
2.4.4 系統測試
2.4.5 驗收測試
2.5 部署、運行和維護
2.5.1 系統部署
2.5.2 軟體運行和技術支持
2.5.3 維護過程
2.6 軟體非工程過程
2.6.1 計畫
2.6.2 質量保證和管理的過程
2.6.3 項目管理過程
2.6.4 基礎設施和過程改進
2.7 小結
思考題
第3章 軟體工程目標和要求
3.1 軟體工程的基本目標
3.2 軟體工程的影響要素
3.3 軟體工程的業務需求
3.4 軟體工程的質量要求
3.4.1 質量的含義
3.4.2 客戶是質量的焦點
3.4.3 軟體質量的特性
3.4.4 影響軟體產品質量的因素
3.4.5 軟體過程的質量因素
3.4.6 軟體質量的指標
3.5 軟體工程的成本要求
3.5.1 軟體工程的固有成本
3.5.2 軟體的可變成本
3.5.3 軟體工程的劣質成本
3.6 軟體工程的資源限制
3.7 軟體產品集成要求
3.7.1 傳統產業的啟示
3.7.2 軟體產品工程
3.8 小結
思考題
第4章 軟體工程思想
4.1 永遠不可低估思想的作用
4.2 以人為本
4.3 軟體開發不是一門藝術
4.4 向傳統工業學習
4.4.1 客戶為導向
4.4.2 需求分析是基礎
4.4.3 過程決定結果
4.4.4 持續改進過程
4.4.5 缺陷預防
4.4.6 圍繞項目開展工作
4.4.7 驗證和確認缺一不可
4.4.8 以架構設計為中心
4.5 軟體工程的例外
4.5.1 疊代
4.5.2 敏捷開發思想
4.5.3 持續構建和集成
4.5.4 永遠的Beta
4.5.5 面向對象是一種思想
4.5.6 軟體工程應歸為知識管理
4.6 軟體工廠思想
4.6.1 模組化思想
4.6.2 面向構件思想
4.6.3 軟體復用
4.6.4 中間件
4.6.5 自動化無處不在
4.7 小結
思考題
第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.4 軟體工程的設計方法
5.4.1 原型設計方法
5.4.2 結構化方法
5.4.3 面向對象方法
5.4.4 面向構件設計方法
5.4.5 面向服務方法
5.4.6 可視化方法
5.5 軟體測試方法
5.5.1 白盒和黑盒的測試方法
5.5.2 靜態和動態的測試方法
5.5.3 ALAC測試和隨機測試
5.5.4 自動化測試方法
5.6 小結
思考題
第6章 軟體建模
6.1 一個簡單建模的例子
6.2 軟體建模
6.2.1 為什麼要建模
6.2.2 軟體建模概述
6.2.3 如何建模
6.3 元建模
6.4 建模語言和UML
6.4.1 建模語言的起源
6.4.2 實體關係建模
6.4.3 UML
6.4.4 UML視圖
6.4.5 建模機制
6.4.6 系統建模語言SysML
6.4.7 虛擬現實建模語言
6.5 軟體過程模型
6.5.1 瀑布模型的不足
6.5.2 V模型詮釋軟體過程
6.5.3 沒有統一天下的RUP
6.5.4 MSF的過程模型
6.6 小結
思考題
第7章 軟體工程環境
7.1 環境造就軟體
7.2 軟體工程組織
7.2.1 軟體組織環境
7.2.2 軟體組織的作用
7.2.3 PSP改進個人能力
7.2.4 TSP提高團隊水平
7.2.5 完整的組織框架
7.3 軟體工程文化
7.3.1 過程文化
7.3.2 質量文化
7.4 軟體工程基礎設施
7.5 過程定義
7.5.1 軟體過程定義的基礎
7.5.2 剪裁標準軟體過程的指南和準則
7.6 過程評估和改進
7.6.1 軟體過程評估的目標和期望
7.6.2 軟體過程評估的內容和範圍
7.6.3 軟體過程評估的方式和類型
7.6.4 軟體過程評估的方法
7.6.5 過程改進的IDEAL模型
7.6.6 過程改進的Raytheon方法
7.6.7 過程改進實施的原則
7.6.8 過程改進實施
7.7 小結
思考題
第8章 軟體項目管理
8.1 軟體項目管理概述
8.1.1 軟體項目管理的3P
8.1.2 軟體項目管理的實質
8.1.3 軟體項目管理的目標和範圍
8.2 軟體項目的分類
8.3 制定計畫
8.3.1 軟體規模度量
8.3.2 軟體開發的估算模型
8.3.3 項目工作量估算
8.3.4 日程和人力資源安排
8.3.5 項目成本估算
8.4 資源管理
8.5 進度和成本管理
8.5.1 里程碑控制和關鍵路徑
8.5.2 項目成本控制
8.5.3 項目進度的特性及外在關係
8.6 質量管理
8.6.1 軟體質量計畫
8.6.2 軟體評審
8.6.3 缺陷預防
8.6.4 質量度量
8.7 風險管理
8.7.1 風險識別
8.7.2 風險分析和評估
8.8 軟體配置管理
8.8.1 配置管理的基本概念
8.8.2 版本控制
8.8.3 變更控制
8.9 項目跟蹤和控制
8.10 小結
思考題
第9章 軟體工具
9.1 ICASE
9.2 IDE
9.3 商業工具解決方案
9.3.1 典型的完整解決方案
9.3.2 商業IDE
9.3.3 需求分析和管理工具
9.3.4 建模和設計工具
9.3.5 測試工具
9.3.6 配置管理工具
9.4 開源工具集成的解決方案
9.4.1 開原始碼許可協定
9.4.2 開源的Web開發框架
9.4.3 開源的IDE
9.4.4 PHP及其他語言的IDE
9.4.5 開源測試工具
9.4.6 覆蓋軟體過程的其他開源工具
9.5 小結
思考題
附錄A 軟體工程術語中英文對照
附錄B 項目視圖和範圍的文檔模板
參考文獻
-------------------------------------------------------------------------------------------------------------------------------------
本書已經出版了三個版本,累計銷售達60萬冊,成為軟體工程領域的經典教材,先後榮獲全國普通高等學校工科電子表類專業優秀教材第二等獎、一等獎。為了反映年來軟體工程的發展狀況,作者主要從下述3個方面對第三版作了精心修改:刪掉了一些較陳舊的或較次要的內容,增加了一些較新穎的或較重要發的內容,用UML的概念與符號重新改定了有關面向對象方法學的內容。