how the three amigos made us a more effective team€¦ · is the story ready to be 3 amigo [d?...
TRANSCRIPT
How the Three Amigos Made Us A
More Effective Team
Sylvia MacDonald
Sylvia MacDonald
NewVoiceMedia, UK
@SylviaMacd
How The Three Amigos made us an effective team
Sylvia MacDonald @SylviaMacD
Financial report with missing transactions
CC image Chrysalis to Butterfly courtesy of Sid Mosdell on flickr
Two attempts to fix:
• Developer only
• No customer input
• No tester input
Financial report project - result
Failed – twice!
• 1st attempt – no effect• 2nd attempt – abandoned• Customer unhappy• Expensive• One of my favourite projects!
No conversations = two failures!
Lesson learned!
• Owner showed me the problem• DBA and I analysed data• Another feature team fixed the bug• Bug fixed within 2 hours
Mytop fiveproblems
CC image OOPS! Courtesy of leasqueaky on flickr
CC image Garbage Dump on the Interstate courtesy of Phil’s 1stPix on flickr
1. That’s not what I wanted!
With acknowledgements to Businessballs.com and S Hogh
2. Trying to solve a problem you don’t understand
Not understanding the business problem affects:
• The solution• The acceptance criteria• The exploratory testing• The work delivered
3. Can you explore something you don’t understand?
CC image I Can’t See You… courtesy of Peter on flickr
Yes! But understanding helps
Yes, but its better if you do!
Common theme?
Ineffective collaboration!
•No conversations
•Conversations too late
•Not including the right people
What is a Three Amigos session?
Collaboration across 3 roles• Business • Developers• Testers
Also called Specification workshop
Why do a Three Amigos?
Helps the team answer:
• What problem are we trying to solve? (outcomes)• How will we solve it?• How will we test it?• How will we release it?• How do we know its done?
Is the story ready to be 3 Amigo’d?
Backlog grooming session
• Once per sprint, 30 mins, 2-4 stories.
• Product owner, developer and tester
• Led by product owner
• Does the story describe the business impact?
• Surface unknowns earlier, spikes
Our Three Amigos process
• Every story has a 3 Amigos
• Product owner, dev and test
• Invite others, eg architects, security
• 30 minutes
Our Three Amigos process - continued
• Work though story template
• Explore everyone’s suggestions and questions
• Update Jira story as we go
• Split stories as needed
Our Three Amigos – locationRemote session – UK & Poland
• At desks
• Via Lync or hangouts
• White board huddle
• Post it notes!
Focus on scenarios – rules and examples
Rule
“Useful message generated when web service end point returns an error”
Focus on scenarios – rules and examples
Rule
“Useful message generated when web service end point returns an error”
Examples - different messages
• 404 config error• 500 error• Time outs• Network error
Capture anything that affects the story
Release strategy:
• Toggles• Backwards compatibility• Rollback considerations
Other:
• Unanswered questions• Decisions• Out of scope work• New stories – split them out
How are we going to test this?
• Testing scope• Acceptance criteria • Rules and examples• Automated tests• Exploratory testing charters• Testing mind map• Mock required?• Any technical difficulty?
After the Three Amigos session – keep collaborating!
• Demos to PO during dev
• Dev/Test pairing
• Dev & test share test mind map
• Follow up all questions
• Emerging acceptance criteria
Identify unknowns earlier
Is a spike needed?
Do we need to speak to others?• Ops• DBAs• Architects• Professional Services• Feature teams
CC image Question 1 courtesy of Virtual EyeSee on flickr
Improved WIP and cycle timeStories pulled by TEAM rather than pushed by an individual
CC image Highland Regiments Tug-of-War courtesy of Jamie McCaffrey on flickr
Less escaped bugs in test staging environment
CC image ‘2 Pet Crickets having fun, dancing and doing handstands’ courtesy of I a walsh on flickr
Dev and test share knowledge and skills
Developers became better testers
Testers improved technical skills
Mutual respect for each other
CC image group hug courtesy of Mel Aclaro on flickr
Main challenges
CC image Obstacle Race – Dornoch Highhland Gathering 2007 courtesy of John Haslam on flickr
Reluctance – willing to try but not sure of the benefit
CC image ‘Is there any food left for me?’ courtesy of Beverley Goodwin on flickr
Given/When/Then syntax during 3 Amigos
Give / When / Then
Given the call accesses the web serviceWhen the web service returns a 404 error Then a service not found config error message is written to the logs
Given/When/Then syntax de-railed 3 Amigos
Rule & examples
“Useful message logged when end point returns an error”
404 = configuration msg 1Time outs = configuration msg 2500 = error msg 1Network error = error msg 2
Give / When / Then
Given the call accesses the web serviceWhen the web service returns a 404 error Then a service not found config error message is written to the logs
Top 10 tips
1. Three Amigos is a collaboration mind set
2. People doing the work attend the sessions
3. Everyone participates – it’s not a presentation
4. Be prepared - come with ideas and questions
5. Ensure everyone is happy before moving on
6. Use example mapping and good story splits
7. Build a shared testing artefact
8. Acceptance criteria in plain language – automate after
9. Time box session to 30 – 60 minutes max
10. Book daily sessions in the calendar to build habits
What’s the complication, it’s only conversation…Credits: The Feeling – Love it when you call.
How can you start?
1. Run an experiment – have a 3 Amigos session!2. Start talking to your colleagues more3. Ask questions as early as possible4. If it looks like a solution, ask what the business impact is.5. Offer to pair with your dev or tester.6. Join relevant meetings.
Some resources
Books1. Fifty Quick Ideas to Improve Your User Stories - Chapter: Involve all roles in the discussion 2. BDD in Action by John Ferguson Smart3. Specification by Example by Gojko Adzic4. The BDD Books – Discovery Explore behaviour using examples by Gaspar Nagy & Seb Rose
Articles and toolshttps://cucumber.io/blog/2014/03/03/the-worlds-most-misunderstood-collaboration-toolhttps://cucumber.io/blog/2015/12/08/example-mapping-introduction http://www.velocitypartners.net/blog/2014/02/11/the-3-amigos-in-agile-teams/http://itsadeliverything.com/three-amigos-meeting-agree-the-tests-before-development-starts https://gojko.net/2008/11/12/specification-workshops-an-agile-way-to-get-better-requirements/http://www.teamuplabs.com/
Questions?
Sylvia MacDonald
Engineering Manager at NewVoiceMedia
@SylviaMacd
Meetup - Reading Tester Gathering