《軟體工程(第4版)》是由李代平、楊成義編著,清華大學出版社2017年出版的教育部高等學校軟體工程專業教學指導委員會規劃教材、高等學校軟體工程專業系列教材。該教材適合作為高等學校計算機、軟體工程等相關專業本科生的教材,也可以作為相關工程技術人員的參考書。
該教材共15章,由緒論、基本理論、可行性研究、軟體需求分析、總體設計、軟體詳細設計、面向對象分析、面向對象設計、用戶界面設計、資料庫及其接口設計、軟體實現、軟體質量、軟體測試、軟體維護、軟體項目管理與計畫組成。
基本介紹
- 書名:軟體工程(第4版)
- 作者:李代平、楊成義
- ISBN:9787302473350
- 類別:教育部高等學校軟體工程專業教學指導委員會規劃教材等
- 出版社:清華大學出版社
- 出版時間:2017年10月1日
- 裝幀:平裝
- 開本:185mm×260mm
- CIP核字號:2017124103
成書過程
修訂情況
出版工作
責任編輯 | 封面設計 | 責任校對 | 責任印製 |
---|---|---|---|
付弘宇、梅欒芳 | 迷底書裝 | 焦麗麗 | 楊艷 |
內容簡介
教材目錄
第1章 緒論 | 5.6.5混合流設計 | 11.3.1代碼效率 |
1.1軟體概述 | 5.6.6結構化設計方法套用示例 | 11.3.2記憶體效率 |
1.1.1什麼是計算機軟體 | 5.6.7設計的後期處理 | 11.3.3I/O效率 |
1.1.2軟體的特點 | 5.7軟體結構最佳化 | 11.4冗餘編程 |
1.1.3軟體的分類 | 5.7.1軟體結構設計最佳化準則 | 11.5軟體容錯技術 |
1.1.4軟體的發展 | 5.7.2軟體結構的HIPO圖 | 11.5.1容錯軟體 |
1.1.5軟體危機 | 小結 | 11.5.2容錯的一般方法 |
1.2軟體工程概述 | 綜合練習5 | 11.5.3容錯軟體的設計過程 |
1.2.1軟體工程與方法學 | 第6章 軟體詳細設計 | 11.5.4軟體的容錯系統結構 |
1.2.2軟體工程的基本原理 | 6.1詳細設計的任務與方法 | 小結 |
1.2.3軟體工程的目標 | 6.1.1詳細設計的基本任務 | 綜合練習11 |
1.2.4軟體工程的內容 | 6.1.2詳細設計方法 | 第12章 軟體質量 |
1.2.5軟體工程原則 | 6.2設計表示法 | 12.1軟體質量概述 |
1.2.6軟體工程面臨的問題 | 6.2.1結構化語言 | 12.1.1軟體質量的定義 |
小結 | 6.2.2判定表 | 12.1.2軟體質量特性 |
綜合練習1 | 6.2.3判定樹 | 12.1.3軟體質量特性之間的競爭 |
第2章 基本理論 | 6.3結構化程式設計 | 12.2軟體質量的度量和評價 |
2.1軟體工程過程 | 6.3.1流程圖程式 | 12.2.1軟體質量的度量 |
2.2軟體生命周期 | 6.3.2三種基本控制結構 | 12.2.2軟體質量度量的分類 |
2.2.1軟體分析時期 | 6.3.3常用符號 | 12.2.3軟體質量評價 |
2.2.2軟體設計時期 | 6.3.4正規程式 | 12.3軟體質量保證 |
2.2.3編碼與測試時期 | 6.3.5基本程式 | 12.3.1軟體質量保證的概述 |
2.2.4運行與維護時期 | 6.3.6結構化程式 | 12.3.2軟體質量保證原則 |
2.3軟體生命周期模型 | 6.4結構化定理 | 12.3.3軟體質量保證計畫 |
2.3.1軟體生命周期模型的概念 | 6.4.1程式函式 | 12.3.4軟體質量保證的措施 |
2.3.2瀑布模型 | 6.4.2基本定理 | 12.3.5軟體質量管理小組 |
2.3.3原型模型 | 6.4.3非結構化轉換為結構化 | 12.4技術評審與審查 |
2.3.4增量模型 | 6.4.4常見錯誤 | 12.4.1評審過程 |
2.3.5螺旋模型 | 6.5過程設計語言 | 12.4.2選擇參加評審的成員 |
2.3.6噴泉模型 | 小結 | 12.4.3評審的管理和組織 |
2.3.7基於知識的模型 | 綜合練習6 | 12.4.4評審的方法 |
2.3.8變換模型 | 第7章 面向對象分析 | 12.4.5走查和審查 |
2.4軟體開發方法 | 7.1面向對象的相關概念 | 12.4.6開發過程的評審 |
2.4.1結構化方法 | 7.1.1對象 | 12.4.7對評審的綜合評價 |
2.4.2Jackson方法 | 7.1.2類 | 12.5軟體的可靠性 |
2.4.3維也納開發方法 | 7.1.3屬性 | 小結 |
2.4.4面向對象的開發方法 | 7.1.4服務(操作或方法) | 綜合練習12 |
2.5軟體工具與開發 | 7.1.5封裝 | 第13章 軟體測試 |
2.5.1軟體工具箱 | 7.1.6繼承 | 13.1軟體測試概述 |
2.5.2軟體開發環境 | 7.1.7訊息 | 13.1.1軟體測試的目的 |
2.5.3計算機輔助軟體工程 | 7.1.8結構與連線 | 13.1.2軟體測試的原則 |
小結 | 7.2UML的基本圖示 | 13.2測試方法 |
綜合練習2 | 7.3對象分析 | 13.2.1靜態測試 |
第3章 可行性研究 | 7.3.1用戶需求與研究問題域 | 13.2.2動態測試 |
3.1可行性研究任務與步驟 | 7.3.2發現對象方法 | 13.3測試用例的設計 |
3.1.1研究任務 | 7.3.3定義屬性 | 13.3.1白盒技術 |
3.1.2研究步驟 | 7.3.4定義服務 | 13.3.2黑盒技術 |
3.2系統分析 | 7.4一般特殊結構 | 13.4測試過程 |
3.2.1系統分析員 | 7.5整體部分結構 | 13.4.1軟體測試過程中的信息 |
3.2.2面臨的問題域 | 7.6實例連線 | 13.4.2軟體測試的步驟與各開發階段的關係 |
3.2.3通信技術 | 7.6.1簡單的實例連線 | 13.4.3單元測試 |
3.3分析原理 | 7.6.2複雜的實例連線及其表示 | 13.4.4集成測試 |
3.3.1信息域 | 7.7訊息連線 | 13.4.5確認測試 |
3.3.2建立模型 | 小結 | 13.5調試 |
3.3.3分解 | 綜合練習7 | 小結 |
3.4系統模型與模擬 | 第8章 面向對象設計 | 綜合練習13 |
3.4.1系統模型 | 8.1系統總體方案 | 第14章 軟體維護 |
3.4.2系統建模和模擬 | 8.2軟體體系結構 | 14.1軟體維護概述 |
3.5成本效益分析 | 8.3設計環境 | 14.1.1軟體維護的定義 |
3.6可行性研究的文檔 | 8.3.1為適應編程環境的調整 | 14.1.2影響維護工作的因素 |
3.7項目開發計畫 | 8.3.2對象設計的步驟 | 14.1.3維護成本 |
3.7.1方案選擇 | 8.4完善對象的細節 | 14.2軟體可維護性 |
3.7.2制訂項目開發計畫 | 8.5設計算法 | 14.2.1軟體可維護性的定義 |
小結 | 8.5.1選擇算法 | 14.2.2可維護性的度量 |
綜合練習3 | 8.5.2選擇數據結構 | 14.3軟體維護的特點 |
第4章 軟體需求分析 | 8.6關聯設計 | 14.3.1非結構化維護和結構化維護 |
4.1需求分析 | 8.6.1單向關聯 | 14.3.2維護的困難性 |
4.1.1需求分析的特點 | 8.6.2雙向關聯 | 14.3.3軟體維護的費用 |
4.1.2需求分析的原則 | 8.7設計最佳化 | 14.4軟體維護的實施 |
4.1.3需求分析的任務 | 小結 | 14.4.1維護的組織 |
4.1.4需求分析的方法 | 綜合練習8 | 14.4.2維護的流程 |
4.2結構化分析 | 第9章 用戶界面設計 | 14.4.3維護技術 |
4.2.1自頂向下逐層分解 | 9.1人的因素 | 14.4.4維護的副作用 |
4.2.2結構化分析步驟 | 9.1.1分析活動者 | 14.5維護“老化代碼” |
4.3系統流程圖 | 9.1.2從UseCase分析人機互動 | 14.6逆向工程和再工程 |
4.4數據流圖 | 9.1.3分析處理異常事件的人機互動 | 14.6.1預防性維護 |
4.4.1基本圖形符號 | 9.1.4命令的組織 | 14.6.2逆向工程的元素 |
4.4.2畫數據流圖 | 9.1.5輸出信息的組織結構 | 14.6.3再工程中的重構技術 |
4.4.3結構化分析方法的套用 | 9.2界面設計風格 | 小結 |
4.5數據字典 | 9.2.1選單的選擇 | 綜合練習14 |
4.5.1內容及格式 | 9.2.2對話框 | 第15章 軟體項目管理與計畫 |
4.5.2數據字典的實現 | 9.2.3視窗 | 15.1軟體項目管理概述 |
小結 | 9.3人機界面的設計準則 | 15.1.1軟體管理的對象 |
綜合練習4 | 9.4人機界面設計過程 | 15.1.2軟體開發中的資源 |
第5章 總體設計 | 9.4.1用戶界面模型 | 15.1.3分解技術 |
5.1軟體設計的重要性 | 9.4.2界面支持系統 | 15.2項目管理過程 |
5.2設計過程 | 9.4.3界面元素 | 15.3軟體開發成本估算 |
5.3軟體總體設計 | 9.4.4設計的形式 | 15.3.1軟體開發成本估算方法 |
5.4設計基本原理 | 9.5描述方法與技術 | 15.3.2軟體開發成本估算的經驗模型 |
5.4.1抽象 | 9.5.1靈境技術 | 15.4風險分析 |
5.4.2細化 | 9.5.2多通道人機互動技術 | 15.4.1風險識別 |
5.4.3模組化 | 小結 | 15.4.2風險估算 |
5.4.4軟體體系結構 | 綜合練習9 | 15.4.3風險評價 |
5.4.5程式結構 | 第10章 資料庫及其接口設計 | 15.4.4風險駕馭和監控 |
5.4.6數據結構 | 10.1數據管理系統及其選擇 | 15.5進度安排 |
5.4.7軟體過程 | 10.2技術整合 | 15.5.1軟體開發小組人數與軟體生產率 |
5.5體系結構設計 | 10.3數據接口 | 15.5.2任務的確定與並行性 |
5.5.1軟體結構圖 | 10.4對象存儲方案和數據接口的設計策略 | 15.5.3制定開發進度計畫 |
5.5.2模組的大小 | 10.4.1針對檔案系統的設計 | 15.5.4進度安排的圖形方法 |
5.5.3扇出和扇入與深度和寬度 | 10.4.2針對RDBMS的設計 | 15.5.5項目的追蹤和控制 |
5.5.4模組的耦合 | 10.4.3使用OODBMS | 15.6軟體項目的組織 |
5.5.5模組的內聚 | 小結 | 15.6.1軟體項目管理的特點 |
5.5.6結構設計的一般準則 | 綜合練習10 | 15.6.2軟體項目組織的建立 |
5.5.7模組的作用域與控制域 | 第11章 軟體實現 | 15.6.3人員配備 |
5.6結構化設計 | 11.1程式設計語言的特性及選擇 | 小結 |
5.6.1數據流的類型 | 11.1.1程式設計語言特性 | 綜合練習15 |
5.6.2過程步驟 | 11.1.2程式設計語言的選擇 | 參考答案 |
5.6.3變換分析設計 | 11.2程式設計風格 | |
5.6.4事務分析設計 | 11.3程式設計效率 |
教學資源
- 配套教材
書名 | 書號 | 出版社 | 出版時間 | 作者 |
---|---|---|---|---|
《軟體工程習題解答(第4版)》 | 9787302473336 | 清華大學出版社 | 2017年7月1日 | 李代平、楊成義 |
《軟體工程實踐與課程設計》 | 9787302478676 | 清華大學出版社 | 2017年12月1日 | 李代平、楊成義 |
- 課程資源