Until 2009, the Atlassian JIRA team shipped a major release of its software every nine to twelve months. Everything was tested—every story and every bug fix—and everything still contained serious bugs. Story development moved quickly, but after the feature-complete date, several month-long hardening periods were required to make the software actually shippable. Integrating the release into Atlassian’s hosted platform took another three or four months. Now, the team ships JIRA from master directly to the hosted platform every two weeks, with features being written and tested within an iteration, and then bundled into a shippable release at the end. Penny Wyatt describes how to move the responsibility for quality back to developers, find bugs before development work even starts through early communication, use an active feedback loop to prevent classes of bugs, and reinforce the concept that “done means done”—ruthlessly backing out changes that aren’t fully completed by the end of the iteration. You, too, can learn how to ship fast with high quality.
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Transform Your Agile Test Process to Ship Fast with High Quality
1.
AW12
Session
6/5/2013 3:45 PM
"Transforming Your Agile Test
Process"
Presented by:
Penny Wyatt
Atlassian Software
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
2. Penny Wyatt
Atlassian
With ten years of software industry experience, Penny Wyatt works at Atlassian as the QA
team lead for JIRA, an issue tracker used by more than 11,000 organizations worldwide. Penny
started her career as a software developer, but after joining Microsoft in Redmond as a
developer in test, she discovered that breaking software is much more enjoyable than building
it. After a few years of developing testing tools, Penny realized that hiring a small test team to
educate developers and prevent bugs is much more efficient than hiring a large test team
to find bugs. Penny focuses on white-box testing, security training, and ruining developers' fun.
8. DoTing
• DoS – Developer on Support
• DoT – Developer on Test
DoTing
• Aims
– Remove QA bottleneck
– Make developers responsible for quality
– Remove the dev/QA wall
16. Breadth, not Depth
DoT
DoT
DoT
DoT
DoT
QA
QA
QA
QA
QA
QA
DoT
DoT
D T
DoT
D T
DoT
D T
DoT
D T
DoT
D T
DoT
DoT
DoT
DoT
DoT
DoT
Story 1
Usability issues
Usability issues
DoT
Story 2
Story 3
Story 4
Story 5
Story 6
Non‐obvious bugs
Obvious bugs
Goals
•
•
•
•
Scalability of QA
Better usability
Consistent high quality
Developer education
Done means Done
Early intervention
19. Testing Notes
“As an administrator, I want to invite
users via email to sign up to JIRA
users via email to sign up to JIRA”
• Click “Invite”.
• Check that the invite popup appears.
• Insert an email address.
• Click “Send”.
• Check that the email arrives.
• Click “Invite”.
• Check that the invite popup appears.
• Insert an invalid email address.
• Click “Send”.
• Check that an error appears.
Testing Notes
“As an administrator, I want to invite
users via email to sign up to JIRA
users via email to sign up to JIRA”
• What if we’re connected to a read‐only
LDAP server?
• What is outgoing mail is disabled?
• Check security of the invite tokens – can
they be reused? Do they expire?
th b
d? D th
i ?
24. Pre‐ to Post‐Dev Testing Notes
• Implementation choices affect risks
– Need to add some testing hints
– Need to remove some testing hints
• QA/Dev Pairing sessions still critical
• Avoid duplication of testing
Goals
Scalability of QA
Better usability
Consistent high quality
Developer education
Done means Done
Early intervention
29. What else do we do?
• ShipIt days
– Quarterly programming competition
– 24 hours to “ship” a feature
– QA team works on product features or test tools
– Many QA victories
What else do we do?
• Work with Support
• Analyse bug history
• Collect metrics