Metriche Software: LCOM

di il
2 risposte

Metriche Software: LCOM

Ciao a tutti,
Non riesco a capire bene che cosa, tipicamente, rappresenta questa metrica: Lack of Cohesion in Methods.
cosa s'intende con LCOM=1, LCOM=0 ?

2 Risposte

  • Re: Metriche Software: LCOM



    LCOM puo' essere 0 (zero) solo se non hai nessuna classe da analizzare.

    Quindi, come minimo, vale 1.

    Per il resto, e' concettualmente semplice. A grandi linee:

    sia C una classe, f[1]...f[N] i field, m[1], m[K] i metodi della classe.

    Se i metodi m[1]..m[A] usano i field f[1]..f[B] ed i metodi m[A+1]..m[K] usano i field f[B+1]..f[N], ecco che la tua classe puo' essere spezzata in due classi piu' semplici C1 e C2, e questo viene anche confermato dal fatto che LCOM vale 2
  • Re: Metriche Software: LCOM

    Sul mio libro viene riportato:
    LCOM= 0 indica una perfetta coesione, significa che tutti gli attributi di C (classe) sono acceduti da tutti i metodi di C.
    LCOM=1 indica una mancanza di coesione, significa che ogni attributo di C è acceduto esattamente da un solo metodo di C.
    questi passaggi non mi sono chiari. E se LCOM fosse uguale a 2, cosa significherebbe?
Devi accedere o registrarti per scrivere nel forum
2 risposte