軟件架構設計:實用方法及實踐(原書第2版) Designing Software Architectures: A Practical Approach
Cervantes, Humberto, Kazman, Rick 譯 康敏峰
- 出版商: 機械工業
- 出版日期: 2025-07-01
- 定價: $474
- 售價: 7.9 折 $374
- 語言: 簡體中文
- 頁數: 224
- ISBN: 7111780272
- ISBN-13: 9787111780274
-
相關分類:
Design Pattern
- 此書翻譯自: Designing Software Architectures: A Practical Approach
立即出貨
買這商品的人也買了...
-
Effective Objective-C 2.0 中文版-改善 iOS 與 OS X 程式的 52 個具體做法 (Effective Objective-C 2.0)$480$379 -
對抗機器學習:機器學習系統中的攻擊和防禦$414$393 -
$658無線通信智能處理及乾擾消除技術 -
$504微波與光波融合的新一代微電子裝備製造技術 -
$453AIoT 系統開發:基於機器學習和 Python 深度學習 -
$648高精度 GNSS\INS 組合定位及測姿技術 -
$555測試架構師修煉之道:從測試工程師到測試架構師, 2/e -
$453從程序員到架構師:大數據量、緩存、高並發、微服務、多團隊協同等核心場景實戰 -
人工智能硬件電路設計基礎及應用$1,188$1,128 -
$499雷達輻射式模擬信號分析與處理 -
$504高並發架構實戰:從需求分析到系統設計 -
設計機器學習系統|迭代開發生產環境就緒的 ML 程式 (Designing Machine Learning Systems: An Iterative Process for Production-Ready Applications)$780$616 -
JavaScript 設計模式學習手冊, 2/e (Learning JavaScript Design Patterns: A JavaScript and React Developer's Guide, 2/e)$580$458 -
無人機通信$828$786 -
雷達通信的頻譜共享及一體化 關鍵技術與應用$894$849 -
使用者體驗法則 |運用心理學原則設計更好的產品與服務, 2/e (Laws of UX: Using Psychology to Design Better Products & Services, 2/e)$580$458 -
$453軟件架構決策之道:軟件架構決策的原則和方法 -
Effective 軟體架構 更快建立更好的軟體$414$393 -
$1,128從零自制操作系統 -
AI 工程|從基礎模型建構應用 (AI Engineering : Building Applications with Foundation Models)$1,200$948 -
$504雲計算:概念、技術、安全與架構(原書第2版) -
UX 商業價值實現之道|打造成功的數位產品服務 (UX for Business: How to Design Valuable Digital Companies)$780$616 -
深入高可用系統原理與設計$474$450 -
建構可擴展系統|設計分散式架構 (Foundations of Scalable Systems: Designing Distributed Architectures)$780$616 -
軟體架構原理|現代工程方法, 2/e (Fundamentals of Software Architecture: A Modern Engineering Approach, 2/e)$980$774
簡體書新到貨|2書75折 ( 10/6-10/15 ) 詳見活動內容 »
-
85折
$254LangChain 與大語言模型應用開發實踐 -
VIP 95折
數學之美 Ⅱ$774$735 -
VIP 95折
機器人系統開發與優化:算法、感知與控制策略$714$678 -
VIP 95折
AI for Science 中的深度學習$654$621 -
VIP 95折
覆雜系統架構設計實戰:從架構設計原理到頂尖公司面試$594$564 -
85折
$453電力電子化直流系統電弧智能故障檢測技術 -
79折
$706電子商務:商務、技術、社會 原書第17版 -
79折
$606初識密碼學 -
VIP 95折
量子力學, 2/e$330$313 -
VIP 95折
學習 Unity 和 C# 遊戲編程, 2/e$756$718 -
79折
$417解密GRE數學出題點 -
VIP 95折
Stable Diffusion - ComfyUI AI 繪畫工作流解析$534$507 -
VIP 95折
多模態 AI Agent 開發實踐$600$570 -
$354機器學習基礎及應用 -
85折
$657AI 大模型面試內參 (上、下冊) -
VIP 95折
Qt 6 for Python:PySide6 GUI 應用開發指南$899$854 -
85折
$448破殼線性代數——踐悟人工智能與量子力學 -
85折
$249數字集成電路設計實踐 -
85折
$856數字通信——基礎與應用(原書第3版·中文導讀版) -
85折
$407OpenCV 圖像實戰 : 圖像處理的深度探索與項目實戰 -
79折
$469解碼大模型:原理與實戰 -
79折
$606Cadence Allegro 24.1 電子設計速成實戰寶典 -
VIP 95折
AI 賦能 AutoCAD 高效作圖與自動化實現(AutoCAD 2024)(視頻教學版)$359$341 -
79折
$236AIGC 與電商營銷技能實戰 (慕課版) -
VIP 95折
從演算法到電路:數碼芯片演算法的電路實現$714$678
相關主題
商品描述
本書闡述了如何以一種系統的、可預測的、可重覆的、節約成本的方式來設計各類軟件架構。書中不僅介紹了一種實用的架構設計方法,還提供了由可重用的設計知識所支撐的結構化方法,也收錄了豐富的案例研究,用於展示如何使用這一實用方法。利用現實案例,你將掌握已被驗證過的屬性驅動設計(ADD)的全新版本,比如伴隨功能需求和架構問題出現的可修改性、可用性以及可靠性。Humberto Cervantes和Rick Kazman基於他們豐富的經驗,指導你通過各具特色的實用設計來支持完整的軟件周期,從需求到維護,再到演化。你將學習如何成功地將設計整合在組織背景中,以及如何使用敏捷方法設計軟件系統。
作者簡介
亨伯托·塞萬提斯(Humberto Cervantes)是一位經驗豐富的軟件架構師,同時也是墨西哥城Iztapalapa大都會自治大學的教授。他的主要研究方向是開發工具和方法,以改進軟件架構設計實踐。他還持有SEI頒發的軟件架構師專業證書和ATAM評估師證書。
裏克·卡茲曼(Rick Kazman)是夏威夷大學信息技術管理專業的Danny和Elsa Lui傑出教授。他參與創建了架構分析方法(ATAM)以及用於架構分析的Titan和DV8工具。
目錄大綱
譯者序
前言
致謝
關於作者
第1章 引言
1.1 動機
1.2 軟體架構
1.2.1 軟體架構的重要性
1.2.2 生命周期活動
1.3 架構師的角色
1.4 ADD簡史
1.5 總結
1.6 擴展閱讀
1.7 討論問題
第2章 架構設計
2.1 通用設計
2.2 軟體架構中的設計
2.2.1 架構設計
2.2.2 元素交互設計
2.2.3 元素內部設計
2.2.4 決策和設計級別
2.3 為什麼架構設計如此重要
2.4 架構驅動因素
2.4.1 設計目標
2.4.2 質量屬性
2.4.3 主要功能
2.4.4 架構關註點
2.4.5 約束條件
2.5 總結
2.6 擴展閱讀
2.7 討論問題
第3章 制定設計決策
3.1 制定設計決策概述
3.2 設計理念:創建軟體結構的基石
3.2.1 參考架構
3.2.2 模式
3.2.3 策略
3.2.4 外部開發的組件
3.3 支持性能的設計理念
3.3.1 性能策略
3.3.2 性能模式
3.4 支持可用性的設計理念
3.4.1 可用性策略
3.4.2 可用性模式
3.5 支持可修改性的設計概念
3.5.1 可修改性策略
3.5.2 可修改性模式
3.6 支持安全性的設計理念
3.6.1 安全策略
3.6.2 安全模式
3.7 支持可集成性的設計理念
3.7.1 可集成性策略
3.7.2 集成模式
3.8 總結
3.9 擴展閱讀
3.10 討論問題
第4章 架構設計過程
4.1 對具備原則性的方法的需求
4.2 屬性驅動設計3.0版本
4.2.1 步驟1:審查輸入
4.2.2 步驟2:通過選擇驅動因素建立疊代目標
4.2.3 步驟3:選擇系統元素進行細化
4.2.4 步驟4:選擇滿足選定驅動因素的設計概念
4.2.5 步驟5:實例化架構元素、分配職責並定義介面
4.2.6 步驟6:繪製視圖草圖並記錄設計決策
4.2.7 步驟7:執行當前設計分析,並審查疊代目標和設計目標的實現情況
4.2.8 必要時進行疊代
4.3 在不同的系統環境中應用屬性驅動設計
4.3.1 面向成熟領域的全新系統設計
4.3.2 面向新興領域的全新系統設計
4.3.3 面向現有系統的變更設計
4.3.4 替換遺留應用程序的設計
4.4 識別和選擇設計概念
4.4.1 設計概念的識別
4.4.2 設計概念的選擇
4.5 生成結構
4.5.1 實例化元素
4.5.2 分配功能並識別屬性
4.5.3 建立元素間的關係
4.6 定義介面
4.6.1 外部介面
4.6.2 內部介面
4.7 在設計過程中創建初步文檔
4.7.1 記錄視圖草圖
4.7.2 記錄設計決策
4.8 跟蹤設計進度
4.8.1 使用架構待辦事項列表
4.8.2 設計看板的使用
4.9 總結
4.10 擴展閱讀
4.11 討論問題
第5章 以API為中心的設計
5.1 業務敏捷性
5.1.1 從項目轉向產品
5.1.2 業務敏捷性的驅動因素
5.2 以API為中心的設計關註點
5.2.1 API和可組合性
5.2.2 API優先設計
5.2.3 以API為中心的設計概念
5.2.4 API管理
5.3 以API為中心的設計和ADD
5.3.1 ADD和API規範設計
5.3.2 在以API為中心的設計的其他領域使用ADD
5.4 總結
5.5 擴展閱讀
5.6 討論問題
第6章 可部署性設計
6.1 可部署性原則和架構設計
6.1.1 可部署性的定義
6.1.2 持續集成、部署和交付
6.1.3 可部署性設計的探討
6.2 支持可部署性的設計決策
6.2.1 可部署性策略
6.2.2 可部署性模式
6.3 可部署性和ADD
6.4 總結
6.5 擴展閱讀
6.6 討論問題
第7章 設計基於雲的解決方案
7.1 雲計算概述
7.1.1 什麼是雲計算
7.1.2 服務模型
7.1.3 托管資源
7.2 驅動因素和雲
7.2.1 質量屬性
7.2.2 約束條件
7.3 基於雲的設計概念
7.3.1 外部開發組件:雲功能
7.3.2 策略
7.3.3 模式
7.4 雲解決方案中的ADD
7.5 總結
7.6 擴展閱讀
7.7 討論問題
第8章 案例研究:酒店定價系統
8.1 商業案例
8.2 系統需求
8.2.1 主要功能
8.2.2 質量屬性場景
8.2.3 約束條件
8.2.4 架構關註點
8.3 開發和運營需求
8.3.1 質量屬性場景
8.3.2 約束條件
8.3.3 架構關註點
8.4 軟體設計過程
8.4.1 ADD步驟1:審查輸入
8.4.2 疊代1:建立整體系統結構
8.4.3 疊代2:識別支持主要功能的結構
8.4.4 疊代3:處理可靠性和可用性質量屬性
8.4.5 疊代4:滿足開發和運維需求
8.5 總結
8.6 擴展閱讀
8.7 討論問題
第9章 案例研究:數字孿生平臺
9.1 商業案例
9.2 系統需求
9.2.1 用例模型
9.2.2 質量屬性場景
9.2.3 約束條件
9.3 設計過程
9.3.1 ADD步驟1:審查輸入
9.3.2 疊代1:參考架構和整體系統結構
9.3.3 疊代2:工業物聯網要素的細化
9.3.4 疊代3:大數據和AI元素的細化
9.4 總結
9.5 擴展閱讀
9.6 討論問題
第10章 架構設計中的技術債務
10.1 技術債務
10.2 設計中技術債務的根源
10.3 重構和重新設計
10.4 技術債務和ADD
10.5 總結
10.6 擴展閱讀
10.7 討論問題
第11章 設計過程中的分析
11.1 分析和設計
11.2 為什麼要進行分析
11.3 分析技術
11.4 基於策略的分析
11.5 反思問題
11.6 基於場景的設計評審
11.7 總結
11.8 擴展閱讀
11.9 討論問題
第12章 組織中的架構設計流程
12.1 架構設計與開發生命周期
12.1.1 支持估算的設計
12.1.2 支持敏捷開發的設計
12.1.3 支持順序開發的設計
12.1.4 架構設計與測試策略
12.2 架構設計與組織結構
12.2.1 個人設計或團隊設計
12.2.2 架構師的多重角色
12.2.3 組織的架構指南
12.2.4 架構團隊
12.3 總結
12.4 擴展閱讀
12.5 討論問題
第13章 結束語
13.1 方法的必要性
13.2 未來方向
13.3 下一步
13.4 擴展閱讀
13.5 討論問題
附錄 基於策略的問卷調查
