Erik Doernenburg talked with InfoQ about about "software visualization", a concept that he has been focused on for the past two years. Software visualization aims to provide a representation of artifacts at an intermediate level of abstraction which provides enough information to be useful but are at a high enough level that you can perform broadly scoped analysis. In Erik's words:
You generally only get the 30000 foot view where every system has a small little box or you have to ground level view where you are looking at actual source code, but that doesn't help the developers, that doesn't help the management and that doesn't help the enterprise architects. So we are looking for a way to actually find some middle ground to get a 100 foot view, to get a better understanding of software systems.
Interestingly, instead of imagining complicated modeling tools, Erik forwards a strategy for software visualization that uses a mix of some modest open source tools and manual customization. He likes in particular an old visualization tool called dot, which he has been able to use in powerful and creative ways to communicate hierarchical information. In a nod to the pragmatic, he also utilizes Excel spreadsheets for the analysis. And although the tools he uses might be basic, the idea is very powerful and is a necessary tool when attempting to absorb the context of large systems.
Community comments
Visualizations in Performance Management Tools
by William Louth /
Why not use Dependency Structure Matrix tools?
by Han van Roosmalen /
Re: Why not use Dependency Structure Matrix tools?
by Erik Doernenburg /
i care visual modeling
by ding jack /
Title of the suggested book
by Rafael de F. Ferreira /
Re: Title of the suggested book
by Erik Doernenburg /
Visualizations in Performance Management Tools
by William Louth /
Your message is awaiting moderation. Thank you for participating in the discussion.
I would argue that visualizations in some performance management tools such as JXInsight exceed those of most other project or development centric tools on the market were the norm is for a dashboard with various metrics presented in green and red circles. Some tools related to structure analysis do a pretty good job at displaying a large number of inter-dependencies but timeline analysis is a much hard area to crack especially when trying to visualize millions events across a cluster of servers, across process and thread.
Parallel & Remote Tracing
blog.jinspired.com/?p=144
The Laws of Simplicity: Hide | Highlight
blog.jinspired.com/?p=28
Beautiful Evidence: Metric Monitoring
blog.jinspired.com/?p=33
I cannot imagine anyone not considering the following "visualizations"
Database Concurrency
www.jinspired.com/products/jxinsight/concurrenc...
Database Lock Contention
www.jinspired.com/products/jxinsight/olapvsoltp...
Maybe next time qualify the statement with "based on what I know of field X"
regards,
William Louth
JXInsight Product Architect
CTO, JINSPIRED
"Performance monitoring and problem management for Java EE, SOA, and Grid Computing"
www.jinspired.com
Why not use Dependency Structure Matrix tools?
by Han van Roosmalen /
Your message is awaiting moderation. Thank you for participating in the discussion.
Hi Erik,
you are talking extensively about dependency and visualisation. I think you need to do some catching up to do. Many of the problems you express were already solved years ago when the DSM methodology was introduced. First in the mechanics problem domain. Since Lattix introduced this in 2004 an excellent visulisation appeared in the software industry.
There are more tools starting to use DSM, but Lattix is the most advanced. It even allows you to change the code structure before you change the code. It even does not only work for Java (although it includes Spring, Hibernate and Oracle).
For more information www.lattix.com. Just look at the demo and I am sure that you find what you are looking for.
With kindest regards,
Han van Roosmalen
Software Architecting Consultant
i care visual modeling
by ding jack /
Your message is awaiting moderation. Thank you for participating in the discussion.
I thought the important field of software visualization should be visual modeling, not the report of code.
but his idea is fun, how about store our code in DB(instead of store in plain text file), and using SQL to get some reports?
Title of the suggested book
by Rafael de F. Ferreira /
Your message is awaiting moderation. Thank you for participating in the discussion.
The transcript shows the title of his second favorite book as "An object oriented metrics and software visualization". Is this really correct? What are the authors?
Re: Why not use Dependency Structure Matrix tools?
by Erik Doernenburg /
Your message is awaiting moderation. Thank you for participating in the discussion.
Han,
I am aware of tools such as Lattix LDM and Structure 101 by Headway Software. In my opinion DSM tools are useful and solve a certain class of problems well, but that doesn't mean that we can now sit back and declare dependency management solved.
To give you an idea what I'm talking about, have a look at Softwarenaut:
www.inf.unisi.ch/phd/lungu/softwarenaut/screens...
erik
Re: Title of the suggested book
by Erik Doernenburg /
Your message is awaiting moderation. Thank you for participating in the discussion.
Object-Oriented Metrics in Practice: Using Software Metrics to Characterize, Evaluate, and Improve the Design of Object-Oriented Systems (Hardcover) by Michele Lanza (Author), Radu Marinescu (Author), Stephane Ducasse (Author)
www.amazon.co.uk/Object-Oriented-Metrics-Practi...