軟件體系結構(第6版)

覃征、沈澎博、李誌鵬、黨璇

  • 出版商: 清華大學
  • 出版日期: 2026-05-01
  • 售價: $419
  • 語言: 簡體中文
  • ISBN: 7302714819
  • ISBN-13: 9787302714811
  • 相關分類: 軟體架構
  • 下單後立即進貨 (約4週~6週)

  • 軟件體系結構(第6版)-preview-1
  • 軟件體系結構(第6版)-preview-2
  • 軟件體系結構(第6版)-preview-3
軟件體系結構(第6版)-preview-1

商品描述

隨著軟件工程的不斷演進,軟件體系結構逐漸成熟,已從傳統的軟件工程研究中獨立出來,成為計算機科學的一個重要分支,也是當今業界和學術界的熱點研究領域。軟件體系結構的目標是為開發者提供統一、精確、高度抽象且易於分析的系統信息,從而助力軟件系統實現快速、低成本、高質量的構建。本書詳細介紹和分析了軟件體系結構的理論基礎、研究內容、發展狀況和實踐應用。通過閱讀本書,讀者可以掌握軟件體系結構的研究背景、基本概念、描述方法、設計風格、評估方法、開發工具,以及柔性軟件體系結構等內容。本書采用近年來的相關案例、數據與圖示等材料,反映了軟件體系結構領域的**發展。本書可作為計算機、軟件工程及相關專業本科生和研究生的教材,亦能為從事相關研究的科研人員及一線開發者提供理論支撐與實踐指導。

目錄大綱

目錄

 

 

第1章軟件體系結構的起源和發展1

1.1軟件的產生與發展1

1.2軟件設計的演變與軟件工程的興起3

1.3軟件體系結構的誕生與發展7

1.3.1軟件體系結構誕生的背景及意義7

1.3.2軟件體系結構概念的形成與發展12

1.4軟件體系結構在軟件生命周期中的定位16

1.5軟件體系結構的研究內容、原理及標準18

1.5.1軟件體系結構的研究內容18

1.5.2軟件體系結構的設計原理19

1.5.3軟件體系結構標準20

1.6軟件體系結構的四個層次級別22

1.7本章小結26

第2章軟件體系結構風格和模式28

2.1軟件體系結構風格和模式基礎28

2.2管道過濾器風格31

2.3面向對象風格36

2.4事件驅動風格42

2.5分層風格51

2.6數據共享風格56

2.7解釋器風格60

2.8反饋控制環風格64

2.9雲體系結構風格65

2.10網格計算體系風格72

2.11移動App體系結構風格78

2.12其他流行的體系結構80

2.12.1適用於物聯網(IoT)系統的軟件架構80

2.12.2微服務架構81

2.13體系結構風格比較82

2.14異構風格的集成83

2.15案例85

2.15.1案例一: SMCSP項目85

2.15.2案例二: Recommender項目105

2.15.3案例三: 圖像/視頻註解平臺項目112

2.16本章小結120

第3章軟件體系結構描述122

3.1軟件體系結構建模概述122

3.1.1軟件體系結構建模問題122

3.1.2軟件體系結構描述方法123

3.2基於UML的軟件體系結構描述124

3.2.1UML語言概述124

3.2.2UML語言體系125

3.2.3UML的軟件體系結構描述128

3.3UML體系結構描述方式案例分析132

3.3.1“4+1”視圖模型132

3.3.2教務管理系統的非形式化描述案例134

3.4基於ADL的軟件體系結構描述139

3.4.1ADL概述140

3.4.2ADL結構分析144

3.5ADL體系結構描述方式案例分析149

3.5.1構件與連接器描述149

3.5.2配置的描述153

3.6可擴展體系結構語言基礎框架FEAL156

3.6.1FEAL設計意圖156

3.6.2FEAL結構158

3.6.3FEAL映射器159

3.6.4FEAL應用示例159

3.7本章小結160

第4章軟件體系結構級別的設計策略162

4.1體系結構設計的重用162

4.2體系結構設計空間與規則163

4.3基於體系結構的軟件分析設計過程SADPBA164

