軟體測試實務:業界成功案例與高效實踐 I《Chapter 3

敏捷開發與市場測試

林書緯    宋濤    張仁瀚    蔡孟哲    蘭鑫

新加坡商鈦坦科技

在敏捷開發(Agile Development)中,採用的是跨職能組成的團隊,所以不會設置專職的測試團隊,而是讓團隊有辦法將一個需求從設計、開發、測試、部署都能獨自完成。因此本章會介紹敏捷開發,並更多著重在講述測試這個職能是如何在敏捷開發中參與,以及會有哪些實踐。

Product Owners Build The Right Thing,

Developers Build The Thing Right,

ScrumMasters Make It Fast.

這是在敏捷圈常聽到的一段宣言。

在鈦坦(新加坡商鈦坦科技,Titanso! Pte Ltd.),軟體開發上不只要透過各項技術實踐與軟體測試(So!ware Testing), 將軟體按照需求做出來(Build the thing right),我們更著重在是否有開發出符合使用者與市場真正需求的軟體(Build the right thing),這部分仰賴的就是市場測試(Market Testing)。兩者是相輔相成的,缺一不可。而要更快地讓想法通過市場測試、開發出來並通過軟體測試,仰賴的就是培育人才與自組織團隊。

所以在接下來的故事裡,前半部(本章)會分享我們如何透過敏捷開發確保Build the right thing(市場測試);後半部(第四章)則會分享如何承接業務需求,並透過各項技術實踐、檢驗與測試,確保Build the thing right(軟體測試),最後提及鈦坦是怎麼培育相關人才,讓這些能力得以傳承,並總結在軟體測試實踐上的經驗供讀者參考。

這一切就要先從敏捷軟體開發宣言的故事說起,讓我們看下去吧!

章節大綱

CH3 敏捷開發與市場測試

3.1 敏捷開發的故事(Story of Agile Development)

  3.1.1 敏捷軟體開發宣言

  3.1.2 何謂敏捷

3.2 自組織與組織架構(Self-Organization and Structure)

  3.2.1 自組織(Self Organization)

  3.2.2 跨職能團隊(Cross-Functional Team)

3.3 市場測試與交付(Market Testing and Delivery)

  3.3.1 價值

  3.3.2 最小可行性產品(MVP)/ 最小適銷產品(MMP)

  3.3.3 增量與迭代式開發(Incremental/Iterative Development)

  3.3.4 端到端使用者故事(End-to-End User Story)

  3.3.5 完成的定義(DoD)

  3.3.4 端到端使用者故事(End-to-End User Story)

  3.3.6 A/B 測試(A/B Testing)

  3.3.7 Feature Toggle

3.4 敏捷開發流程(Agile Development Flow)

  3.4.1 Sprint(短衝)

  3.4.2 Sprint Planning(短衝規劃會議)

  3.4.3 Sprint Goal(短衝目標)

  3.4.4 精煉(Refine)

  3.4.5 產品待辦清單精煉活動(PBR)

3.5 結語

內容預覽

作者簡介

林書緯

技術背景的ScrumMaster,想成為能將多個工程師纜成一條繩索、更能發揮專業與價值的存在,遂踏上了軟工與敏捷之路。目前在鈦坦擔任全職ScrumMaster,持續追求敏捷之道。

張仁瀚

鈦坦資深工程師,喜歡香菜,熱愛棒球運動。職涯前期專注在ASP.NET Web Application 的開發,近期配合雲服務及DevOps 精神的興盛,致力於學習Docker/Kubernetes/ELK 等相關應用,以技術為手段,為客戶創造更多產品價值。 

蔡孟哲

服務於鈦坦科技,前世為資深軟體工程師,目前轉生成為ScrumMaster。信仰簡單設計,樂於把複雜的知識以易懂的方式呈現,因此在工程師時期,偏好Refactor、TDD、Unit Test 等兼顧產品品質與展現程式碼意圖的開發技能;ScrumMaster 時期,則致力於透過視覺化以及教育等手段優化團隊運作流程。 

蘭鑫

之前為QA,後隨鈦坦轉Scrum 而成為工程師,現為鈦坦科技資深工程師。主要從事ASP.NET API 的開發與維護。偏好測試案例設計,重構以及程式架構設計。

作者所屬機構

專章引用

林書緯、宋濤、張仁瀚、蔡孟哲、蘭鑫,〈敏捷開發與市場測試〉。《軟體測試實務:業界成功案例與高效實踐 I》,博碩文化,2023年5月,ISBN 978-626-333-485-4。