Skip to Main Content
The challenge facing software quality research is to produce a metric that will guide developers in choosing techniques to achieve the desired product quality. "Quality" comprises some set of key behavioral attributes: reliability, performance, fault tolerance, safety, security, availability, testability, and maintainability. Software quality is thus a function of these combined attributes plus an error term that represents quality aspects these eight attributes can't define. This article discusses how to quantify these behavioral attributes by working around relative values and formulating schemes from an attribute's key indicators. Thus, one can still assign numerical values to various attributes and then normalize them. By having such a system during requirements elicitation, developers can immediately begin to determine what techniques, methodologies, tools, processes, and costs they will need to produce a system with that quality level.