• Share this article:

Something Borrowed, Something New

Thursday, September 15, 2005 - 14:54 by Mike Milinkovich

I’ve been trying to find the time to write this posting ever since I got back from EclipseWorld. Obviously, in this job I get to see a lot of demos of tools built with Eclipse. A lot of them are pretty cool. Everyone once in a while I see something that just blows my socks off.

At EclipseWorld, I ran into an old acquaintance of mine, Neeraj Sangal. Neeraj and I crossed paths briefly at WebGain, after we were both acquired by that ill-destined company. Neeraj is a serial entrepreneur, and was the brains behind StructureBuilder.

Neeraj’s latest firm Lattix has built a software complexity analysis tool that is really interesting.

The first thing I think is interesting about their technology is that it is based on an idea borrowed from a domain other than software. In Neeraj’s own words:

DSMs (Dependency Structure Matrix) were invented in the 70s. However, their use was really popularized by MIT Sloan School during the 90s when they were applied at a number of large companies such as Intel and Boeing to analyze their complex work flows and organizations. Our extension of DSMs to software architectures is called Dependency Models…

There certainly are precedents for interesting ideas being pulled into software development from other sources. For example, design patterns were originally inspired by Christopher Alexander’s Pattern Language, which “…was originally expected to enable every citizen to design and construct their own home”(1).

The second cool feature is that tool provides is an easy to understand way to analyze your system’s architecture, and to determine where your architectural “leaks” are. (Where code has (ab)used internal APIs, for example.)

Bjorn is going to look into whether we could use the tool to look into some pieces of Eclipse itself . Which I am sure will find nothing but perfection ?