code as a crime scene
play

Code as a Crime Scene @AdamTornhill Empear AB - PowerPoint PPT Presentation

Treat Your Code as a Crime Scene @AdamTornhill Empear AB http://www.adamtornhill.com/ Understanding Code @AdamTornhill Cyclomatic Complexity @AdamTornhill Syntactic complexity metrics cannot capture the whole picture of software


  1. Treat Your Code as a Crime Scene @AdamTornhill Empear AB http://www.adamtornhill.com/

  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. Case Study 400.000 Lines of Code 89 Software Developers 18 Months 18 258 Commits to the codebase @AdamTornhill

  16. Hotspot Hotspot From: https://pragprog.com/book/atcrime/code-as-a-crime-scene

  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 Development is a social activity @AdamTornhill

  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

  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 @AdamTornhill

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

  37. Social Networks in Code @AdamTornhill

  38. Loss of Knowledge @AdamTornhill

  39. Abandoned subsystem @AdamTornhill

  40. Code <3 Forensics @AdamTornhill

  41. The Book: https://pragprog.com/book/atcrime/your-code-as-a-crime-scene Read More: http://www.adamtornhill.com/ @AdamTornhill adam.tornhill@empear.com Empear AB

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