Japan is famous for high-tech electronics products. Japanese software testing engineers, however, struggle with the bugs in order to support the high-tech products. There are very active communities and study groups for testing engineers. Many books and guidelines have been published which all contribute to software quality. You can learn about testing trends and testing techniques in Japan and about how the Japanese engineers test their software.
Does anybody know about Japanese software testing?
Not many people know how the Japanese engineers test their software. This is due to the fact that the Japanese do not publish their practices very much, or if they do, they often publish in Japanese only. Therefore people in other countries where they do not understand Japanese, may not know about the software testing that is done in Japan.
Japan is well-known in the world for its high -tech and high-quality products, e.g. cars, cameras, videos, games and so on. I guess you, too, enjoy products made in Japan. And maybe you ask yourself: Do the Japanese make high-quality software the same as their high-quality electronic products? This article will answer this question.
I will introduce you to what is going on in the Japanese software testing market and will inform you about how Japanese engineers test their software.
Is the quality of Japanese software high?
Regrettably, I must say that the answer is: NO. Japanese engineers, at least, think so, but they think that it is maybe higher than in other countries. The facts are as follows:
Feb. 8, 2008: There was big system trouble in the Tokyo Stock Exchange future market. The market was forced to be close down for half a day. It is said that a program memory initialization error was the cause of this trouble.
Oct, 12, 2007: There was trouble with the automatic ticket gates for the trains service in Tokyo. About 2.6 million (!!) people could not catch their trains in the morning.
Software-related troubles occur frequently and the cause is, in many cases, a software failure. So the quality of Japanese software does not seem to be as high as that of Japanese electronic products. The Japanese think so at least. Therefore, the quality of the software has been focused on very much in recent years. Software testing is a significant part of the quality, and therefore software testing has also been studied very much.
In Japan, embedded software engineers make up a large part of the software industry, mainly because there are so many large companies producing electronics, cars etc.
The Test Engineers‘ Forum (TEF) was established in 1998 by Dr. Yasuharu Nishi. TEF is the first network for software testing engineers in Japan, so many testing engineers have participated to this Forum. As active members of TEF, they organized the first Japan Symposium on Software Testing (JaSST). Whilst the attendance at the first symposium was only about one hundred people, the attendance figures have grown steadily every year and reached 1,500 in 2007! The JaSST is now one of the biggest symposiums in Japan. This clearly shows that the Japanese are concerned about software quality and that they do think about how to manage software testing.
The software testing engineers’ community in Japan
In this article, I would like to introduce the testing engineers‘ community in Japan.
As I write this article, there is already a testing engineers‘ community in Japan, which is organized in the Test Engineers‘ Forum (TEF). The members are very active and exchange ideas via the Internet mailing list. Unfortunately, this is all done in Japanese only. The topics of the mailing list are very practice-oriented, so that testing engineers can describe their problems via this mailing list. Other engineers can answer them, because they are very conscientious! In this sense, I feel that TEF is not just a community, but is also a place to live together.
Let me tell you more about the achievements of TEF.
TEF translated English software testing books into Japanese. The following are some examples:
- Testing Computer Software – Cem Kaner,
- Lessons Learned in Software Testing – Cem Kaner,
- Managing the Testing Process Second Edtition – Rex Black,
These books have contributed significantly to improving software testing literacy in Japan. Before these books were translated by the TEF, Japanese engineers only had very few software testing books available, e.g.
- The Art of Software Testing – G.J. Myers,
- Software Testing Techniques – Borris Beizer
These books are without doubt famous and valuable, but they do not provide sufficient details for implementing testing processes and activities in organizations or groups. This is the reason why the TEF translated and published the above books. Nihon Kagaku Gijyutsu Renmei (Union of Japanese Scientists and Engineers: JUSE) has contributed to the high quality of Japanese products for a long time. JUSE also has a study group for software quality.
In addition to these, there is another software engineers‘ community, the Software Quality Profession (SQiP) in JUSE. This community includes groups which study software quality from different points of view, e.g. project management, user experience, embedded systems etc. Software testing is one of the SQiP groups. The group studies all aspects of the testing process, test techniques, tools etc. Last December JUSE and Japanese Society for Quality Control (JSQC) developed and published the Software Quality Body of Knowledge (SQuBok). These are the first guidelines for software quality knowledge in Japan. JUSE and JSQC spread these guidelines throughout the software testing community and are planning to establish a certification and examination scheme in the future.
Software testing techniques in Japan
Orthogonal arrays and the adaptation of mind -maps to software testing are receiving a lot of attention from software testing engineers in Japan. In the following, I will try to explain the reasons why.
In Japan, focus is given to the adaptation of orthogonal arrays for software testing with a view to reducing the cost of testing. Orthogonal arrays came from Design of Experience (DoE). Genichi Taguchi, a Japanese engineer, researched DoE and developed the “Taguchi Methods“. Taguchi methods are statistical methods developed by Genichi Taguchi to improve the quality of manufactured goods and, more recently, to biotechnology, marketing and advertising. Taguchi methods are considered controversial among some traditional Western statisticians but others accept many of his concepts as being useful additions to the body of knowledge.
By using orthogonal arrays, it is possible to reduce the number of test cases for combination testing, e.g. integration testing, system testing, configuration testing and so on. Japanese engineers are used to orthogonal arrays which are widely used in the industrial sector to test their products. Pairwise testing is similar to orthogonal arrays.
Last year, the book Software Testing Started on Mind Map was published in Japan. It is about how to adapt mind maps in order to develop test strategies and design testing architectures. “A mind map is a diagram used to represent words, ideas, tasks or other items linked to and arranged gradually around a central key word or idea.”
By using mind maps, a software testing beginner can work as well as an expert in this field. The reasons are as follows:
- The mind map shows how they think about the test strategy and architecture
- It can be described in a MECE sense (Mutually Exclusive and Collectively Exhaustive)
- Experts can follow and review the flow of he beginner‘s way of thinking.
The book describes why mind maps should be used, and how to use them in software testing. In my opinion, the book is more than that. It will motivate engineers. It shows them a new way of testing, which most people want to try. This book is innovative for software testing.
In summary, it is these two movements of software testing, the traditional way and the new way, which support Japanese high-tech and high-quality products.
Japanese software testing engineers’ roles
In the following, I would like to give an insight into the software testing engineers‘ roles in Japan. You may think the roles are the same the world over. There are, however, subtle differences between Japan and the rest of the world.
First of all, independent software testing has not been recognized throughout the industry. In many companies or organizations, developers have always tested their own software. Some people feel that they design and develop software in high quality, and therefore it is not necessary to test this software. Even though this idea may hold true sometimes, software must still be tested, because software has bugs.
Japanese software testing engineers have to work and face this kind of thinking which sees testing is part of quality assurance. There are so many roles in the software life cycle. Requirements review, for example, is one of the quality assurance roles. There are some very interesting questionnaires for Japanese software testing engineers. One of the questions reads: Which animals are similar to the characteristics of a software testing engineer?”
The top answer is a dog! Because they are faithful and hard-working! Japanese testing engineers, too, work faithfully and hard. I think there is a lot of truth in this.
Japanese software testing engineers play certain roles as part of the development team in order to test efficiently and effectively. This is the main role of Japanese software test engineer. Their other role is to be part of quality assurance in order to be involved in the decisions regarding the release of the software. Is the software quality sufficiently high for releasing? How high is ―sufficiently high‖? This role can be tricky because it may be difficult to answer these kinds of key questions.
In this article, I have described the Japanese software testing community, testing engineers and the testing techniques which support Japanese high-tech products. Japanese software sometimes has defects which impact on its society. Many Japanese engineers, however, work conscientiously for better software quality day and night. I would appreciate if this could be understood outside of Japan, and I hope that the Japanese will contribute to software quality in the world.