4.3.1SADPBA總覽164

4.3.2使用設計空間對設計過程進行拆分166

4.3.3SADPBA的追蹤機制167

4.3.4軟件體系結構的生命周期模型167

4.3.5實踐中的SADPBA168

4.4示例: MEECS174

4.4.1MEECS簡介174

4.4.2將SADPBA應用到MEECS175

4.5軟件體系結構風格選擇181

4.5.1架構元素說明的組成181

4.5.2特征類別分析184

4.5.3PSAS方法主流程187

4.6本章小結188

第5章軟件體系結構集成開發環境189

5.1軟件體系結構集成開發環境的作用189

5.1.1形式化描述方法的比較189

5.1.2體系結構集成開發環境的作用189

5.2體系結構IDE原型192

5.2.1用戶界面層192

5.2.2模型層193

5.2.3基礎層194

5.2.4體系結構集成開發環境設計策略195

5.3ArchStudio 5系統196

5.3.1ArchStudio 5簡介196

5.3.2ArchStudio 5安裝198

5.3.3ArchStudio 5概況199

5.3.4ArchStudio 5的使用203

5.4SysADL Studio系統207

5.4.1SysADL Studio簡介207

5.4.2SysADL Studio安裝207

5.4.3SysADL Studio概況210

5.4.4SysADL Studio的使用211

5.5其他開發環境217

5.5.1ArchWare: 體系結構改進開發環境217

5.5.2自適應軟件體系結構開發環境217

5.5.3面向UniCore體系結構的集成開發環境218

5.5.4圖文法規則制導的軟件體系結構開發環境219

5.6本章小結220

第6章軟件體系結構評估222

6.1軟件體系結構評估概述222

6.1.1質量屬性222

6.1.2評估的必要性224

6.1.3評估的時機225

6.1.4評估的結果226

6.1.5評估方法分類227

6.2QAW質量屬性專題研討會方法231

6.3SAAM軟件構架分析方法232

6.3.1SAAM的一般步驟232

6.3.2場景生成233

6.3.3體系結構描述233

6.3.4場景的分類和優先級確定234

6.3.5間接場景的單個評估234

6.3.6對場景關聯的評估235

6.3.7形成總體評估235

6.4ATAM體系結構權衡分析方法236

6.4.1最初的ATAM237

6.4.2改進版ATAM238

6.4.3ATAM的一般過程239

6.4.4體系結構描述及收集評估有關信息241

6.4.5以體系結構為中心進行分析242

6.4.6以風險承擔者為中心進行分析244

6.4.7調教最終評估報告244

6.5ARID積極的中間設計審核方法245

6.6ALPSM體系結構級別上的軟件維護預測247

6.7基於度量和預測的評估方法248

6.7.1基於人工智能的定性知識管理與建模248

6.7.2構建貝葉斯信念網絡的結構248

6.7.3軟件體系結構評估信念網絡249

6.7.4SAABNet的使用251

6.7.5SAABNet的驗證252

6.8評估方法比較254

6.8.1比較框架255

6.8.2評估方法概覽與比較257

6.8.3軟件結構化測試271

6.9本章小結273

第7章柔性軟件體系結構274

7.1動態軟件體系結構274

7.1.1動態軟件體系結構定義274

7.1.2動態軟件體系方法分類276

7.1.3πADL: 行為視角276

7.1.4MARMOL: 反射視角281

7.1.5LIME: 協調視角287

7.2柔性軟件體系結構概述292

7.2.1柔性軟件體系結構定義293

7.2.2柔性軟件體系結構場景舉例296

7.3柔性軟件體系結構案例298

7.3.1Rainbow298

7.3.2MADAM299

7.4柔性軟件體系結構適用範圍301

7.5本章小結303

第8章軟件體系結構的前景305

8.1國內外軟件體系結構應用305

8.1.1全球軟件產品業305

8.1.2軟件體系結構在系統中的應用312

8.1.3六大計算軟件平臺體系結構317

8.2當今軟件體系結構研究的挑戰325

8.3軟件體系結構的學術平臺326

8.4軟件體系結構的研究機遇327

8.5本章小結328

參考文獻330