← Graph

Call Graph Visualization

concept 3 connections

Visualization technique where each horizontal row is an architectural layer (routes, controllers, models, views; or data/calculation/domain layers) and arrows represent call-time dependencies. Used to diagnose smells: upward-pointing arrows (e.g. a view iterating over models, a controller creating a decorator that knows about the view) indicate something has gone wrong. Shows why concerns don't solve complexity — they just split the same runtime dependency graph across more files. Also reveals legitimate modularization (a date→humanized-string library) and the real progress service objects represent over fat models. Works at function-scope too: refactoring a 'most unpopular book' function into a named 'frequencies' abstraction with a min-value method quarantines all stateful 'spidey-sense' code into a small corner of the graph.

category
practice
about
Call Graph Visualization concept
First of two visualization techniques taught in the talk.
about
Call Graph Visualization concept
Actionable application of the call-graph technique.
about
Call Graph Visualization concept
Asks how to interpret the direction of arrows in the talk's call graphs.

Provenance

Read by
6 extractions