Analiz...ctions(3pm)
β¨ NAME β¨
Analizo::Metric::AfferentConnections β the Afferent Connections per Class (ACC) metric, bestie π
π¦ DESCRIPTION π¦
okay so first thing, this metric? it doesn't just spawn out of nowhere. it's based on an actual article, and what it does is calculate the class connectivity β that's the whole vibe β¨
Here's the source material, no cap:
PhD Thesis: Monitoramento de metricas de codigo-fonte em projetos de software livre by Paulo Roberto Miranda Meirelles π
And then there's the adaptation of the paragraph about Afferent Connections per Class in that article, which goes like this:
It measures the connectivity of a class. So if a class "Ci" accesses a method or an attribute of a class "Cj", then consider "Ci" a client of the supplier class "Cj", and we denote that "Ci => Cj". π
Now consider the following function:
client(Ci, Cj) = 1, if (Ci => Cj) and (Ci != Cj)
client(Ci, Cj) = 0, otherwise.
and therefore:
"ACC(Cj) = (sum(client(Ci, Cj)), i = 1 to N)", where "N" is the total number of system classes. π
π¨ vibe check warning: if the value of this metric is large, a change in the class has substantially more side effects, which makes maintenance more difficult. it's giving "touch one thing, break five things" π
π REFERENCES π
- Monitoramento de metricas de codigo-fonte em projetos de software livre
https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27082013-090242
okay bestie that's the whole page, you ate that π this one's running on perl v5.40.1, dated 2025-12-13, and it's part of the User Contributed Perl Documentation β go forth and count those connections, periodt π«ΆπΈ
π¦ where this page comes from
- ubuntu resolute: analizo 1.25.5-3 Β· GPL-3.0-or-later
- ubuntu stonking: analizo 1.25.5-3 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms