3. The wasp behavior is not intelligent
But it is purposeful
How about the cumulative behavior of all
wasps?
How does this apply to us?
When should we apply logic?
When should we practice routines?
5. What makes these
creatures last?
Nature ‘designed’ them
to endure
Darwin revised
‘Natural Selection’ to
Source:
‘Survival of the Fittest’ http://en.wikipedia.org/wiki/Komodo_dragon
Implying (among others) the unconscious ability
to adapt
6. Successful organizations are driven
by values they commit to:
“Everyday low prices”
“Provide superb customer experience”
Good values help organizations endure
How does this translate to everyday life of a
software organization?
7. Is this sprint Built to Endure?
Is quality adequate?
Are we focused?
What I have learned in pre-natal course
When do we involve testers in the
process?
8. Ahhhhh….
…but a mother cat must also make tough decisions
sometimes
Photo by danizen24 http://www.flickr.com/photos/39311243@N05/4272639675/
9. Writing good stories is hard
(but it gets easier with time)
Backlog grooming is also hard
(and it always remains that way)
10. What makes a good story?
INVEST
CCC
If both PO and Team share the same
understanding of what should be delivered
Consider the story review when writing the story
11. Why placenta/egg?
Decoupling
Distinction
Separation
Protection
Short-beaked Echidna, a Monotreme, egg laying mammal.
Source: wikipedia
12. Protect existing code from poisoning
Get early feedback on defects in
new code
With local builds, get better decoupling
between new code and existing codebase
13. Introduce new code in a ‘placenta’
Not affecting existing code
New code can be checked in without
affecting existing functionality
Existing code does not interfere with new changes
Incorporate into codebase only when safe
14. Use tests approach to improve design and
architecture
Once done, tests continue to run in CI
Once deployed, tests become part of the
teams’ DNA
15. Back to our Sphex Wasp
The wasp behavior is not intelligent
But it is purposeful
Adopting practices requires practice to
assimilate into the daily work
Once ‘in the DNA’, intelligence is replaced with
common sense
So intelligence can be used on more important
things
16. A large gene pool indicates extensive genetic
diversity, which is associated with robust
populations that can survive bouts of
intense selection.
Meanwhile, low genetic
diversity (see inbreeding and population
bottlenecks) can cause reduced biological
fitness and an increased chance of extinction
Source: Wikipedia http://en.wikipedia.org/wiki/Gene_pool
17. Individual programming is similar to reduced
gene pool
Repeating similar mistakes/pitfalls
Returning to similar patterns
With pairing the “Gene Pool” is increased
Common pitfalls are identified on the fly
More patterns are shared
New patterns are generated
18. In 18 months of C++ development, this [heinous] bug
was our hardest challenge. It represented the longest
time that we failed to make forward progress.
We put one pair on it. It took us 6 hours
Arlo Belshee , Promiscuous Pairing and Beginner’s Mind, 2006
20. ברירת מחדל
1. Default, a preset setting or value
2. A Canadian post-grunge and alternative rock band
3. Choice of neglect
21. By choosing to test at the end, quality is
neglected
By doing quality from the start, testing is less
of an issue
Some argue that quality starts from RFx
22. Built to Endure
Quality is intertwined throughout the process
Requirements should be created with quality in
mind – Definition of Done
CI - Testing must be executed continually
Coding Practices – generating high quality code
Unit tests – testing the code generates better
design
Pairing – Testers can also pair with programmers!
23. It is not necessary to change.
Survival is not mandatory
Prof. Deming