For effective project monitoring, the information coming from the development process to the management process should be objective and quantitative data about the project. Software matrices are quantifiable measures that could be used to measure different characteristics of a software system or the software development process.

All engineering disciplines have matrices (such as matrices for weight, density, wavelength, and temperature) to quantify various characteristics of their products. A number of matrices have been proposed to quantify things like the size, complexity, and reliability of a software product.

Matrices provide the scale for quantifying qualities; actual measurement must be performed on a given software system in order to use matrices for quantifying characteristics of the given software. The Measurement method must be objective and should produce the same result independent of the measurer. Values for some matrices can be directly measured; others might have to be deduced by other measurement.

If a metric is not measured directly, we call the metric indirect. Some factors, like many software quality parameters, cannot be measured directly either because there are no means to measure the metric directly, or because the final product whose metric is of interest still does not exist. Similarly, the reliability of a software cannot be measured directly, even though precise definition and matrices for reliability exist. It has to be estimated from other measurements that are possible.

For estimating, models are needed. A model is a relationship of the predicted variable with other variables that can be measured. That is, if there is some metric of interest, which cannot be measured directly, then we build models to estimate the metric value based on the value of some other metrics that we can measure.

The model may be determined based on empirical data or it may be analytic. It should be clear that metrics, measurements, and models go together. Metrics provide a quantification of some property, measurements provide the actual value for the metrics, and models are needed to get the value for the metrics that cannot be measured directly.