With IBM's acquisition of Rational Software, Grady Booch -- one of the original developers of the Unified Modeling Language
and a thought leader in the area of architectural software -- has become the proverbial kid in the candy store. In his role
as an IBM Fellow, Booch will help invent IBM's software future. He believes IBM's large cash reserves and a close working
relationship with the high-voltage brain power of IBM Research will significantly quicken to market a range of technical innovations
in the area of tooling.
As he prepared for his keynote at this week's EclipseCon show, Booch talked to InfoWorld Editor at Large Ed Scannell about
the joys of eating all the technology candy you want, what's going on outside of the battle between Java and .Net, and programming
trends among large-scale systems.
InfoWorld: As IBM's designated Free Radical, what havoc you have been able to create?
Booch: A number of things. The real cool thing about working with a large organization is -- and [IBM] is two orders of magnitude
larger than what I have been used to -- there are so many bright people doing great things. It is interesting to connect the
dots among them. One area where I have been helping to connect the dots is in the area of patterns. Patterns are perhaps the
greatest thing to come along in software engineering in the past decade. They are part of the atmosphere of most good development
shops. But the issue is, as I build systems, there is this vocabulary of naming these societies of classes that work together
well with each other. With that practice now embedded in most shops, there are real opportunities to raise the level of abstraction
again. [We] are starting to look at vertical architectural patterns, opportunities for that sort of commoditization.
InfoWorld: Any real-world examples you can point to?
Booch: The insurance industry is doing that already with its insurance application architecture. State Farm tells me 85 percent
of that market now uses a common framework to some degree. The auto makers in Europe have banded together around BMW. Others
are saying they need to come up with a common architecture for in-car electronics so they don't have compete with one another
with these proprietary systems but instead build on top of each other's. So things are emerging. But as I go about being an
architectural mentor, I realize people are reinventing the same patterns over and over again. I have been working with Grant
Larsen and Jonathan Adams, for instance, and together we are trying to connect the dots on assembling the larger body of experience,
especially within IGS [IBM Global Services] to see if we can codify them and then provide some higher degrees of automation
with them.
InfoWorld: What sort of experience has it been working with IBM Research?
Booch: Two things. First, I feel like a kid in a candy shop. Second, IBM Research really is Rational's secret weapon. I feel
like a kid in the candy shop because prior to Rational joining IBM, IBM Research was certainly doing things in the space of
tools, but it wasn't like the software group really had a central place to catch all these things coming out of there. Well,
now they do. For the last year it has been this wonderful opportunistic romp through research to say "Hey, you guys are doing
cool things, come join us. Let's take what you have done and see if we can bring some things to fruition." In fact, this year
we are spending a large number of millions to fund a number of research projects that are focused on just the tooling effort.
This is something Rational has done on a smaller level in the past, but now we can do it in a big way.
InfoWorld: Everyone is focusing on Java vs. .Net. What are some of the more interesting things people might be missing out
there?
Booch: Even though patterns are very much part of the atmosphere, I still think it is a market that has tremendous opportunity
for growth. It goes back to my premise that building systems [is] really no longer just about language; that is only the stuff
we use for the vocabulary of what we are doing. The real hard problem is, how do I come up with the right kind of components,
the right designs, and how do you syndicate those kinds of things? That is what patterns are all about. In fact, if you look
at things like IBM's patterns for e-Business and Sun's J2EE patterns, what these folks are telling us is, these platforms
are good but they are still very complex. The way to bridge that complexity is by building patterns on top of them. That's
the best kept secret inside the marketplace right now.
InfoWorld: You are a big believer in grid computing. Why?