250 likes | 274 Views
Visualizing Software Ecosystems as Living Cities. Clint Jeffery University of Idaho. Outline. Motivation & Background Visualizing Software as (Static) Cities “Living” Cities Implementation Conclusions. Motivation. Motivation. Millions of lines of code
E N D
Visualizing Software Ecosystems as Living Cities Clint Jeffery University of Idaho
Outline • Motivation & Background • Visualizing Software as (Static) Cities • “Living” Cities • Implementation • Conclusions
Motivation • Millions of lines of code • Still perceived as boring and solitary • “Software visualization” promised a fix • Time to just go do it
Visualizing Software as Cities • Wettel and Lanza proposed CodeCity • Swiss, SmallTalk, treemap rendering • Static view of a software repository
Software Maps Kuhn, Loretan, Nierstrasz
The “Living City” Metaphor • 3D Representation of Running System • City Structure: Depicts Code of Multiple Programs • Denizens of the City: the users, the running instances of the programs they are using, and finer-grained objects • Convey a projection of cyber-reality • Stronger man-machine connection • Users stroll, chat, write code, shoot bugs
Roadways • Street, arterial, and freeway
Buildings • Dimensions convey class size • Texture conveys date of origin
Building Interiors • One storey per method • Building directory and central elevator
Method Details • Walls show code, profile information • Space holds activation records
Time Model • Wall clock vs. “CPU Time” per thread
Unicon City? • 570,000 LOC; 195,000 is C code • ~350,000 LOC .icn written by 60 authors • 142 directories, ~half have payload
Implementation Notes • Collaborative virtual environment • Initial “world” generation from codebase • Incremental algorithms for code changes • Rich source of high performance dynamic data • Heaps of NPC AI • Piles of gameplay mechanics • Enthusiastic user base • Big iron
Conclusions • Large project • Yes, we now can implement Neuromancer • Need volunteers, partners, and a grant/sponsor • Will take ~3 years, culmination of 20+ • Some of you will still be here to enjoy it at that time