0
Thursday February 10th, 2011

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation ...
The Good Old Way...

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commercia...
The JUGL Way
  A head-to-head live comparison
  But don’t expect any winner...

  A quick overview of the market
  The...
Tonight « Wrestlers »
Alan Perkins
Sales Engineering Manager EMEA

Chris Chedgey
CEO

Bogdan Czwartkowski
Professional Ser...
Their Mission
  No fluff just stuff
  A maximum of time dedicated to demos, 2-3 slides max.

  Have each vendor assess ...
The Target
is an
“ IceScrumScrumJ2EE application
for using
while keeping
the spirit of a collaborative
workspace

”

Scrum...
Some Background and Architecture
IceScrum 1: Desktop application in Java / Swing

2008

IceScrum 2: Web application in Jav...
Agenda
  Introduction: 5 minutes

You are here

  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
SONAR - Dashboard

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale...
SONAR - SQALE Quality Model

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation C...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
Parasoft JTest - Metrics

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Comm...
Parasoft JTest – Static Analysis

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisat...
Parasoft JTest – Duplications

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation...
Parasoft JTest – Flow Analysis

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisatio...
Parasoft JTest – Runtime Error Detection

Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
XDepend - Fonctionnalités
Fonctionnalités

Support

Fonctionnalités

Support

Règles de nommage

✓

Intégration IDE

✗

Rè...
XDepend - Vue principale

Copyright © 2011– OCTO Technology – Licence CC – Creative Commons 2.0 France – Paternité – Pas d...
XDepend - Métriques

Copyright © 2011– OCTO Technology – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Util...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
Coverity Integrity Center
Precision Software Analysis Across Lifecycle
• Increase customer satisfaction by
eliminating pro...
Steps To Mitigate Risk
1 Scan

your
software

Fix
Emacs

priority
defects

4

5

Integrity
Analysis
Engine

2 Find
List of...
Shared Code Branching & Defect Impact
2.6.2.1 release
2.6.2 release
2.6 release

Merge
fix

Mainline/Trunk/Head/Developmen...
Analyze 2.6, 2.6.2 and 2.6.2.1 releases
Branch of a codebase:
Project 2.4
2 streams
2.6.2.1 release
2.6.2 release
2.6 rele...
Common Defects are merged by CIM
Branch of a codebase:
Project 2.4
2 streams
2.6.2.1 release
2.6.2 release
2.6 release

St...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
What the IceScrum Team Says
  Pain points – Interview with Vincent Barrier
  Much pain with JSF
  SW architecture leadi...
Share It!
  Find these + the vendors’ slides on the JUGL web site
  http://jugl.ch

  Live it on Parleys
  http://parl...
Agenda
  Introduction: 5 minutes
  20 minutes by vendor to assess IceScrum2, in this order:
 
 
 
 
 

Sonar
Paraso...
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011
Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011
Upcoming SlideShare
Loading in...5
×

Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011

325

