code as a crime scene
play

Code as a Crime Scene @AdamTornhill Understanding Code - PowerPoint PPT Presentation

Treat Your Code as a Crime Scene @AdamTornhill Understanding Code @AdamTornhill Cyclomatic Complexity @AdamTornhill Syntactic complexity metrics cannot capture the whole picture of software complexity (Herraiz & Hassan) The use


  1. Treat Your Code as a Crime Scene @AdamTornhill

  2. Understanding Code

  3. @AdamTornhill

  4. Cyclomatic Complexity @AdamTornhill

  5. “Syntactic complexity metrics cannot capture the whole picture of software complexity” (Herraiz & Hassan) “The use of metrics to manage software projects has not even reached a state of infancy” (Glass) @AdamTornhill

  6. Intuition Doesn’t Scale

  7. Forensic Psychology

  8. g n i l fi o r P r e d n e f f O l a c i h p a r g o e G - n o i t c u d o r t n I s e t u n i M 2 a

  9. Profiling the Ripper

  10. How can we use this in Code ?

  11. A geography of code @AdamTornhill Code City, http://www.inf.usi.ch/phd/wettel/codecity.html

  12. Spatial Movement in Code When? Who? [0a05fba] Adam Tornhill 2013-09-17 Added an identity analysis as debug aid 
 5 1 README.md 
 5 5 src/code_maat/analysis/authors.clj 
 3 4 src/code_maat/app/app.clj 
 1 1 src/code_maat/core.clj 
 18 1 test/code_maat/end_to_end/scenario_tests.clj Where! @AdamTornhill

  13. Geographical profiling of Code @AdamTornhill

  14. Geographical profiling of Code Hotspot @AdamTornhill

  15. A Case Study

  16. Hotspot Hotspot @AdamTornhill

  17. Hotspots and Defects 7 out of 8 most defect dense parts 4 % of the Code , 72 % of all defects !

  18. Improve 4 % of your code , get rid of most defects @AdamTornhill

  19. Evolution of a Program Time

  20. Complexity Trend method-to-ir.c Complexity 2010 Time 2014

  21. Software

  22. e ? i L e Doesn’t d o C

  23. Temporal Coupling Commit #1 Commit #2 Commit #3 FuelInjector.cs Diagnostics.cs Combustion.cs Time @AdamTornhill

  24. Physical coupling Logical coupling ? @AdamTornhill

  25. Temporal Coupling @AdamTornhill

  26. Conway’s Law Legacy Code ? and

  27. @AdamTornhill

  28. A Perfect World Team #1 Team #2 Team #3 @AdamTornhill

  29. Team #2 Team #1 Team #4 Team #3 @AdamTornhill

  30. Team #1 Team #2 Team #4 Team #3 @AdamTornhill

  31. Align Your Architecture and Organisation

  32. y t i l a u Q Number of Programmers @AdamTornhill

  33. Fractal Figures @AdamTornhill Idea from: Fractal Figures: Visualizing Development Effort for CVS Entities (D’Ambros, Lanza, & Gall)

  34. Identify Main developers Main Developer “Knowledge Owner” @AdamTornhill

  35. Your map as a Guide

  36. Team #1 Team #2 Team #3 @AdamTornhill

  37. The Pareto Principle

  38. Loss of Knowledge @AdamTornhill

  39. Abandoned subsystem @AdamTornhill

  40. Code <3 Forensics @AdamTornhill

  41. Read More www.adamtornhill.com/articles/aspnetclones/killtheclones.html www.adamtornhill.com/articles/socialside/socialsideofcode.htm The Tools as a Service (work in progress) https://codescene.io/ @AdamTornhill adam@adamtornhill.com

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend