I. Introduction
Programming is one of the most basic activities in software development, and a successful quality management of programming is necessary to develop a high-quality software system. Except for the cases that the programs can be automatically generated from their formal specifications, the programming activities are done by human beings (programmers). That is to say, programmers' minds and experiences about the programs being developed would have much influence on the quality of their products.