內容簡介
本書是作者在多年的軟體工程教學和科研實踐的基礎上,總結和吸取了國內外大量同類書刊的精華,精心設計和撰寫的。全書正文共13章,內容可分四部分:第一部分主要介紹軟體工程的基本概念,並概要介紹了軟體生存周期、開發模型及軟體開發的各種方法;第二部分按生命周期模型詳細介紹了軟體計畫、需求分析、設計、編碼、測試和維護各個階段的有關概念和工作內容;第三部分介紹面向對象的方法及UML建模語言;第四部分介紹了軟體標準、文檔、質量評價和質量保證技術、軟體工程的管理、認證等內容。
該書的內容系統完整,在介紹傳統理論體系的基礎上,融入當前軟體工程的最新發展和新技術。書中採用大量圖表,描述儘量做到通俗易懂,將原理、方法與實例結合,並較詳實地給出了一個軟體系統的開發過程。通過大量的練習和案例分析,幫助讀者加深對理論知識的理解。
該書可作為高等院校軟體工程課程的教材或教學參考書,也可作為軟體項目管理者和軟體開發人員的參考書。
圖書目錄
第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.3.1軟體工程的定義
1.3.2軟體工程的內容
1.3.3軟體工程的基本原理
1.3.4軟體工程項目的基本目標
1.3.5軟體工程的開發原則
1.4軟體過程和軟體生存期
1.4.1軟體過程
1.4.2軟體生存周期
1.5軟體開發過程模型
1.5.1瀑布模型
1.5.2原型模型(快速原型模型)
1.5.3螺旋模型
1.5.4噴泉模型
1.5.5構件組裝模型
1.5.6統一過程RUP模型
1.5.7第四代技術
1.6軟體開發方法簡述
1.6.1結構化方法
1.6.2面向數據結構的開發方法
1.6.3面向對象的方法
1.6.4可視化開發方法
1.7軟體工程的最新發展動向
小結
習題1
第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.4成本/效益分析
2.4.1成本估算技術
2.4.2成本/效益分析的方法
小結
習題2
第3章需求分析
3.1需求分析的概念和任務
3.1.1需求的概念
3.1.2需求的層次
3.1.3需求分析的任務
3.2獲取需求的方法
3.2.1存在問題
3.2.2常用方法
3.2.3需求分析的原則
3.2.4需求分析方法概述
3.3結構化分析方法
3.3.1結構化分析方法的基本思想
3.3.2描述工具
3.3.3數據流圖
3.3.4數據字典
3.3.5加工邏輯說明
3.4原型法
3.4.1原型的概念
3.4.2快速原型開發過程
小結
習題3
第4章總體設計
4.1總體設計的任務及目標
4.1.1總體設計的任務
4.1.2總體設計的目標
4.2總體設計的概念和原理
4.2.1軟體結構和過程
4.2.2模組化
4.3設計準則
4.4總體設計的常用方法及工具
4.4.1面向數據流的設計方法
4.4.2面向數據結構的分析設計方法
小結
習題4
第5章詳細設計
5.1詳細設計的任務
5.2詳細設計的原則
5.3詳細設計的方法和工具
5.3.1詳細設計的方法
5.3.2詳細設計的工具
5.3.3詳細設計工具的選擇
5.4詳細設計規格說明與複審
5.4.1詳細設計說明
5.4.2設計複審
5.5界面設計
5.5.1用戶界面設計的一般原則和步驟
5.5.2字元界面設計
5.5.3選單設計
5.5.4對話框設計
5.5.5多視窗界面設計
5.6軟體體系結構
5.6.1軟體體系結構的興起
5.6.2軟體體系結構的概念
5.6.3軟體體系結構的現狀及發展方向
5.6.4軟體體系結構的風格
5.6.5軟體體系結構的描述方法
5.7幾種新型的軟體體系結構
5.7.1正交軟體體系結構
5.7.2三層C/S軟體體系結構
5.7.3C/S與B/S混合軟體體系結構
5.8軟體體系結構與作業系統
5.8.1作業系統的體系結構
5.8.2模組結構
5.8.3分層結構
5.8.4微核心結構
小結
習題5
第6章編碼
6.1程式設計語言
6.1.1程式設計語言的分類
6.1.2選擇程式設計語言的標準
6.2程式設計風格
6.2.1源程式文檔化
6.2.2數據說明
6.2.3語句結構
6.2.4輸入和輸出(I/O)
6.3實例
小結
習題6
第7章軟體測試
7.1軟體測試的任務和目標
7.1.1軟體測試的目標
7.1.2軟體測試原則
7.2軟體測試的方法
7.2.1白盒測試法
7.2.2黑盒測試法
7.3軟體測試的步驟
7.3.1單元測試
7.3.2集成測試
7.3.3確認測試
7.3.4系統測試
7.4調試
7.4.1調試過程
7.4.2調試方法
7.4.3調試原則
7.5軟體測試工具
7.5.1自動軟體測試的優點
7.5.2測試工具分類
7.5.3測試腳本
7.5.4自動測試的相關問題
7.5.5常用軟體測試工具及特點
7.6實例
小結
習題7
第8章軟體維護
8.1軟體維護的概念
8.2軟體維護的特點
8.2.1影響維護的問題很多
8.2.2維護的代價高昂
8.3軟體維護的步驟
8.3.1維護申請報告
8.3.2維護工作實施
8.3.3維護文檔整理
8.3.4維護活動評價
8.4軟體的可維護性
8.4.1影響軟體可維護性的因素
8.4.2提高軟體的可維護性方法
8.5逆向工程和再工程
8.5.1預防性維護
8.5.2軟體的逆向工程和再工程
8.6實例
小結
習題8
第9章面向對象方法學
9.1面向對象方法學的引入
9.1.1傳統方法學的缺點
9.1.2面向對象技術特點
9.1.3面向對象方法學的優點
9.2面向對象的基本概念和特性
9.2.1面向對象的基本概念
9.2.2面向對象的基本特性
9.3面向對象分析
9.3.1面向對象分析的目標和任務
9.3.2面向對象分析的基本原則
9.3.3面向對象分析的基本過程
9.3.4面向對象建模
9.4面向對象設計
9.4.1面向對象設計的基本原則
9.4.2面向對象設計的基本內容
9.5幾種流行的面向對象方法
9.5.1CoadYourdon方法
9.5.2對象模型技術
9.5.3Booch的方法
9.6統一建模語言
9.6.1統一建模語言概述
9.6.2UML視圖
9.6.3對象建模
9.6.4動態建模
9.6.5功能建模
9.7面向對象實現
9.7.1程式設計語言
9.7.2程式設計風格
9.7.3面向對象的程式測試
9.7.4面向對象的軟體維護
9.8面向對象實例
9.8.1圖書館管理信息系統的需求說明
9.8.2UML建模
小結
習題9
第10章軟體工程標準化和軟體文檔
10.1軟體工程標準化的概念
10.1.1什麼是軟體工程標準化
10.1.2軟體工程標準化的意義
10.1.3軟體工程標準化的類型
10.2軟體工程標準的制定與推行
10.2.1軟體工程標準的制定與推行
10.2.2軟體工程標準在開發機構中的推行
10.3軟體工程標準的層次和體系框架
10.3.1軟體工程標準的層次
10.3.2軟體工程標準的體系框架
10.3.3中國的軟體工程標準化工作
10.4ISO 9000國際標準簡介
10.4.1ISO 9000標準概述
10.4.2ISO 9000標準的特點
10.4.3ISO 9000標準的構成
10.5軟體文檔
10.5.1軟體文檔的作用和分類
10.5.2軟體文檔的編制要求
10.5.3軟體文檔的管理和維護
小結
習題10
第11章軟體工程質量
11.1軟體質量特性
11.1.1軟體質量的定義
11.1.2軟體質量的特性
11.2軟體質量的度量和評價
11.2.1軟體質量的度量
11.2.2軟體質量的評價
11.3軟體質量保證
11.3.1什麼是軟體質量保證
11.3.2軟體質量保證的主要任務
11.3.3軟體質量保證體系
11.4軟體質量管理體系
11.4.1軟體產品質量管理的特點
11.4.2軟體質量管理的指導思想
11.4.3軟體開發的質量管理體系
小結
習題11
第12章軟體工程項目管理
12.1軟體項目管理
12.1.1軟體項目管理的特點
12.1.2軟體項目管理的主要職能
12.2常見管理技術及工具簡介
12.2.1軟體項目管理的主要內容
12.2.2常見工具簡介
12.3軟體過程成熟度模型
12.3.1CMM概述
12.3.2CMM的成熟度級別
12.4利用CMM對軟體機構進行成熟度評估
12.5項目管理認證體系IPMP與PMP
12.5.1IPMP概況
12.5.2PMP簡介
12.5.3我國目前的項目管理認證體系的發展狀況
小結
習題12
第13章開發實例
13.1項目論證和計畫
13.1.1系統調查
13.1.2新系統的總體功能需求和性能要求
13.1.3完成文檔
13.2需求分析
13.2.1數據流分析
13.2.2數據字典
13.2.3處理邏輯描述
13.2.4形成需求規格說明書並進行需求評審
13.3系統設計
13.3.1系統總體概要設計
13.3.2代碼設計
13.3.3資料庫設計
13.3.4界面設計
13.3.5完成設計文檔和設計評審
13.4系統實現
小結
附錄A項目開發文檔
參考文獻