BNP Paribas



              Continuous Inspection
              Fight back the 7 deadly sins
              of the developer!




              Olivier Gaudin
              olivier.gaudin@sonarsource.com
              @gaudol
Back in old times
The genius
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 plus
Capable de trouver une solution à
ses problèmes, quand il ne reste plus
Aucun espoir :

le Capitaine FLAM !
This is my toy
Fear of changes
Industrialisation has entered the game...

              ●   Project under version control
              ●   Project under continuous
                  integration
              ●   Technical and functional
                  traceability
…and software factories evolved




        Makefile         Issue Tracker                 IDE                    Continuous
                                                   Refactoring                Inspection

 VI /              SCM               Continuous                  Unit Tests
Emacs                                Integration
What is the mission of today's developer ?




                 ?
The end does not justify the means


    Doing the right software




    Doing the software right
Developing for others
Methodology
Transparency
Nothing is more important than code
But source code is nothing alone
(Almost) Everything is maintenance !



       Creation of an
        application




   Maintenance
 of an application
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
How to measure internal quality ?
The technical debt
The 7 deadly sins
of the developer




                      Sins




                    Technical
                      Debt
The 7 deadly sins
Applied to source code

●   Duplicated code
●   Bad distribution of complexity
●   Spaghetti Design
●   Lack of unit tests
●   Lack coding standards
●   Potential bugs
●   Not enough or too many comments
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
The « Done, Done, Done, Done »


● Developed
● Tested


● Approved by the « Product


  Owner »
●   Technical debt under control
Thank You !
http://www.sonarsource.org
http://www.sonarsource.com

More Related Content

PDF
Scrum is not enough - being a successful agile engineer
PDF
Real Developers Don't Need Unit Tests
PDF
Choose a pattern for a problem
PDF
Jdj Foss Java Tools
PDF
Continuous inspection with Sonar
PDF
On the Dichotomy of Debugging Behavior Among Programmers
PPTX
Is Advanced Verification for FPGA based Logic needed
PDF
Agile - Iteration 0 CodeMash 2010
Scrum is not enough - being a successful agile engineer
Real Developers Don't Need Unit Tests
Choose a pattern for a problem
Jdj Foss Java Tools
Continuous inspection with Sonar
On the Dichotomy of Debugging Behavior Among Programmers
Is Advanced Verification for FPGA based Logic needed
Agile - Iteration 0 CodeMash 2010

What's hot (16)

PDF
An introduction to_programming_the_microchip_pic_in_ccs_c
PDF
Automated GUI-Testing of Android Apps: From Research to Practice
PPTX
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
PDF
An Overview of Open Source & FOSS4G
PDF
Open Source Documentation in Four Easy Steps (and one slightly more difficult...
PDF
Think beyond frameworks, The real gems are in the languages
PDF
Automatically Discovering, Reporting and Reproducing Android Application Crashes
PDF
Ja coco ignite
PDF
The Design, Evolution and Use of KernelF
PDF
The Lean Tech Stack
PPTX
A year of SonarQube and TFS/VSTS
PDF
Developer Job in Practice
PDF
Tracking and improving software quality with SonarQube
PDF
Gpw 2013, Konstruktive Paranoia, 2013-03-15
PPTX
Typical errors in code on the example of C++, C#, and Java
PDF
Why I Love Ruby On Rails
An introduction to_programming_the_microchip_pic_in_ccs_c
Automated GUI-Testing of Android Apps: From Research to Practice
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
An Overview of Open Source & FOSS4G
Open Source Documentation in Four Easy Steps (and one slightly more difficult...
Think beyond frameworks, The real gems are in the languages
Automatically Discovering, Reporting and Reproducing Android Application Crashes
Ja coco ignite
The Design, Evolution and Use of KernelF
The Lean Tech Stack
A year of SonarQube and TFS/VSTS
Developer Job in Practice
Tracking and improving software quality with SonarQube
Gpw 2013, Konstruktive Paranoia, 2013-03-15
Typical errors in code on the example of C++, C#, and Java
Why I Love Ruby On Rails
Ad

Similar to Sonar (20)

PPTX
Slides for Houston iPhone Developers' Meetup (April 2012)
 
PDF
Software Craftsmanship
PDF
Functional to Visual: AI-powered UI Testing from Testim and Applitools
PDF
“High performance teams" - Marco Cecconi
PDF
Continuous integration
PDF
High Performance Software Engineering Teams
PDF
Continuous Integration
PPTX
Build Automation in Android
PDF
The Role of Testing in DevOps
PDF
Thailand SPIN: Series 3: กุญแจสู่ความสำเร็จในการเขียนโปรแกรมให้ตรงกับความต้อง...
PPTX
Technical Debt.pptx
PPTX
Automation Proposal_V1.0
PPTX
How to Embed Codeless Test Automation Into DevOps
PDF
Continuous delivery for Android
PDF
Merge hells!! feature toggles to the rescue - Presented @ Agile Toronto
PPTX
Introduction to software Engineering
PDF
Introducing: Ionic Studio & Appflow A Better Way to Build Apps
PPTX
Introduction To Software Engineering
PPTX
Creating a reasonable project boilerplate
PPTX
Java Code Quality Tools
Slides for Houston iPhone Developers' Meetup (April 2012)
 
Software Craftsmanship
Functional to Visual: AI-powered UI Testing from Testim and Applitools
“High performance teams" - Marco Cecconi
Continuous integration
High Performance Software Engineering Teams
Continuous Integration
Build Automation in Android
The Role of Testing in DevOps
Thailand SPIN: Series 3: กุญแจสู่ความสำเร็จในการเขียนโปรแกรมให้ตรงกับความต้อง...
Technical Debt.pptx
Automation Proposal_V1.0
How to Embed Codeless Test Automation Into DevOps
Continuous delivery for Android
Merge hells!! feature toggles to the rescue - Presented @ Agile Toronto
Introduction to software Engineering
Introducing: Ionic Studio & Appflow A Better Way to Build Apps
Introduction To Software Engineering
Creating a reasonable project boilerplate
Java Code Quality Tools
Ad

More from Novencia Groupe (20)

PDF
Datalake de l'idée à la plateforme
PDF
Ambient intelligence & bigdata
PDF
Workshop Fonctionnel - Mecanisme surveillance unique
PDF
Workshop Fonctionnel - TITRISATION : LE RETOUR
PDF
L’approche Big Data en finance de marché 2/2
PDF
L’approche Big Data en finance de marché 1/2
PPT
Les Acronymes financiers de 2014
PDF
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
PDF
Qualité de code, sonar, la dette
PDF
Visual studio 2012
PDF
Euro II : Nouvelle donne 2012
PDF
Les systèmes de compensation
PDF
Présentation des marché de capitaux
PDF
Mobile development
PDF
Nouveautés disponibles dans asp
PDF
La crise de l'euro
PDF
Les 3 modes de concurrence wcf
PDF
Introduction à la finance de marché
PDF
Utilisation d'une api web avec asp
PDF
Déployer une application directement depuis visual studio 2010
Datalake de l'idée à la plateforme
Ambient intelligence & bigdata
Workshop Fonctionnel - Mecanisme surveillance unique
Workshop Fonctionnel - TITRISATION : LE RETOUR
L’approche Big Data en finance de marché 2/2
L’approche Big Data en finance de marché 1/2
Les Acronymes financiers de 2014
FATCA et DODD-FRANK : Deux lois américaines qui s’imposent aux banques europé...
Qualité de code, sonar, la dette
Visual studio 2012
Euro II : Nouvelle donne 2012
Les systèmes de compensation
Présentation des marché de capitaux
Mobile development
Nouveautés disponibles dans asp
La crise de l'euro
Les 3 modes de concurrence wcf
Introduction à la finance de marché
Utilisation d'une api web avec asp
Déployer une application directement depuis visual studio 2010

Sonar