The word 'quality' can be defined in many ways. Gerald Weinberg, author of Quality Software Management, offers a general definition: Quality means "value to some person." Lee Thomas, Technical Services Specialist for Rational Software, attempts to expand this definition to define quality as "value to some group of people over some period of time". Lee's expansion to include to time is based on his reasoning that the value of something to someone changes overtime. Although I think both gentlemen made a good effort to simplify the inherent ambiguity related to defining 'quality', I also think they really just replaced one vague term with another ...'value'. For example, if you switch both words in either definition, the validity of both still hold:
1.Value means quality to some person.
2.Value is quality to some group of people over some period of time.
With respect to software product development, the manner in which one applies the definition of quality from product to product varies.
A definition of 'quality' should account for this variation so that it may adequately apply to software development. In addition, once the definition of 'quality' is settled upon, then the problem of quantifying it, so that it can be correctly measured, arises. Finally, by establishing the ability to evaluate quality on a measurable basis, such as using the number of code defects, the potential to improve quality becomes possible. However, in software development there is more to improving quality besides simply reducing the number of defects. The customer's perceptions of the product also affect the software's level of quality.
As it applies to products, The American Heritage Dictionary defines the word 'quality' as a "degree or grade of excellence". The Free On-Line Dictionary of Computing defines 'quality' as, "The totality of features and characteristics...