ATDD Make Love, Not War @ Agile Thailand
-
Upload
kulawat-wongsaroj -
Category
Documents
-
view
4.725 -
download
4
description
Transcript of ATDD Make Love, Not War @ Agile Thailand
Acceptance Test Driven Development
@kluak110 @sinapam
proteus-agility.com
Jun-17, 2012
Imagine there’s no Jira
It isn’t hard to do
Just apply ATDD
And Do Continuous Integration Too
Imagine dev and testers
Living life in peace
You may say I am a dreamer
But I am not the only one
I hope some day you would join us
Defect in the world will be just none
Pam, The CTO 5-year Agile Evangelist, Lead 20+ Agile Projects,
Hardcore Python Developer,
Kulawat, The CEO 5-year Agile Coach, 12-year in Software,
Big5 Consultant, Agile66.com Founder
proteus-agility.com Eidos - Agile Software Development Collaboration Tool
Agile Training Agile Coaching We are hiring!
http://gojko.net/2010/10/06/top-10-reasons-why-teams-fail-with-atdd/
หวหนาใหญ
Dev Manager
Dev Lead
Dev Dev
Dev Lead
Dev Dev
QA Manager
QA Lead
QA QA
QA Lead
QA QA
Objective Objective
Self-Managed Scrum Team
หวหนาใหญ
Dev Manager
Dev Lead
Dev Dev
Dev Lead
Dev Dev
QA Manager
QA Lead
QA QA
QA Lead
QA QA
Team
Member
Team
Member
Team
Member
Team
Member
Team
Member
Team
Member
Team
Member
Team
Member
ScrumMaster
เขยน Acceptance Test กอน Code แคนจรงๆ
จรงๆนะ
ปกต QA กท าอยแลว DEV ไมชนเพราะตองรอ Acceptance Test กอน
d2 d3 d4 d5 d1
QBA
BA
DL
QAL
Dev
QA
PM HLR
BA break down
story & kick-off release
Story w/ initial XC
QA refine
Exit Criteria
DEV discuss HLD & Spike
Story w/ more XC
Initial HLD
TPM
arr
ange
s “R
ele
ase
Pla
nn
ing”
for
DEV
& Q
A t
o d
iscu
ss s
tory
&
est
imat
e
Story w/ final XC
QA produce
Test Scripts
Test Scripts
DEV code
Build
ATDD Flow
จากบรษทสมมตวาอยแถวสวนลมฯ
Iteration n + 1
Story Priority
HLR Priority
PM put use cases and
priority list in PM wiki
Not Ready for Estimate
Not Ready for Estimate
Estimates
Story is in JIRA Story Priority in wiki
Iteration n
Story Priority
Velocity
Release Plan
Iteration 0 Before release starts
QA conduct
AT
Add more XC instead of separated test idea
In Release Planning, the whole team (or
feature team) discuss and estimate if ready. The planning should
stop if total estimate is beyond 120% of team
capacity
QA produce test scripts at least for the
work of the next iteration
DEV may start coding but should not check it in until
Test Scripts are run and pass on Dev env
QA close the story once all Acceptance Test are
passed
Dev จะวาง รอ QA
QA จะรสกแหมงๆ อยดๆ กลายเปนคนเขยน Requirement
QA จะใชเวลาเขยน Test นานขน เพราะกลายเปนคนรบผดชอบ Requirement!
Dev จะบนวาท าไม Requirement มนหยมหยมไปหมด
Dev จะรสกวาท าไมตองมาท างาน Test ทงทตวเองเปน Dev
Dev จะคยกบ QA มากขน เพราะไมเขาใจ Test ทเขยนมาก
QA จะคยกบ Dev มากขน เพราะไมรจะเขยน Test ยงไง
จ าไมไดแลววาเหนทไหน นาจะ NetObjective.com
Dev ชวน QA เขา Design Session
Dev เขยน Code ให Testable มากขน หลงจากโดนดามาเยอะ
หา Bug ไมคอยเจอ
เลกใช Bug Tracking … ไมรจะใชท าไม
QA แทบไมเหลองานถกซ าซากไมใชสมอง
QA มเวลาคดสรางสรรค Explorative Test
QA กบ Dev จะคยกนตลอดเวลา
กยง ATDD ได ดกวาไมม
อยางนอยกจะท าใหเกดการคยกน แตจ ำเปนตองท างานเปน iteration และ แบงยอย
requirement เปนหนวยเลกๆ เชน user story เพอใหเกด feedback loop ทเรว
ดทสดคอม Test Automation แบบบาคลง Test กนทงวนคนดวย Continuous Integration
ATDD, BDD, Specification By Example จะคลายๆกน มจดประสงคเดยวกนคอ Clear Definition-Of-
Done
ATDD เหมาะมากกบ Dev Onshore / QA Offshore หรอ Distributed Team
หนงสอ
Demo