# 開場介紹 - 主持人Enrico歡迎觀眾參加Avanzco Berta的小談活動,今年首場由Gojko Adzic主講,主題為「Specification By Example」。 - Gojko Adzic提到他先前在談論Impact Mapping的小談活動受到好評,這次將深入探討Specification By Example。 - 這個活動的目的是以非正式方式深入了解講者教授的主題,觀眾可以透過YouTube Chat提問,形成一個互動式的對話。 # Specification By Example (Spec by Example) 定義 - Spec by Example是一種協作的需求和測試方法,是快速取得不同角色(測試人員、開發人員、分析人員、產品擁有者)共識的最快方式之一。 - 適用於短週期的交付,且在這種短週期的開發中,常常難以進行充分的分析,Spec by Example能夠有效地解決這個挑戰。 - 通常在Scrum或Kanban風格的過程中實施,是迭代軟體交付品質的基石,也廣泛應用於行為驅動開發(Behavior Driven Development,BDD)。 # Spec by Example 實際應用 - Collaborative Analysis:透過「Three Amigos」模式,即一位開發人員、一位測試人員、一位分析人員,使用例子進行協作分析,快速達成共識。 - Feedback Exercises:針對5-15人的較大群體,使用反饋練習檢查共享的理解,特別強調邊界條件,以確保大家對於案例的理解一致。 - Divergent Merge Style Workshops:針對更大的群體,將其分成小組進行分析,再匯整結果,快速發現不同理解之處,促使全體達成共識。 - 避免使用「Write and Review」方式,即由一人編寫理解並發送給其他人,因此缺乏協作性。 # Pitfalls(常見問題) - 由一人執行所有分析,可能導致團隊其他成員沒有參與,應避免這種情況。 - 忽略邊界條件,僅看重正面案例,容易造成共識不足。 - 工具驅動:避免讓工具限制討論,建議使用自由格式的工具,如白板、翻轉紙等。 # 關於 Remote Workshop - Remote Edition of Specification by Example:2月7日起,5個2.5小時的模組,涵蓋不同主題,以理論和實踐並重,注重實際操練。 - Workshop主題包括如何快速排除誤解、協作分析的引導技巧、使用「Given When Then」格式、Example Mapping和如何將這些融入整個流程。 # 關鍵字 - Spec by Example (Specification By Example):協作的需求和測試方法,是一種快速取得不同角色共識的有效方式,適用於短週期的交付,通常在Scrum或Kanban風格的過程中實施。 - Three Amigos:由一位開發人員、一位測試人員、一位分析人員組成的小組,使用例子進行協作分析的模式。 - Feedback Exercises:一種檢查共享理解的反饋練習,特別強調邊界條件,用於5-15人的較大群體。 - Divergent Merge Style Workshops:將大群體分成小組進行分析,再匯整結果,快速發現不同理解之處的工作坊模式。 - Write and Review:一種不太推薦的方式,由一人編寫理解並發送給其他人,缺乏協作性。 - Remote Edition of Specification by Example:Gojko Adzic主持的Specification by Example遠程工作坊,包含5個2.5小時的模組,強調實踐操練和理論結合。 - Given When Then:一種描述軟體需求和測試場景的格式,用於明確指定前提、操作和預期結果。 - Example Mapping:一種用於分析和討論需求的方法,通常涉及多角色的參與,目的是建立共享的理解。 - Cycle Time:從某事物提出到最終實現所需的時間,對於減少開發週期很重要。 - BDD (Behavior Driven Development):行為驅動開發,一種軟體開發方法,強調在開發前先定義系統行為。 - White Cash Plus Project:一個使用儲蓄計畫的專案,早期使用Spec by Example方法。 - Cycle Time Reduction:縮短從提出需求到實現的時間,是Spec by Example的一個優勢之一。 - Example-driven Development:一種開發方法,強調使用示例來指導和驅動開發流程。