Published on

Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011
Alan Perkins (Coverity), Chris Chedgey (Headway Software), Bogdan Czwartkowski (Parasoft), Freddy Mallet (Sonar), Henri Tremblay (XDepend)

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
325
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Session dédiée à l'analyse de la qualité du code Java - Cyril Picat - February 2011"

  1. 1. Thursday February 10th, 2011 Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique
  2. 2. The Good Old Way... Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 2
  3. 3. The JUGL Way   A head-to-head live comparison   But don’t expect any winner...   A quick overview of the market   The leading products (*)   Showcased by experts   An introduction to software assessment and software quality management   A first contact with vendors   If you would like to start tomorrow... (*) CAST, a clear leader, is missing. They unfortunately declined our invitation. Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 3
  4. 4. Tonight « Wrestlers » Alan Perkins Sales Engineering Manager EMEA Chris Chedgey CEO Bogdan Czwartkowski Professional Services Manager Freddy Mallet Co-director & co-founder Henri Tremblay Senior Architect Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 4
  5. 5. Their Mission   No fluff just stuff   A maximum of time dedicated to demos, 2-3 slides max.   Have each vendor assess the same application   An open-source application   Select an application close to (y)our daily work   A web application, not a framework   All issues are interesting   At all levels: code correctness, logic, architecture, performance...   In all codes: Java code, DB code and schema, HTML/CSS...   Detected in any ways, static or dynamic Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 5
  6. 6. The Target is an “ IceScrumScrumJ2EE application for using while keeping the spirit of a collaborative workspace ” Scrum Alliance: www.scrumalliance.org Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique IceScrum: www.icescrum.org 6
  7. 7. Some Background and Architecture IceScrum 1: Desktop application in Java / Swing 2008 IceScrum 2: Web application in Java / JSF JSF / IceFaces Maven Tonight 2005 Spring Hibernate Link to SVN repository on SourceForge 2010 IceScrum 3: Web application in Grails Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 7
  8. 8. Agenda   Introduction: 5 minutes You are here   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 8
  9. 9. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity You are here   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 9
  10. 10. SONAR - Dashboard Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 10
  11. 11. SONAR - SQALE Quality Model Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 11
  12. 12. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity You are here   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 12
  13. 13. Parasoft JTest - Metrics Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 13
  14. 14. Parasoft JTest – Static Analysis Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 14
  15. 15. Parasoft JTest – Duplications Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 15
  16. 16. Parasoft JTest – Flow Analysis Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 16
  17. 17. Parasoft JTest – Runtime Error Detection Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 17
  18. 18. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity You are here   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 18
  19. 19. XDepend - Fonctionnalités Fonctionnalités Support Fonctionnalités Support Règles de nommage ✓ Intégration IDE ✗ Règles d'architecture ✓ Historique ✓ Structure du code ✓ Langage de requêtage ✓ Erreur de logique ✗ ✓ Analyse dynamique ✗ Implémentation de nouvelles règles Intégration des tests ✓ Règles de sécurité ✗ Intégration continue ✓ Dashboard pour le manager ✗ Richesse de l‘écosystème ✗ Prix: 299 € dégressif en fonction du nombre de licences Copyright © 2011– OCTO Technology – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 19
  20. 20. XDepend - Vue principale Copyright © 2011– OCTO Technology – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 20
  21. 21. XDepend - Métriques Copyright © 2011– OCTO Technology – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 21
  22. 22. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity You are here   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 22
  23. 23. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity   Discussion panel: 20 minutes   Conclusion: 5 minutes You are here ! This session has not been recorded according to Coverity’s will   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 27
  24. 24. Coverity Integrity Center Precision Software Analysis Across Lifecycle • Increase customer satisfaction by eliminating product delays and recalls caused by software problems • Speed time to market by making software changes faster and with less risk • Innovate rapidly by reducing time developers spend fixing software design, code, and delivery problems
  25. 25. Steps To Mitigate Risk 1 Scan your software Fix Emacs priority defects 4 5 Integrity Analysis Engine 2 Find List of Defects _  10001 _  10002 _  10003 _  10004 _  10005 critical major major critical major priority defects Browse code Impact Rankings Map defect impact 3 Code base PRODUCTS Project 1 Project 2 Project 3 Report defect remediation
  26. 26. Shared Code Branching & Defect Impact 2.6.2.1 release 2.6.2 release 2.6 release Merge fix Mainline/Trunk/Head/Development 2.4 release 2.4.1 release Defect in the original development branch and never fixed affects all products Defect introduced in a release branch before a merge Defect introduced in a release branch after a merge
  27. 27. Analyze 2.6, 2.6.2 and 2.6.2.1 releases Branch of a codebase: Project 2.4 2 streams 2.6.2.1 release 2.6.2 release 2.6 release Mainline/Trunk/Head/Development 2.4 release 2.4.1 release
  28. 28. Common Defects are merged by CIM Branch of a codebase: Project 2.4 2 streams 2.6.2.1 release 2.6.2 release 2.6 release Stream 1 Stream 2 Stream 3 Mainline/Trunk/Head/Development 2.4 release 2.4.1 release Project 2.6
  29. 29. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity   Discussion panel: 20 minutes You are here   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 33
  30. 30. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity   Discussion panel: 20 minutes   Conclusion: 5 minutes You are here   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 34
  31. 31. What the IceScrum Team Says   Pain points – Interview with Vincent Barrier   Much pain with JSF   SW architecture leading to difficult and costly evolutions   Strong performance issues   Tooling issues (m2 plugin)   Difficulty to take new developers on board   Heterogeneous code and quality issues Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 35
  32. 32. Share It!   Find these + the vendors’ slides on the JUGL web site   http://jugl.ch   Live it on Parleys   http://parleys.com/#id=102931&st=4   React and follow further discussions on Twitter   #jugl or @cyrilpicat   Read Kalistick report and SQuORING report on IceScrum2 http://bit.ly/eB7oRM http://bit.ly/gDtmnj Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique 36
  33. 33. Agenda   Introduction: 5 minutes   20 minutes by vendor to assess IceScrum2, in this order:           Sonar Parasoft XDepend Headway Coverity   Discussion panel: 20 minutes   Conclusion: 5 minutes   Aperitif Copyright © 2011 – Licence CC – Creative Commons 2.0 France – Paternité – Pas d'Utilisation Commerciale – Partage des Conditions Initiales à l'Identique You are here 37
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×