Coesione (informatica)

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

In informatica, la coesione è una misura di quanto strettamente correlate siano le varie funzionalità messe a disposizione da un singolo modulo. I metodi per misurare la coesione variano da misure qualitative, che classificano il codice sorgente del modulo in esame effettuandone la rubricazione seguendo un approccio ermeneutico, a misure quantitative che esaminano le caratteristiche testuali del codice sorgente per derivarne un valore numerico di coesione. La coesione è una misura ordinale ed è solitamente indicata nelle discussioni come "alta coesione" o "bassa coesione". Moduli con alta coesione sono solitamente preferibili in quanto l'alta coesione è spesso associata a varie caratteristiche desiderabili in un programma quali la robustezza, l'affidabilità, la riusabilità e la comprensibilità, mentre la bassa coesione è spesso associata a caratteristiche non desiderabili come il rendere difficoltose la manutenzione, le verifiche, la riusabilità e la comprensibilità.

La coesione è solitamente messa in contrapposizione all'accoppiamento. Un alto grado di coesione corrisponde spesso ad un basso grado di accoppiamento e viceversa. Le misure di qualità del software di accoppiamento e coesione furono inventate da Larry Constantine [1], basandosi sulle caratteristiche della "buona" programmazione che riduce il costo di mantenimento e di modifica di un software.

Note[modifica | modifica wikitesto]

  1. ^ W. Stevens, G. Myers, L. Constantine, "Structured Design", IBM Systems Journal, 13 (2), 115-139, 1974.
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica