注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件工程及軟件方法學軟件工程(第2版)

軟件工程(第2版)

軟件工程(第2版)

定 價:¥46.00

作 者: 李代平 等
出版社: 清華大學出版社
叢編項: 高等學校教材·軟件工程
標 簽: 軟件工程/開發(fā)項目管理

ISBN: 9787302157311 出版時間: 2008-01-01 包裝: 平裝
開本: 16開 頁數(shù): 523 pages 字數(shù):  

內容簡介

  軟件工程是指導計算機軟件開發(fā)的工程科學技術,是在《軟件工程》第1版的基礎上,根據(jù)使用該教材的教師和讀者的意見,對原書在結構和內容上做了很大調整和修改,從而修訂的。全書共分為4個部分,第一部分基礎理論,第二部分結構化方法,第三部分面向對象方法與實現(xiàn),第四部分質量與工程管理。《軟件工程》對每章概念進行了嚴格的論述,每一概念都有相應的例子解釋,同時每章都配有習題,使讀者鞏固所學知識。 《軟件工程》作為商學院校計算機專業(yè)本科生和研究生教材,也可作為工程技術人員的參考用書。

作者簡介

暫缺《軟件工程(第2版)》作者簡介

圖書目錄

第一部分 基 礎 理 論
第1章 緒論
1.1軟件概述
1.1.1什么是計算機軟件
1.1.2軟件的特點
1.1.3軟件的分類
1.1.4軟件的發(fā)展
1.1.5軟件危機
1.2軟件工程
1.2.1軟件工程與方法學
1.2.2軟件工程的基本原理
1.2.3軟件工程的目標
1.2.4軟件工程的內容
1.2.5軟件工程原則
1.2.6軟件工程面臨的問題
小結
綜合練習一
第2章 基本理論
2.1軟件工程過程
2.2軟件生命周期
2.2.1軟件分析時期
2.2.2軟件設計時期
2.2.3編碼與測試時期
2.2.4運行與維護時期
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.4軟件開發(fā)方法
2.4.1結構化方法
2.4.2Jackson方法
2.4.3維也納開發(fā)方法
2.4.4面向對象的開發(fā)方法
2.5軟件工具與開發(fā)
2.5.1軟件工具箱
2.5.2軟件開發(fā)環(huán)境
2.5.3計算機輔助軟件工程
小結
綜合練習二
第3章可行性研究
3.1可行性研究任務與步驟
3.1.1研究任務
3.1.2研究步驟
3.2系統(tǒng)分析
3.2.1系統(tǒng)分析員
3.2.2面臨的問題域
3.2.3通信技術
3.3分析原理
3.3.1信息域
3.3.2建立模型
3.3.3分解
3.4系統(tǒng)模型與模擬
3.4.1系統(tǒng)模型
3.4.2系統(tǒng)建模和模擬
3.5成本效益分析
3.6可行性研究的文檔
3.7項目開發(fā)計劃
3.7.1方案選擇
3.7.2制定項目開發(fā)計劃
小結
綜合練習三
第二部分結構化方法
第4章軟件需求分析
4.1需求分析
4.1.1需求分析的特點
4.1.2需求分析的原則
4.1.3需求分析的任務
4.1.4需求分析的方法
4.2結構化分析
4.2.1自頂向下逐層分解
4.2.2結構化分析步驟
4.3系統(tǒng)流程圖
4.4數(shù)據(jù)流圖
4.4.1基本圖形符號
4.4.2畫數(shù)據(jù)流圖
4.4.3結構化分析方法的應用
4.5數(shù)據(jù)字典
4.5.1內容及格式
4.5.2數(shù)據(jù)字典的實現(xiàn)
4.6關系數(shù)據(jù)理論
4.6.1數(shù)據(jù)依賴
4.6.2關系模式的操作異常
4.6.3范式
4.6.4EAR方法
小結
綜合練習四
第5章 總體設計
5.1軟件設計的重要性
5.2設計過程
5.3軟件總體設計
5.4設計基本原理
5.4.1抽象
5.4.2細化
5.4.3模塊化
5.4.4軟件體系結構
5.4.5程序結構
5.4.6數(shù)據(jù)結構
5.4.7軟件過程
5.5體系結構設計
5.5.1軟件結構圖
5.5.2模塊的大小
5.5.3扇出和扇入與深度和寬度
5.5.4模塊的耦合
5.5.5模塊的內聚
5.5.6結構設計的一般準則
5.5.7模塊的作用域與控制域
5.6結構化設計
5.6.1數(shù)據(jù)流的類型
5.6.2過程步驟
5.6.3變換分析設計
5.6.4事務分析設計
5.6.5混合流設計
5.6.6結構化設計方法應用示例
5.6.7設計的后期處理
5.7軟件結構優(yōu)化
5.7.1軟件結構設計優(yōu)化準則
5.7.2軟件結構的HIPO圖
小結
綜合練習五
第6章 軟件詳細設計
6.1細節(jié)設計的任務與方法
6.1.1細節(jié)設計的基本任務
6.1.2細節(jié)設計方法
6.2設計表示法
6.2.1結構化語言
6.2.2判定表
6.2.3判定樹
6.3結構化程序設計
6.3.1程序流程圖
6.3.2三種基本控制結構
6.3.3常用符號
6.4結構化定理
6.4.1程序函數(shù)
6.4.2基本定理
6.4.3常見錯誤
6.4.4過程設計語言
6.5面向數(shù)據(jù)結構的設計
6.5.1Jackson圖
6.5.2綱要邏輯
6.5.3Jackson方法
6.5.4JSP應用
6.5.5JSD方法
小結
綜合練習六
第三部分面向對象方法與實現(xiàn)
第7章 面向對象方法概論
7.1面向對象簡介
7.1.1什么是面向對象
7.1.2面向對象方法的歷史及現(xiàn)狀
7.2面向對象的相關概念
7.2.1對象
7.2.2類
7.2.3對象圖
7.2.4屬性
7.2.5服務(操作或方法)
7.2.6封裝
7.2.7繼承
7.2.8多重繼承
7.2.9消息
7.2.10結構與連接
7.2.11多態(tài)性
7.2.12永久對象
7.2.13主動對象
7.2.14對象類的表示方法
7.3鏈接與關聯(lián)
7.3.1一般概念
7.3.2重數(shù)
7.3.3關聯(lián)的重要性
7.3.4三元關聯(lián)
7.3.5關聯(lián)的候選關鍵字
7.3.6異或關聯(lián)
7.3.7資格關聯(lián)
7.3.8鏈接屬性
7.3.9用關聯(lián)模型化為類
7.3.10角色名
7.3.11排序
7.3.12資格符
7.4構造分組
7.4.1模塊
7.4.2表
小結
綜合練習七
第8章模型
8.1統(tǒng)一建模語言
8.1.1模型的建立
8.1.2UML的基本圖標
8.1.3UML語義
8.1.4UML的基本元素
8.1.5UML的詞別
8.2UML的評價
8.2.1UML成功的因素
8.2.2UML能夠起到的積極作用
8.2.3UML不能起到的作用
8.2.4UML存在的缺點與問題
8.2.5從U2P提案看UML的未來
8.3對象模型
8.3.1表示方法
8.3.2表示結構
8.3.3例子
8.4動態(tài)模型
8.4.1事件和狀態(tài)
8.4.2操作
8.4.3嵌套狀態(tài)圖
8.4.4實踐技巧
8.5功能模型
8.5.1數(shù)據(jù)流圖
8.5.2指定的操作
8.5.3約束
8.5.4功能模型的實例
8.5.5功能模型與對象模型和動態(tài)模型的關系
小結
綜合練習八
第9章 對象分析
9.1對象、主動對象以及它們的類
9.2研究問題域和用戶需求
9.2.1研究用戶需求,明確系統(tǒng)責任
9.2.2研究問題域
9.2.3確定系統(tǒng)邊界
9.3發(fā)現(xiàn)對象
9.3.1正確地運用抽象原則
9.3.2策略與啟發(fā)
9.3.3審查和篩選
9.3.4識別主動對象
9.4對象的發(fā)現(xiàn)和標識
9.4.1動機
9.4.2方法
9.4.3三視圖模型(3VM)
9.4.4語言信息分析
9.5對象分類,建立類圖的對象層
9.5.1異常情況的檢查和調整
9.5.2類的命名
9.5.3建立類圖的對象層
9.6對象的屬性和服務
9.7定義屬性
9.7.1策略與啟發(fā)
9.7.2審查與篩選
9.7.3推遲到OOD考慮的問題
9.7.4屬性的命名和定位
9.7.5屬性的詳細說明
9.8定義服務
9.8.1對象的狀態(tài)與狀態(tài)轉換圖
9.8.2行為分類
9.8.3發(fā)現(xiàn)服務的策略與啟發(fā)
9.8.4審查與調整
9.8.5認識對象的主動行為
9.8.6服務的命名和定位
9.8.7服務的詳細說明
9.9應用實例
9.9.1功能需求
9.9.2發(fā)現(xiàn)對象
9.9.3對象層表示
9.9.4電梯系統(tǒng)的屬性描述
9.9.5電梯系統(tǒng)的服務定義
9.9.6電梯系統(tǒng)的特征層
小結
綜合練習九
第10章 關系分析
10.1整體部分結構
10.1.1整體部分結構及其用途
10.1.2表示法
10.1.3如何發(fā)現(xiàn)整體部分結構
10.1.4審查與篩選
10.1.5簡化對象的定義
10.1.6支持軟件復用
10.1.7整體部分結構的進一步運用
10.1.8調整對象層和屬性層
10.2一般特殊結構
10.2.1一般特殊結構及其用途
10.2.2表示法
10.2.3如何發(fā)現(xiàn)一般特殊結構
10.2.4審查與調整
10.2.5多繼承及多態(tài)性問題
10.2.6一般特殊結構的簡化
10.2.7調整對象層和特征層
10.3實例連接
10.3.1簡單的實例連接
10.3.2復雜的實例連接及其表示
10.3.3三元關聯(lián)問題
10.3.4如何建立實例連接
10.3.5對象層、特征層的增補及實例連接說明
10.4消息連接
10.4.1消息的定義
10.4.2順序系統(tǒng)中的消息
10.4.3并發(fā)系統(tǒng)中的消息
10.4.4消息對OOA的意義
10.4.5OOA對消息的表示--消息連接
10.5如何建立消息連接
10.5.1建立控制線程內部的消息連接
10.5.2建立控制線程之間的消息連接
10.5.3對象分布問題及其消息的影響
10.6消息的詳細說明
10.7電梯例子
10.7.1一般特殊關系
10.7.2整體部分關系
10.7.3連接
10.7.4電梯控制系統(tǒng)的關系層
小結
綜合練習十
第11章 面向對象設計原則
11.1類型一致性與閉合行為
11.1.1類與類型
11.1.2類型一致性原則
11.1.3閉合行為原則
11.2封裝與共生性
11.2.1封裝結構
11.2.2共生性
11.2.3面向對象系統(tǒng)中共生性的濫用
11.2.4共生性的術語
11.3領域、依附集和內聚
11.3.1對象類的領域
11.3.2依附集
11.3.3類的內聚: 一個類和它的特性
11.4繼承與多態(tài)性的危險性
11.4.1繼承的濫用
11.4.2錯誤的聚集
11.4.3倒置的層次結構
11.4.4混淆類及其實例
11.4.5誤用
11.4.6多態(tài)性的危險性
11.5狀態(tài)空間和行為
11.5.1一個類的狀態(tài)空間和行為
11.5.2子類的狀態(tài)空間
11.5.3子類的行為
11.5.4類的不變式
11.5.5前置條件和后置條件
11.5.6類接口中支持的狀態(tài)
11.5.7類接口中支持的行為
11.5.8類接口中操作的聚合
小結
綜合練習十一
第12章 對象設計
12.1對象設計綜述
12.1.1從分析和系統(tǒng)結構著手
12.1.2對象設計的步驟
12.1.3對象模型工具
12.2組合三種模型
12.3設計算法
12.3.1選擇算法
12.3.2選擇數(shù)據(jù)結構
12.3.3定義內部類和操作
12.3.4指定操作的職責
12.4設計優(yōu)化
12.4.1添加冗余關聯(lián)獲取有效訪問
12.4.2重新安排執(zhí)行次序以獲得效率
12.4.3保存導出屬性避免重復計算
12.5控制實現(xiàn)
12.5.1在程序內進行狀態(tài)設置
12.5.2狀態(tài)機器引擎
12.5.3控制作為并發(fā)任務
12.6繼承的調整
12.6.1重新安排類和操作
12.6.2抽象出公共的行為
12.6.3使用授權共享實現(xiàn)
12.7關聯(lián)設計
12.7.1分析關聯(lián)遍歷
12.7.2單向關聯(lián)
12.7.3雙向關聯(lián)
12.7.4鏈接屬性
12.8對象的表示
12.9物理打包
12.9.1信息隱藏
12.9.2實體的相關性
12.9.3構造模塊
12.10設計決策文檔
12.11控制驅動部分
12.12相關技術問題
12.12.1系統(tǒng)總體方案
12.12.2軟件體系結構
12.12.3分布式系統(tǒng)的體系結構風格
12.12.4系統(tǒng)的并發(fā)性
12.13如何設計控制驅動部分
12.13.1選擇軟件體系結構風格
12.13.2確定系統(tǒng)分布方案
12.13.3識別控制流
12.13.4用主動對象表示控制流
12.13.5把控制驅動部分看作一個主題
小結
綜合練習十二
第13章 接口設計
13.1人的因素
13.1.1分析活動者
13.1.2從Use Case分析人機交互
13.1.3分析處理異常事件的人機交互
13.1.4命令的組織
13.1.5輸出信息的組織結構
13.2界面設計風格
13.2.1菜單的選擇
13.2.2對話框
13.2.3窗口
13.3人機界面的設計準則
13.4人機界面設計過程
13.4.1用戶界面模型
13.4.2界面支持系統(tǒng)
13.4.3界面元素
13.4.4設計的形式
13.5描述方法與技術
13.5.1靈境技術
13.5.2多通道人機交互技術
13.6數(shù)據(jù)管理系統(tǒng)及其選擇
13.7技術整合
13.8數(shù)據(jù)接口
13.9對象存儲方案和數(shù)據(jù)接口的設計策略
13.9.1針對文件系統(tǒng)的設計
13.9.2針對RDBMS的設計
13.9.3使用OODBMS
小結
綜合練習十三
第14章 形式化方法
14.1基礎知識
14.1.1形式化方法概念
14.1.2形式化規(guī)約語言
14.2有限狀態(tài)機(FSM)
14.3Petri網(wǎng)基本原理
14.3.1靜態(tài)結構
14.3.2動態(tài)特征
14.3.3轉移啟動規(guī)則
14.3.4行為特性
14.3.5行為特性分析方法
14.3.6結構特性分析方法
14.3.7Petri網(wǎng)到程序結構的轉換
小結
綜合練習十四
第15章 軟件實現(xiàn)
15.1程序設計語言的特性及選擇
15.1.1程序設計語言特性
15.1.2程序設計語言的選擇
15.2程序設計風格
15.3程序設計效率
15.3.1代碼效率
15.3.2內存效率
15.3.3I/O效率
15.4冗余編程
15.5軟件容錯技術
15.5.1容錯軟件
15.5.2容錯的一般方法
15.5.3容錯軟件的設計過程
15.5.4軟件的容錯系統(tǒng)結構
小結
綜合練習十五
第四部分質量與工程管理
第16章 軟件質量
16.1軟件質量概述
16.1.1軟件質量的定義
16.1.2軟件質量特性
16.1.3軟件質量特性之間的競爭
16.2軟件質量的度量和評價
16.2.1軟件質量的度量
16.2.2軟件質量度量的分類
16.2.3軟件質量評價
16.3軟件質量保證
16.3.1軟件質量保證的概述
16.3.2軟件質量保證原則
16.3.3軟件質量保證計劃
16.3.4軟件質量保證的措施
16.3.5軟件質量管理小組
16.4技術評審與審查
16.4.1評審過程
16.4.2選擇參加評審的成員
16.4.3評審的管理和組織
16.4.4評審的方法
16.4.5走查和審查
16.4.6開發(fā)過程的評審
16.4.7對評審的綜合評價
16.5軟件的可靠性
小結
綜合練習十六
第17章 軟件測試
17.1軟件測試概述
17.1.1軟件測試的目的
17.1.2軟件測試的原則
17.2測試方法
17.2.1靜態(tài)測試
17.2.2動態(tài)測試
17.3測試用例的設計
17.3.1白盒技術
17.3.2黑盒技術
17.4測試過程
17.4.1軟件測試過程中的信息
17.4.2軟件測試的步驟與各開發(fā)階段的關系
17.4.3單元測試
17.4.4集成測試
17.4.5確認測試
17.5調試
小結
綜合練習十七
第18章 軟件維護
18.1軟件維護概述
18.1.1軟件維護的定義
18.1.2影響維護工作的因素
18.1.3維護成本
18.2軟件可維護性
18.2.1軟件可維護性的定義
18.2.2可維護性的度量
18.3軟件維護的特點
18.3.1非結構化維護和結構化維護
18.3.2維護的困難性
18.3.3軟件維護的費用
18.4軟件維護的實施
18.4.1維護的組織
18.4.2維護的流程
18.4.3維護技術
18.4.4維護的副作用
18.5維護“老化代碼”
18.6逆向工程和再工程
18.6.1預防性維護
18.6.2逆向工程的元素
18.6.3再工程中的重構技術
小結
綜合練習十八
第19章 軟件項目管理與計劃
19.1軟件項目管理概述
19.1.1軟件管理的對象
19.1.2軟件開發(fā)中的資源
19.1.3分解技術
19.2項目管理過程
19.3軟件開發(fā)成本估算
19.3.1軟件開發(fā)成本估算方法
19.3.2軟件開發(fā)成本估算的經(jīng)驗模型
19.4風險分析
19.4.1風險識別
19.4.2風險估算
19.4.3風險評價
19.4.4風險駕馭和監(jiān)控
19.5進度安排
19.5.1軟件開發(fā)小組人數(shù)與軟件生產(chǎn)率
19.5.2任務的確定與并行性
19.5.3制定開發(fā)進度計劃
19.5.4進度安排的圖形方法
19.5.5項目的追蹤和控制
19.6軟件項目的組織
19.6.1軟件項目管理的特點
19.6.2軟件項目組織的建立
19.6.3人員配備
小結
綜合練習十九
參考答案
參考文獻

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) leeflamesbasketballcamps.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號