So a while back I said I’d be posting translations from the Japanese version of Lessons learned in software testing. Basically, I pulled the trigger way too early on that. There have been a bunch of things all demanding my time, so this was a side-project that I just wasn’t able to get to before now.
So the usual disclaimers apply – I have permission from the original authors of this tome, but not from the publishers. To the best of my knowledge this falls within fair use, but given the geography of this blog and myself coupled with the fact that I’m not a lawyer, I could be dead wrong. So if any of the relevant publishing bods happen across this and have a problem with it, please get in contact.
My Japanese ability is so-so. I get by in day-to-day conversation, but I am by no means fluent right now. The object of publishing these translations is to see what differences I can find between the two books and to see if there is anything that seems to fundamentally change the meaning of the original text. I’m going to start off with something reasonably short and see how it goes. For those people out there with Japanese abilities better than mine, feel free to let me know if I’ve made some glaring error in my translation.
I’ll post the Japanese first, with my own translation following each line. At the end I will post the original text.
Modeling is a deciding factor in testing
When test planning, you probably paint a mental picture of the test domain in your head.
You may also make use of a list of functions or graphical representations.
Hypothesising about who the user is and what is important to them is also necessary.
These sorts of things are generally called models.
In practical terms, when test planning the origin (of your tests) is the model you have drawn in your head and learning new modelling techniques can give you a new perspective of the product.
For this reason you should study modelling techniques. If you acquire this knowledge, your testing will also improve.
You might find a textbook or seminar on requirements analysis or software architecture useful.
モデリングの技術全般を身に付けるのによい方法はシステムシンキング(Systems Thinking) を勉強することだ。
A good way of improving your technique in modeling overall is study of systems thinking.
An introduction to general systems thinking: silver anniversary edition (Weinberg 2001) を参照されたい。
Refer to …(reference in English as per original text)
All testing is based on models.
You may have a mental picture in your mind when you design tests. Or, you may be working with a list of features or a diagram of some kind. All of these are models. No matter what, your tests will be based primarily on your models of the product, not the actual product. A flawed model results in flawed tests. Learning a new way to model a product is like learning a new way to see it.
Study modeling. You will test better as you become more skillful in the art of modelling. Textbooks and classes about requirements analysis and software architecture can help. A wonderful way to gain skill in all kinds of modeling is to study systems thinking. See An Introduction to General Systems Thinking Silver Anniversary Edition. (Weinberg 2001).
It looks to me like the translators have done their best to keep the meat of the content, but I’m curious about their choice to drop ‘A flawed model results in flawed tests’. Did they not think that was important information? I certainly do.
Translation is a tough gig. I’m not necessarily having a go at the translators, but these choices can change the tone and sometimes the meaning of the text. The sentence about the origin of tests was also simplified. Implicit in the original text is the fact that the relationship between the tester and the product is through their ability to model it effectively.
I’m curious to translate more and see what other differences I can find.