
0人評分過此書
軟體工程
軟體開發本身有著本質上的問題及困難,軟體工程各種工程層面及管理層面中涉及的技術,便是為了逐步克服與減緩這些軟體與生俱來的複雜性、易變性、隱藏性及一致性等問題,進而透過系統化的軟體流程改善,讓開發團隊能循序漸進地學習如何與這「軟體狼人」共舞。
本書彙整了李允中教授在國立臺灣大學資訊工程學系教授軟體工程這門課的主要內容,共分為十章,分別以軟體流程、需求工程、物件導向軟體開發、軟體設計、軟體專案設計與管理、軟體測試、軟體品質管理與保證、軟體建構管理、軟體正規方法論、軟體流程改善之軟體能力成熟度整合模式等為主題,循序漸進地帶領讀者認識軟體開發的完整過程,並在書末以企業個案為例,幫助讀者將前面各章所學的概念與技術融會貫通,進而完善屬於個人的軟體流程。
本書彙整了李允中教授在國立臺灣大學資訊工程學系教授軟體工程這門課的主要內容,共分為十章,分別以軟體流程、需求工程、物件導向軟體開發、軟體設計、軟體專案設計與管理、軟體測試、軟體品質管理與保證、軟體建構管理、軟體正規方法論、軟體流程改善之軟體能力成熟度整合模式等為主題,循序漸進地帶領讀者認識軟體開發的完整過程,並在書末以企業個案為例,幫助讀者將前面各章所學的概念與技術融會貫通,進而完善屬於個人的軟體流程。
- 序:軟體工程的新思維與契機
-
第1章 軟體危機與流程
-
1.1ᅠ軟體危機
-
1.2ᅠ基本的軟體開發活動
-
1.3ᅠ軟體流程模式
-
1.3.1ᅠ瀑布式開發流程
-
1.3.2ᅠ統合流程
-
1.3.3ᅠ極限製程
-
1.3.4ᅠScrum 開發方法
-
-
本章總結
-
作業練習
-
-
第2章 需求工程
-
2.1ᅠ需求的種類
-
2.2ᅠ需求工程流程
-
2.2.1ᅠ需求擷取
-
2.2.2ᅠ需求分析
-
2.2.3ᅠ需求規格化
-
2.2.4ᅠ需求確認
-
-
2.3ᅠ需求管理
-
本章總結
-
作業練習
-
-
第3章 物件導向軟體開發
-
3.1ᅠ物件導向的基本概念
-
3.1.1ᅠ先塑模再寫程式
-
3.1.2ᅠ從物件的角度切入
-
3.1.3ᅠ物件導向的重要特性
-
-
3.2ᅠ需求塑模
-
3.2.1ᅠ使用者需求
-
3.2.2ᅠ使用案例塑模
-
3.2.3ᅠ領域塑模
-
-
3.3ᅠ物件導向分析
-
3.3.1ᅠ物件分析
-
3.3.2ᅠ軟體架構
-
3.3.3ᅠ使用案例實作
-
-
3.4ᅠ物件導向設計
-
3.4.1ᅠ使用者介面
-
3.4.2ᅠ資料儲存
-
-
3.5ᅠ物件導向實作
-
3.5.1ᅠ類 別
-
3.5.2ᅠ繼承關係
-
3.5.3ᅠ聯合關係
-
3.5.4ᅠ介面實作
-
-
3.6ᅠ目標導向使用案例
-
3.6.1ᅠ確認角色
-
3.6.2ᅠ確認目標
-
3.6.3ᅠ建立使用案例模式
-
3.6.4ᅠ評估目標
-
-
本章總結
-
作業練習
-
-
第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.4ᅠ軟體設計規畫
-
4.4.1ᅠ軟體設計步驟
-
4.4.2ᅠ軟體設計規畫書
-
-
4.5ᅠ進階軟體設計
-
4.5.1ᅠ設計樣式
-
4.5.2ᅠ服務導向架構
-
4.5.3ᅠ微服務架構
-
-
本章總結
-
作業練習
-
-
第5章 軟體專案計畫與管理
-
5.1ᅠ專案執行計畫書
-
5.2ᅠ專案範圍
-
5.2.1ᅠ專案初始
-
5.2.2ᅠ專案範圍規畫與定義
-
5.2.3ᅠ專案範圍驗證及變更控制
-
-
5.3ᅠ專案時間排程
-
5.3.1ᅠ專案時程計畫
-
5.3.2ᅠ專案時程控制
-
-
5.4ᅠ專案成本管理
-
5.4.1ᅠ成本預估
-
5.4.2ᅠ成本預算與控制
-
-
5.5ᅠ資源管理
-
5.5.1ᅠ人才招募
-
5.5.2ᅠ人員管理
-
-
5.6ᅠ風險管理
-
5.6.1ᅠ風險分析
-
5.6.2ᅠ風險控制
-
-
5.7ᅠ專案監控
-
5.7.1ᅠ專案監督
-
5.7.2ᅠ專案控制
-
-
5.8ᅠ專案其他計畫
-
本章總結
-
作業練習
-
-
第6章 軟體測試
-
6.1ᅠ軟體測試的基本概念
-
6.1.1ᅠ驗證與確認
-
6.1.2ᅠ軟體測試的基礎
-
-
6.2ᅠ軟體測試規畫
-
6.2.1ᅠ軟體測試步驟
-
6.2.2ᅠ軟體測試計畫書
-
-
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.4.5ᅠ資料流測試
-
6.4.6ᅠ迴圈測試
-
6.4.7ᅠ等價劃分法
-
6.4.8ᅠ邊界值分析法
-
6.4.9ᅠ因果圖法
-
-
6.5ᅠ軟體動態測試策略
-
6.5.1ᅠ單元測試
-
6.5.2ᅠ整合測試
-
6.5.3ᅠ系統測試
-
6.5.4ᅠ安全測試
-
6.5.5ᅠ效能測試
-
6.5.6ᅠ煙霧測試
-
6.5.7ᅠ驗收測試
-
-
本章總結
-
作業練習
-
-
第7章 軟體品質管理與保證
-
7.1ᅠ軟體品質管理
-
7.1.1ᅠ品質規畫
-
7.1.2ᅠ品質控制
-
7.1.3ᅠ品質保證
-
-
7.2ᅠ軟體品質保證
-
7.2.1ᅠSQA 人員的角色與工作
-
7.2.2ᅠ軟體品質保證規畫
-
7.2.3ᅠ軟體品質保證執行
-
7.2.4ᅠ軟體品質保證結果與追蹤
-
7.2.5ᅠ應用軟體品質保證於軟體開發生命週期的範例
-
-
7.3ᅠ運用品質模式提升軟體品質
-
本章總結
-
作業練習
-
-
第8章 軟體建構管理
-
8.1ᅠ軟體建構管理計畫書與建構識別
-
8.2ᅠ軟體基準建置
-
8.3ᅠ軟體建構控制
-
8.4ᅠ軟體建構狀態報告
-
8.5ᅠ軟體建構稽核
-
本章總結
-
作業練習
-
-
第9章 軟體正規方法論
-
9.1ᅠ正規方法的基本概念
-
9.1.1ᅠ正規方法的定義
-
9.1.2ᅠ正規語言與正規化規格語言
-
9.1.3ᅠ正規方法的軟體發展週期
-
-
9.2ᅠ正規化規格技術的分類
-
9.3ᅠ軟體工程的數學理論
-
9.3.1ᅠ集合論的基本概念
-
9.3.2ᅠ函 式
-
-
9.4ᅠ正規化規格語言
-
9.4.1ᅠZ 語言
-
9.4.2ᅠObject-Z 語言
-
9.4.3ᅠ物件限制語言
-
9.4.4ᅠ時態邏輯語言
-
-
9.5ᅠ正規化與非正規化規格語言之整合
-
本章總結
-
作業練習
-
-
第10章 軟體流程改善
-
10.1ᅠ以模式為基礎的流程改善
-
10.2ᅠ能力成熟度整合模式的歷史演變
-
10.3ᅠ能力成熟度整合模式的組成與表述
-
10.4ᅠ能力成熟度整合模式的流程領域
-
10.5ᅠ從CMMI 2006 到CMMI v3.0
-
10.6ᅠ持續整合與部署
-
本章總結
-
作業練習
-
-
附錄:軟體工程個案研究──需求管理
-
A.1ᅠ投票系統簡介
-
A.2ᅠ開發單位開發背景概況
-
A.3ᅠ開發流程的導入
-
A.3.1ᅠ新專案- 系統開發流程
-
A.3.2ᅠ維運系統或進行中專案之需求變更流程
-
A.3.3ᅠ維運系統需求擴建- 系統開發流程
-
A.3.4ᅠ文件彙整
-
A.3.5ᅠ需求變更管理
-
-
A.4ᅠ新投票系統的開發
-
- 參考文獻
- 詞彙說明與索引
評分與評論
請登入後再留言與評分