Введем обозначения:
q Аv (Сi) — количество видимых свойств в классе Сi (интерфейс класса);
q Ah(Ci) — количество скрытых свойств в классе Сi (реализация класса);
q Ad(Ci) = Аv (Сi) + Ah(Ci) — общее количество свойств, определенных в классе Сi (унаследованные свойства не учитываются).
Тогда формула метрики AHF примет вид:
,
где ТС — количество классов в системе.
Если видимость т- го свойства i -го класса из j -ro класса вычислять по выражению:
,
а процентное количество классов, которые видят т -есвойство i -ro класса, определять по соотношению:
,
то формулу метрики AHF можно представить в виде:
.
В числителе этой формулы AHF — сумма закрытости всех свойств во всех классах. Закрытость свойства — процентное количество классов, из которых данное свойство невидимо. Знаменатель AHF — общее количество свойств, определенных в рассматриваемой системе.
В идеальном случае все свойства должны быть скрыты и доступны только для методов соответствующего класса (AHF = 100%).