Sonar

24
Continuous Inspection Fight back the 7 deadly sins of the developer! Olivier Gaudin [email protected] @gaudol BNP Paribas

description

Continuous Inspection

Transcript of Sonar

Page 1: Sonar

Continuous InspectionFight back the 7 deadly sinsof the developer!

Olivier [email protected]@gaudol

BNP Paribas

Page 2: Sonar

Back in old times

Page 3: Sonar

The genius

Page 4: Sonar

The super hero

Au fin fond de l'Univers, à des années et des années-lumière de la Terre,Veille celui que le gouvernement intersidéral appelle quand il n'est plusCapable de trouver une solution à ses problèmes, quand il ne reste plusAucun espoir :

le Capitaine FLAM !

Page 5: Sonar

This is my toy

Page 6: Sonar

Fear of changes

Page 7: Sonar

Industrialisation has entered the game...

● Project under version control● Project under continuous

integration● Technical and functional

traceability

Page 8: Sonar

…and software factories evolved

Makefile

SCM

Issue Tracker

ContinuousIntegration

IDERefactoring

VI /Emacs

Unit Tests

ContinuousInspection

Page 9: Sonar

What is the mission of today's developer ?

?

Page 10: Sonar

The end does not justify the means

Doing the right software

Doing the software right

Page 11: Sonar

Developing for others

Page 12: Sonar

Methodology

Page 13: Sonar

Transparency

Page 14: Sonar

Nothing is more important than codeBut source code is nothing alone

Page 15: Sonar

(Almost) Everything is maintenance !

Creation of anapplication

Maintenance of an application

Page 16: Sonar

Internal quality

« A well-written program is a program where the cost of implementing a feature

is constant throughout the program's lifetime. »

Itay Maman

Page 17: Sonar

How to measure internal quality ?

Page 18: Sonar

The technical debt

Page 19: Sonar

The 7 deadly sinsof the developer

Sins

TechnicalDebt

Page 20: Sonar

● Duplicated code● Bad distribution of complexity● Spaghetti Design● Lack of unit tests● Lack coding standards● Potential bugs● Not enough or too many comments

The 7 deadly sinsApplied to source code

Page 21: Sonar
Page 22: Sonar

Sonar is only a tool !

● What should happen in case new defects are added ?

● How, when and who should make quality standards evolve ?

● How to train new joiners ?● Any measure reported must be analysed

Page 23: Sonar

The « Done, Done, Done, Done »

● Developed● Tested● Approved by the « Product Owner »

● Technical debt under control

Page 24: Sonar

Thank You ! http://www.sonarsource.org http://www.sonarsource.com