19
Code Quality 29 Settembre 2016 Sponsored by

Code metrics

  • Upload
    klab

  • View
    24

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Code metrics

Code Quality 29 Settembre

2016

Sponsored by

Page 2: Code metrics

Sponsor

Page 3: Code metrics

Anselmi Ivan

www.resdata.it

@ianselmi

[email protected]

Page 4: Code metrics

Definiamo la Code Quality1/15

E’ composto da: Metriche estratte dal codice sorgente Numero di debiti tecnici

E’ un indicatore che ci mostra quanto il nostro software è in linea con gli obbiettivi richiesti

Può essere riferito ai requisiti utente oppure al codice sorgente

Page 5: Code metrics

Code Quality in azienda..perchè era necessario parlarne 2/15

• Perché abbiamo diversi gruppi dislocati geograficamente• Perché dovevamo standardizzare il modo di scrivere software• Perché ogni gruppo lavora in modo indipendente dagli altri• Perché avevamo un grosso pregresso da manutenere• Perché in alcuni progetti ci siamo trovati ad essere ….

Page 6: Code metrics

… SEPOLTI IN CASA3/15

Page 7: Code metrics

Ok partiamo dalle origini…

All’inizio utilizzavamo «l’indice di qualità universale»

4/15

Page 8: Code metrics

Ok partiamo dalle origini…5/15

https://blog.codinghorror.com/when-understanding-means-rewriting/

Page 9: Code metrics

Cosa stavamo cercandoIntro

6/15

• Uno strumento per poterci misurare• Multi linguaggio (c#, vb.net, javascript)• Dashboard rappresentativa dei risultati• Integrabile in Visual Studio e nel processo di build• Stimare i debiti tecnici• Free (il più possibile )

Page 10: Code metrics

Il nostro approccio…primo tentativoIntro

7/15

• Integrate in Visual Studio• Possibilità di integrare in build automatiche• Esportazione manuale dei risultati

Fxcop + metriche di Visual Studio

Page 11: Code metrics

[DEMO]

8/15

Page 12: Code metrics

Perché abbiamo fallito9/15

• Limitate al mondo .net• Limitate a Visual Studio• Solo per tecnici• Soluzioni a pagamento (Es: NDepend)• Nessuna dashboard• I debiti tecnici non erano quantificabili

Page 13: Code metrics

Il nostro approccio…secondo tentativo

SonarQube

10/15

• Integrate in Visual Studio (SonarLint)•Multi linguaggio (js, vbnet, ecc)•Rappresentazione grafica degli indici•Free (parzialmente)

Page 14: Code metrics

[DEMO SONARQUBE]

11/15

Page 15: Code metrics

Perché ci è sembrato il software giusto…

• Integrazione con .Net e non solo•Dashboard anche per non tecnici•Valutazione dei debiti tecnici• Integrabile nella build automatiche

12/15

Page 16: Code metrics

[DEMO SONARLINT]

13/15

Page 17: Code metrics

..per finire…a cosa ha portato la Code Quality? 14/15

•Avere maggiore controllo sul codice•Segnalazione tempestiva di eventuali debiti tecnici•Poter standardizzare la scrittura del codice•Avere un obbiettivo chiaro e condiviso tra i gruppi•Facilitare la comprensione del codice

Page 18: Code metrics

Links

• SonarQube - http://www.sonarqube.org/• SonarLint - http://www.sonarlint.org/visualstudio/• SonarQube Plugin - https://github.com/SonarSource/sonarqube•DotNetPodcast - http://dotnetpodcast.com/show/card/104

15/15

Page 19: Code metrics

GRAZIE PER L’ATTENZIONE!

[DOMANDE?]