InfoQ

Interview

   Good News: We have re-worked our video infrastructure to provide more reliable service. Please email bugs at infoq.com with any problems.

Erik Doernenburg on Software Visualization

Interview with Erik Doernenburg on Oct 19, 2007 10:38 AM

Community
Architecture
Topics
Collaboration,
Modeling,
Methodologies
Tags
Visualization
Summary
Erik Doernenburg has worked in the field of enterprise applications for more than ten years. He is now employed by ThoughtWorks, and his latest interest is software visualization. In this interview he talks with InfoQ about different software visualization strategies using a combination of free tools and custom development.

Bio
The first piece of software Erik Doernenburg created was a little game that he wrote in Basic on the Commodore VIC-20 in 1983. He has worked in the field of enterprise applications for the past 10 years, and is now employed by ThoughtWorks. His latest passion is software visualization strategies at a medium level of abstraction.
Erik, can you tell us a bit about yourself and what you are up to?
You have been talking a lot about "software visualizations". Can you tell us a bit about what you mean?
What kinds of artifacts can you visualize?
Don't metrics have a bad wrap now that everyone is becoming agile and keeping things simple?
On your last 2-3 projects, what metrics you were recording and how were they visualized.
What are the most common metrics you think the projects should track?
What about package dependencies? How important is that in your projects?
How would you create the visualization of how many classes are being instantiated. What are the tools you use inwards the process you follow?
So for jar dependencies that makes sense, but what about the more obscure kinds of visualizations, like the class substantiations. How would you do that?
What is the complete tool set for doing all the visualizations that you have been doing?
So what are some of the limitations of these tools and how can you get around them?
So you have been talking a lot about visualization of static metrics. What about dynamic at runtime metrics?
Who should be looking at the visualizations? How do they fit into the project management processes?
A final question: what are your two favorite computer books?
show all  show all

6 comments

Reply

Visualizations in Performance Management Tools by William Louth Posted Oct 20, 2007 10:46 AM
Why not use Dependency Structure Matrix tools? by Han van Roosmalen Posted Oct 22, 2007 3:05 AM
Re: Why not use Dependency Structure Matrix tools? by Erik Doernenburg Posted Nov 1, 2007 1:10 AM
i care visual modeling by jack ding Posted Oct 24, 2007 12:24 AM
Title of the suggested book by Rafael de F. Ferreira Posted Oct 25, 2007 10:04 PM
Re: Title of the suggested book by Erik Doernenburg Posted Nov 1, 2007 1:13 AM
  1. Back to top

    Visualizations in Performance Management Tools

    Oct 20, 2007 10:46 AM by William Louth

    ....these have visualizations but I wouldn't really count that into metrics and visualizations field.
    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 http://blog.jinspired.com/?p=144 The Laws of Simplicity: Hide | Highlight http://blog.jinspired.com/?p=28 Beautiful Evidence: Metric Monitoring http://blog.jinspired.com/?p=33 I cannot imagine anyone not considering the following "visualizations" Database Concurrency http://www.jinspired.com/products/jxinsight/concurrency.html Database Lock Contention http://www.jinspired.com/products/jxinsight/olapvsoltp.html 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" http://www.jinspired.com

  2. Back to top

    Why not use Dependency Structure Matrix tools?

    Oct 22, 2007 3:05 AM by Han van Roosmalen

    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

  3. Back to top

    i care visual modeling

    Oct 24, 2007 12:24 AM by jack ding

    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?

  4. Back to top

    Title of the suggested book

    Oct 25, 2007 10:04 PM by Rafael de F. Ferreira

    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?

  5. Back to top

    Re: Why not use Dependency Structure Matrix tools?

    Nov 1, 2007 1:10 AM by Erik Doernenburg

    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: http://www.inf.unisi.ch/phd/lungu/softwarenaut/screenshots/ erik

  6. Back to top

    Re: Title of the suggested book

    Nov 1, 2007 1:13 AM by Erik Doernenburg

    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) http://www.amazon.co.uk/Object-Oriented-Metrics-Practice-Software-Characterize/dp/3540244298

Exclusive Content

Tapestry for Nonbelievers

A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.

Pete Lacey on REST and Web Services

In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.