Ecco una risposta da un po 'di un angolo teorico astratto, grafico:
Semplifichiamo il problema osservando solo i grafici delle dipendenze (diretti) tra oggetti con stato.
Una risposta estremamente semplice può essere illustrata considerando due casi limitanti di grafici delle dipendenze:
Il primo caso limite : un grafo di grappoli .
Un grafico a grappolo è la realizzazione più perfetta di un grafico di dipendenza ad alta coesione e basso accoppiamento (dato un insieme di dimensioni del cluster).
La dipendenza tra i cluster è massima (completamente connessa) e la dipendenza tra cluster è minima (zero).
Questa è un'illustrazione astratta della risposta in uno dei casi limitanti .
Il secondo caso limite è un grafico completamente connesso, in cui tutto dipende da tutto.
La realtà è da qualche parte nel mezzo, più vicino al grappolo grafico meglio è, nella mia umile comprensione.
Da un altro punto di vista : quando si guarda un grafico di dipendenza diretto, idealmente dovrebbe essere aciclico, altrimenti i cicli formano i cluster / componenti più piccoli.
Un gradino in alto / in basso nella gerarchia corrisponde a "un'istanza" di accoppiamento lento, coesione stretta in un software ma è possibile visualizzare questo principio di accoppiamento lento / coesione stretta come fenomeni ripetitivi a diverse profondità di un grafico diretto aciclico (o su uno dei suoi alberi spanning).
Tale scomposizione di un sistema in una gerarchia aiuta a battere la complessità esponenziale (diciamo che ogni cluster ha 10 elementi). Quindi a 6 strati sono già 1 milione di oggetti:
10 cluster formano 1 supercluster, 10 supercluster formano 1 hypercluster e così via ... senza il concetto di coesione stretta, accoppiamento libero, tale architettura gerarchica non sarebbe possibile.
Quindi questa potrebbe essere la vera importanza della storia e non solo il basso accoppiamento ad alta coesione all'interno di due soli strati. La vera importanza diventa chiara quando si considerano le astrazioni di livello superiore e le loro interazioni.