Software quality improvement by application of the Japanese manufacturing quality techniques

The software industry is facing a great challenge due to the demand of quality and complexity on an ever increasing number of software products. The software industry has been dealing with this challenge by software process assessment and improvement, and by improving and developiong more sophisticated software development methodologies. Quality concepts and practices have been well formulated in traditional manufacturing industries, especially in Japan. However many successful and influential manufacturing quality techniques have not been examined systematically in context of software quality. To tackle the existing problems in improving the software process maturity and software product quality, I investigate the quality principles and techniques developed in manufacturing industries and study the feasibility and ways in applying them to software quality. The similarities and differences between software and manufacturing industries are analysed. Motivated by the TQM (Total Quality Management) concept, the Japanese quality control tools and quality management tools are examined together with the Deming cycle in the context of software process improvement. The manufacturing process capability indices Cp and Cpk are examined and it is shown how they can be used in quantitatively monitoring, controlling and improving the software process. The very successful Japanese manufacturing quality techniques, Taguchi methods, are investigated. Two of these methods are shown to be appropriate to apply to software quality. The Taguchi's optimal parameter design method is used to produce the Orthogonal Software Testing Methodology to optimise software testing. Taguchi's fractional factorial experimentation and Analysis of Variance (ANOVA) method is used to produce an Orthoganol Software Performance Evaluation Methodology which provides an experimental method for effective software performance evaluation.