Software Testing is like... Kung Fu?
Submitted by Antony Marcano on Mon, 28/11/2005 - 01:29.
context-driven testing | heuristics | perspectives
[textile]This evening, while discussing "James Bach's 'Against Certification' post":http://blackbox.cs.fit.edu/blog/james/archives/000199.html with my brother, an analogous relationship between teaching software testing and teaching martial arts came to light.
My brother teaches Wing Chun Kung Fu (or he might say he teaches his understanding of Wing Chun). His approach, however, is not to teach rigid techniques but instead to teach the techniques with an understanding of the concepts behind them in terms of relevant application. This allows his students to adapt the techniques within the framework of the underlying concepts.
Successful adaptation is only possible with a comprehension of the concepts because, for example, a specific blocking technique may assume a given context and not work outside of very controlled conditions. You cannot rely on your opponent striking you with a perfect technique. The block to the imperfect punch now also needs to become 'imperfect' (in terms of the purists technique) to be successful. But it needs to be the right sort of impefect to be successful. How do you know the adaptation that is most likely to be a success?
The decision for which technique to apply needs to be made instantly and to be successful will need to be adapted to the context. The only way to truely absorb the concepts is to gain experience of applying the techniques in a variety of contexts. In lieu of the student's experience, the teacher shares heuristics from their own experience.
Often, failure is as valuable, if not more valuable than success. They now know which adaptations *don't* work under given circumstances. Even the experience from applying another's heuristics may identify that those heuristics only worked for the individual who 'created' them. The individual is as much a part of the context as their environment!
Essentially, the more experience the student gets, the greater the proportion of their adaptations will be successful.
My brother cited Bruce Lee's outlook, highlighting that Mr Lee told his students not to copy his technique, but to understand the concepts and find the adaptation that best fit them and their context. The outcome of his outlook was Jeet Kune Do, a formless fighting system not restricted to specific techniques. There are no rigid techniques to copy but a set of concepts that his students were encouraged to adapt.
Our conversation drew to a close with his insight that in martial arts, you have *martial arts practitioners* and you have *martial artists*! The practitioner may copy the techniques verbatim of their master but may never be skillful enough to achieve success in real situations.
We concluded that the practitioner works on the assumption that there is a 'right' and a 'wrong' way to do each technique and are so focused on getting it 'right', they miss the lessons they can learn from getting it 'wrong'. This prevents them from seeing that even when they get the technique 'right' it may still be wrong for a given context.
The martial artist, however, will reflect and learn from each experience, abstract it and reach a level of comprehension for each success as well as each failure. The martial artist is focused more on the outcome (success or failure) of applying an adaptation of a technique in a given context, than they are on the name of the technique or minutia of whether it conformed to the rigid specifications of an ancient, perhaps outdated kung-fu manual.
"Use no way as a way, No limitation as a limitation." - Bruce Lee
My brother teaches Wing Chun Kung Fu (or he might say he teaches his understanding of Wing Chun). His approach, however, is not to teach rigid techniques but instead to teach the techniques with an understanding of the concepts behind them in terms of relevant application. This allows his students to adapt the techniques within the framework of the underlying concepts.
Successful adaptation is only possible with a comprehension of the concepts because, for example, a specific blocking technique may assume a given context and not work outside of very controlled conditions. You cannot rely on your opponent striking you with a perfect technique. The block to the imperfect punch now also needs to become 'imperfect' (in terms of the purists technique) to be successful. But it needs to be the right sort of impefect to be successful. How do you know the adaptation that is most likely to be a success?
The decision for which technique to apply needs to be made instantly and to be successful will need to be adapted to the context. The only way to truely absorb the concepts is to gain experience of applying the techniques in a variety of contexts. In lieu of the student's experience, the teacher shares heuristics from their own experience.
Often, failure is as valuable, if not more valuable than success. They now know which adaptations *don't* work under given circumstances. Even the experience from applying another's heuristics may identify that those heuristics only worked for the individual who 'created' them. The individual is as much a part of the context as their environment!
Essentially, the more experience the student gets, the greater the proportion of their adaptations will be successful.
My brother cited Bruce Lee's outlook, highlighting that Mr Lee told his students not to copy his technique, but to understand the concepts and find the adaptation that best fit them and their context. The outcome of his outlook was Jeet Kune Do, a formless fighting system not restricted to specific techniques. There are no rigid techniques to copy but a set of concepts that his students were encouraged to adapt.
Our conversation drew to a close with his insight that in martial arts, you have *martial arts practitioners* and you have *martial artists*! The practitioner may copy the techniques verbatim of their master but may never be skillful enough to achieve success in real situations.
We concluded that the practitioner works on the assumption that there is a 'right' and a 'wrong' way to do each technique and are so focused on getting it 'right', they miss the lessons they can learn from getting it 'wrong'. This prevents them from seeing that even when they get the technique 'right' it may still be wrong for a given context.
The martial artist, however, will reflect and learn from each experience, abstract it and reach a level of comprehension for each success as well as each failure. The martial artist is focused more on the outcome (success or failure) of applying an adaptation of a technique in a given context, than they are on the name of the technique or minutia of whether it conformed to the rigid specifications of an ancient, perhaps outdated kung-fu manual.
"Use no way as a way, No limitation as a limitation." - Bruce Lee
