Re.Mark

My Life As A Blog

Seeing the Big Picture

leave a comment »

K. Scott Allen’s post on the limits to visual tools is an interesting read.  The main contention is that visual tools don’t scale and consequently have a limit.  The examples in the post back up this point.  I wonder if this is a problem with visual tools per se, a limitation of current tools or a misuse of the tools.  It may be a combination of these factors.  The first question to ask is: do text based tools scale well?  The good news is that we can split a system up into an arbitrary number of files.  This is great for understanding the contents of a file – but the system as a whole is still very difficult to understand, especially for those coming to the system cold.  Putting everything into one diagram is the equivalent of putting all our code into one text file – I’m going to assume you agree with me that that’s a bad idea for all but the most trivial of system.  With a well factored codebase, the best route into the system for most people, in my experience, is some sort of graphical overview – the key here being that it must be at the right level of abstraction.

In creating and reviewing architectural documents and walkthroughs, I’ve often faced the same issue of getting the right amount of information into diagrams.  There is a temptation to have one diagram that shows everything – this temptation should be resisted as it leads to confusion.  Having a number of views of a model (each at differing levels of abstraction and with a different perspective and focus) is the best way I’ve found of distilling the right amount of information.  What we need from the tooling is a way to link the views together.  When you think about it, the principle here is similar to that used in splitting up a codebase into multiple files.  Diagrams and models are, of course, not text free – but in the right context one diagram can save a lot of time and effort.

So, I’m not convinced that there is an inherent quality of visual tools that limits their ability to scale – but the way in which we use them and some of the functionality provided may need to change to accommodate scale.  Another thing to consider is that models can be represented with both text and diagrams – potentially allowing different people to use representations that are closest to their natural strengths.

Advertisements

Written by remark

May 27, 2008 at 3:01 pm

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: