領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)

Stefan Hofer, Henning Schwentner 著 博碩AI編輯室 譯;高翊凱、陳勉修、博碩文化 審

  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-1
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-2
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-3
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-4
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-5
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-6
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-7
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-8
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-9
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-10
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-11
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-12
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-13
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-14
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-15
  • 領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-16
領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)-preview-1

買這商品的人也買了...

商品描述

建立更好的商業軟體:透過敍述與視覺化的故事



故事講述是人類溝通的核心——那麼,何不利用它來克服軟體設計中代價高昂的誤解呢?透過講述和視覺化故事,領域專家與團隊成員可以將業務流程和領域知識具體化。領域故事化能讓每個人理解相關的角色、活動和工作項目。在這本指南中,方法的發明者解釋了如何讓領域專家和團隊共同合作,利用簡單的圖像獲取深入的見解、展示他們的工作、尋求回饋,並讓所有人達成共識。

Stefan Hofer 和 Henning Schwentner 介紹了這種方法的簡單圖像式語言、基於情境的建模技術、工作坊格式以及與其他建模方法的關聯。他們透過逐步的案例研究,指導你解決許多常見的問題:
讓所有專案參與者和利害關係人在技術面和業務面完全達成共識
掌握一套簡單的符號和規則來建模任何流程或工作流程
利用以工作坊為基礎的協作建模,更快找到更好的解決方案
劃定淸晰的邊界以便有效組織你的領域、軟體和團隊
將領域知識轉化為需求,自然地融入敏捷流程中
將模型從圖表和便條紙轉化為程式碼
提高 IT 環境的可見性,以便進行整合或優化

這本指南適合所有希望提升軟體效能的人,包括開發人員、架構師,以及每天依賴這些軟體的團隊負責人、領域專家、產品負責人和高層管理者。


專業人士推薦
透過這個出色的工具進行協同建模,可以在視覺上進行探索,同時捕捉到以領域驅動的發現和模型使用場景,這將帶來更大的成功。「領域故事化」不應該被視為取代先前工具的工具,而是為了獲得更多的知識收集工具。

——Vaughn Vernon,《實戰領域驅動設計:高效軟體開發的正確觀點、應用策略與實作指引》作者

這本書遠超出了對領域故事化的指導。Stefan 和 Henning 充滿熱情、聰明且具有豐富的協作領域建模經驗。透過他們的思維模式,這本書將帶你深入他們的腦海,深入介紹協作領域建模和工作坊引導的原則。無論你決定使用哪種技術,無論你對領域驅動設計了解多少,都將非常有用。它甚至可能激勵你創造下一代的協作建模技術。

—Nick Tune,軟體工程師

作者簡介

Stefan Hofer 不擅長繪畫。然而,他認為他可以透過繪製領域故事來建立領域知識。Stefan 在奧地利學習軟體工程,並獲得了電腦科學博士學位。自 2005 年以來,他一直在德國漢堡的 WPS 工作場域解決方案(Workplace Solutions)工作。他在那裡的工作是幫助團隊以正確旳方法開發合適的軟體。他負責維護domainstorytelling.org 這個網站。你可以在 Twitter 上(@hofstef)聯繫他,或者發送電子郵件到
stefan@domainstorytelling.org。


Henning Schwentner 是一位程式設計師,自從他在 90 年代初獲得 Amiga 500 電腦以來,他一直對電腦情有獨鍾。他有幸將這份熱情轉化為職業,並在 WPS 工作場域解決方案(Workplace Solutions)擔任程式設計師,教練和顧問。他幫助團隊在現有的軟體中帶入結構,或者從頭開始建立具有可持續架構的新系統。Henning 是 LeasingNinja.io 的作者、《Domain-Driven Design Distilled》的德文譯者以及 CoMoCamp 的共同組織者。他的推特帳號是 @hschwentner,可以透過 henning@domainstorytelling.org 發送電子郵件給他。Henning 是五個孩子的驕傲父親,家庭狀況非常特殊。

 
審校者簡介
高翊凱(Kim Kao) 目前在AWS Taiwan 擔任資深解決方案架構師,專注於架構師職能發展、商務需求對接及解決方案設計與實施,特別關注提升IT 從業人員的價值,同時也是台灣領域驅動設計社群(DDDesign Taiwan Community )的發起人之一。致力於促進技術工作者的社交交流(Socio-technical ),推動在大型商務系統變革中跨群體的協作與共創。倡導企業透過領域驅動設計(DDD)和便捷的雲端服務,打造更適切的系統方案,解決實際商務問題。

