Iizuka, Yoshinori (1987, ASQC) The University of Tokyo, Tokyo, Japan
With the progress of information management technology, the number of software products has been increasing, but their quality is not necessarily good. The quality control (QC) of software products is essential for the development of software industry. In Japan, for the past several years, the movement to introduce TQC (Japanese way of Total Quality Control) into software production has been prevalent, but it has not produced fruitful results. In this paper, I discuss the direction we should take with software QC.There have been many discussions on the difficulties in software QC. They say the problems in software QC are very peculiar. They put much stress on the difference from hardware (ordinary industrial products) QC. In my view, however, most of them do not hit substantial points. There is no hardwar QC have been overcome to some extent. So we can learn a lot from hardware QC. But there is one special feature about software products. That is the "discontinuity" of software. Software is a set of logics, so it is difficult to relate "functions" to "things which embody the functions", which makes it difficult to predict and prevent possible quality problems.Whatever features software products have, the principles involved are the almost same. In this sense, we should learn more from the way to manage the design process of hardware/ for example, how to build quality of design in the development process, how to promote standardization, how to select test items, and how to manage progress schedule.In QC it is most important to know the possible types of defects in a product. Such knowledge is obtained from failures experienced in the past. To make good use of experience it is necessary to have a set of terminologies derived from the generalization and abstraction of the failures. These terminologies make possible the prediction of potential quality trouble with the product and the effective and efficient tests. So, good classification of software errors is essential.Now we should put greater emphasis on developing concrete techniques for software QC than discussing the abstrac concepts of software QC.