Ein Maß dient zur Charakterisierung von Ausprägungen eines Merkmals eines Messgegenstandes. Eine Klassifikation der Merkmale kann daher auch zur Klassifikation von Maßen hilfreich sein. Merkmale können wie folgt unterschieden werden [ ISO/IEC 9126 Standard]:
Interne Merkmale sind solche, die sich unmittelbar auf den Untersuchungsgegenstand beziehen. Keine weiteren Dinge außer der Software selbst werden betrachtet (etwa kein Rechner zur Ausführung eines Programms). Beispiele für interne Merkmale von Software sind Größe eines Software-Systems, seine Komplexität, die Anzahl im Quellcode enthaltener Syntaxfehler.
Externe Merkmale beziehen sich auf die Wechselwirkungen zwischen einem Untersuchungsgegenstand und seiner Umwelt. Dies schließt sowohl Hardware und Software als auch Benutzer mit ein. Es werden nicht unmittelbar Merkmale des Gegenstandes vermessen, sondern Merkmale der Umgebung, deren Ausprägungen aber durch den Untersuchungsgegenstand bestimmt sind. Etwa die Verstehbarkeit einer Benutzeroberfläche ist ein externes Merkmal, weil einerseits zwar ihr Aufbau und die Orientierung an Standards die Verstehbarkeit beeinflusst, andererseits jedoch die Verstehbarkeit vom Erfahrungsschatz der bewertenden Person (also einer externen Größe) abhängt.
Bei Software-Produkten können einige interne Merkmale durch Begutachtung von nicht ausgeführter Software bestimmt werden. Dies bezieht sich auf Untersuchungen von Quellcode ebenso wie auf Dokumente des Entwurfs oder der Anforderungsanalyse. Gemäß ISO/IEC 9126 Standard haben interne Merkmale für Nutzer, Bewerter, Tester und Entwickler den Vorteil, dass sie frühzeitig vermessen werden können und infolge ihrer Indikatorfunktion einige Aspekte der (internen) Softwarequalität vorsagbar sind, lange bevor das Produkt ausführbar wird.
Die Messung externer Merkmale erfolgt durch Beobachtung der Auswirkungen des Untersuchungsgegenstandes auf seine Umwelt. Bei Software-Produkten bedeutet dies, dass ein Programm auf einer bestimmten Hardware mit einem bestimmten Betriebssystem von einem bestimmten Benutzer ausgeführt wird. Die Messung beobachtet und quantifiziert das Zusammenspiel bezüglich eines bestimmten Aspekts. Externe Merkmale sind von zahlreichen Randbedingungen abhängig. Die aus Messungen ableitbaren Aussagen sind daher auch weniger generell. Gemäß ISO/IEC 9126 Standard können Benutzer, Bewerter, Tester und Entwickler mit Hilfe externer Merkmale die (externe) Qualität von Software-Produkten während der Phasen Testen und Betrieb bewerten.
Häufig besteht ein Zusammenhang zwischen der internen und externen Merkmalsausprägung. Ein internes Merkmal kann auf viele externe Merkmale wirken und ein externes Merkmal kann dem Einfluss von vielen internen Merkmalen unterliegen. Beispielsweise die Modularität lässt sich extern messen, indem die Zeit festgestellt wird, die notwendig ist, um eine Klasse aus einem bestehenden System herauszulösen und in ein neues zu integrieren. Die Messung heißt „extern“, weil der Aufwand ausgedrückt durch die Zeit kein Merkmal der Software ist, sondern ein Prozessmerkmal. Die interne Messung hingegen würde sich auf Spezifikationen und Quellcode konzentrieren, um etwa den Grad an Abhängigkeit zwischen Modulen zu quantifizieren. Die Methode der metrikbasierten Qualitätsanalyse nutzt solche Zusammenhänge zwischen internen und externen Merkmalen aus, um frühzeitig Aussagen über zu erwartende Aufwände bei der Wartung von Software zu machen.