Eureka

I had a great idea while I was in the shower this morning (all great ideas come while bathing, at least in my experience), and it proved to work famously. [Robert McLaws]

I’ve joked in the past that if I took more showers I’d be filthy rich. Apparently, I’m not the only one who does their best thinking while bathing. It’s a rich tradition, dating back to Archimedes who figured out in the bath that you can measure the volume of an irregular object (in his case, a crown) by measuring the volume of the water it displaced.

Actually, I don’t think it’s the bathing – it’s the disconnection. In my office I have a phone, two laptops connected to the Internet, four virtual PCs, twelve books, about a ream of various papers plus a pretty nice view of outside. In the shower, I have nothing but soap (not SOAP) and my thoughts.

SharePoint Component Directory

Going thru my referrer logs, I noticed that my SPSynd project is now listed in the SharePoint Products and Technologies Web Component Directory. Thanks for the listing!

Being a Model Citizen

I’In the space of 24 hours, Martin Fowler and Michael Platt both point to this article by Steve Cook about Microsoft’s views on MDA. This article plus Keith Short’s whitepaper and PDC presentation (slides) pretty much lay out Microsoft’s position on OMG’s MDA.

MDA is misnamed: it is not an architecture at all; it is a standardized approach to model-driven development based on abstraction of platform similarities. As promoted by the OMG, it does not address the broader issues involved in using integrated models, patterns, frameworks, and tools synergistically to support software product lines. Furthermore … the fact that the MDA is based on the use of the UML and MOF specifications restricts its usefulness even more. [Domain-Specific Modeling and Model Driven Architecture by Steve Cook, page 6]

Keith and Steve are architects in the VS.NET group, so this is straight from the horse’s mouth. Steve joined MS last year, leaving IBM where he had worked on (among other things, I’m sure) the UML 2.0 specification process. It’s interesting that someone who has worked on UML so extensively appears to have such a negative opinion of it’s direction.

Since “MDA” and “Model Driven Architecture” are registered trademarks of OMG (even though they are often used to refer to the generic approach of using models in the design process), Steve refers to Microsoft’s approach as “Domain-Specific Modeling” while Keith writes about “the idea of a family of inter-related, but individually specialized modeling languages the industry is calling domain-specific languages”. Here’s the short version of our vision / scope:

At Microsoft, we firmly believe that modeling is an increasingly important aspect of the software development process, and we will integrate support for modeling into forthcoming releases of Microsoft Visual Studio. We believe that it is essential to design modeling languages very carefully to suit the skills of their target users: we intend to delight our users by giving them an experience of modeling that is intuitive, agile, productive, and seamless. We are targeting our first modeling products at areas that we believe will give most immediate benefit to our customers. At the recent Microsoft Professional Developers’ conference, we announced modeling tools–we call them designers–that help the developer to design and deploy distributed service-oriented applications. [Domain-Specific Modeling and Model Driven Architecture by Steve Cook, page 5]

BTW, the tool we announced at PDC is code named “Whitehorse”. If you haven’t seen it, it’s described in our developer tools roadmap plus there’s a video about it on MSDN TV.

As a firm believer in UmlAsSketch approach, I’m very excited about what we’re doing in this space. It’s a very incremental approach. Whitehorse solves a very specific real-world problem while MDA is out trying to boil the ocean.

My Work Bookshelf

When I first started my new job, I decided to blog the books I brought in from home to populate my new office bookshelf. Well, 4 months in and I’ve only just brought in my second batch. Here’s what’s up there so far.