陳勉修(Michael Chen) 現任樂屋國際資訊產品處副總經理,並擔任 DDDesign Taiwan 社群核心志工。專精於Agile 和Domain-Driven Design 的實踐、推廣與傳承,在矩陣式組織中負責產品設計、開發與營運的全方位管理。堅信企業的永續經營需依賴貼近商業流程的系統,其關鍵在於整體性的架構分析,而非單純功能式的結構設計。持續投入於產品需求與技術架構整合開發的探索,致力於建構能持續提供商業價值的軟體系統。

目錄大綱

圖像式語言
典型的語句結構
領域故事
系列編輯推薦序
推薦序
自序
致謝
關於作者
關於審校者

【第一部分 領域故事化解析】

第 1 章 導論
什麼是領域故事化?
你的第一個領域故事

第 2 章 圖像式語言
參與者
工作物件
活動
序號
註解
建模畫布
群組
色彩
無判斷式
將所有元素整合在一起
領域故事的文法
良好的語言風格

第 3 章 基於情境的建模
什麼是情境?
領域故事化中的情境
以具體案例為情境
保持全局觀

第 4 章 範圍
粒度
時間點——現在樣貌 vs. 未來情境
領域純度——純粹 vs. 數位化
結合範圍因子:一個典型的過程

第 5 章 建模工具
在紙上或板上建模
使用軟體工具進行建模
選擇工具

第 6 章 工作坊形式
在工作坊之前
工作坊
工作坊結束後
討論「未來情境」的工作坊
遠端線上工作坊
主持人
將建模者作為獨立角色
主持模式 vs. 合作模式

第 7 章 與其他建模方法的關聯
領域驅動設計
事件風暴
使用者故事對照
範例對照
故事風暴
使用案例
統一建模語言
商業流程模型和標記法
摘要

【第二部分 在不同的目的下使用與調適領域故事化】

第 8 章 案例研究:Alphorn 汽車租賃有限公司
探索Alphorn——整體的領域
深入了解風險評估——了解一個重要的子領域
釐清風險評估——避免使用技術術語
優化風險評估——規劃未來情境的流程
引入新軟體——整合商業流程與資訊技術支援
摘要

第 9 章 學習領域語言
互相交流和傾聽以理解彼此
組織內有多種領域語言
使用自然語言
迷失在翻譯中
接下來讀什麼?

第 10 章 尋找邊界
多模型的樂趣
發現子領域的啟發式方法
從子領域到限界上下文
從上下文邊界到團隊邊界
接下來讀什麼?

第 11 章 處理需求
軟體開發如同一系列的對話
從領域故事到需求
調整指南
限制
接下來讀什麼?

第 12 章 以程式碼建模
從領域故事到領域模型
實作領域模型
接下來讀什麼?

第 13 章 支援組織變革
改變人們的工作流程
數位化工作
接下來讀什麼?

第 14 章 決定自行開發或採購,以及選擇現成軟體
理解現成軟體解決方案的流程
接下來讀什麼?

第 15 章 尋找影子 IT
不僅軟體開發人員會開發軟體
揭露隱藏的軟體系統
接下來讀什麼?

第 16 章 結論
領域故事化的未來
領域故事化的本質

 
附錄 A 領域故事化的歷史

詞彙表
參考書目
索引