The surprising moves Microsoft made this year to get on the UML bandwagon are a bit less surprising when you look back at some early UML developments. These came to mind recently when I had the chance to speak with Grady Booch, one of the three founding fathers of UML.
Booch, now an IBM fellow, was motoring across Texas when we caught up by cell phone. He recalled the early packaging of Rational Rose in Visual Studio, and noted that he, Ivar Jacobson and Stephen Rumbaugh and others at Rational (now IBM Rational) talked with a number of companies while formulating their plan for a universal modeling language, and that Microsoft was among the companies then contributing to the UML effort.
When UML went to the OMG for standardization, said Booch, Microsoft dropped out. "I was sorry they didn't join the journey," he said, "but I thanked them for what they did for the evolution of UML." This year, Microsoft formally joined the OMG.
"I am glad to see Microsoft in the open standards world," said Booch. He sees Microsoft's UML embrace as customer driven. He said, "I think their customers have said that 'UML is important to us.'"
In a conversation that continued on to broader issues, Booch discussed the role of architecture, and some key challenges. He said he was a believer in Agile development processes, but added that it was not enough to be agile on just a single project.
"You need to be agile throughout your organization. It means from a corporate level you have a continuous evolution of your software architecture," he said.
He continued: "Architecture becomes the primary way that one can make intentional and reasoned decisions about the assets they have."
Like others he notes the recent spate of corporate mergers, many accomplished very quickly under major duress, and he noted the role that good software architecture can play in combining companies successfully.
"With a merger or acquisition," said Booch, "you can look at it optimistically, and throw these things together and you end up with a big dripping hairball."
"But, if you focus on the architectural governance of these things then there is a more intentioned way to bring in those assets," he said.
I asked Booch what were the telling technology issues of the year – and the year ahead. Among key issues, he said, are "Brownfield development (integration development), team-oriented development collaboration, and multicore development.
Of the latter, he said: "The basic issue is the frequency scaling wars are over. The way forward is putting more processors on a single chip."
"Now the challenge of course is the issue is shifted from hardware to software. And the whole software industry is woefully ill prepared to deal with that. The one that's been hit by it first is the gaming industry. They are kind of like the canary in the mine." Language and compiler enhancements, as well design patterns for parallel programming, are being looked at within IBM Research as means to address the multicore challenge, he indicated.