Architecting Oslo
From all accounts, Microsoft has put a lot of work into the Architecture Edition of Visual Studio (VS) 2010 Team System. Application modeling is an integral part of the application lifecycle with new features such Sequence Diagram Reverse Engineering and the Architect Explorer for analyzing the relationships between modeling artifacts. The upcoming release also adds support for five UML diagrams, beyond the UML support in Visio.
With VS 2010 Beta 1 around the corner -- most estimates put Beta 1 in the Tech-Ed timeframe -- how does "Oslo," the new model-driven development platform previewed at the Professional Developers Conference, fit with the app modeling tools in VS 2010 Architecture Edition and the existing DSL Toolkit?
Earlier this month, Microsoft refreshed its January "Oslo" community technology preview, fixing some DLLs. The Oslo SDK January 2009 CTP offered bug fixes and added more features related to the "M" language (MGraph, MSchema and MGrammar). At MIX last week, the Oslo team released the source code to MUrl, an M-based textual DSL and runtime for HTTP services.
In a February RDN Express blog, "M Is for Re-Modeling," I asked about the problems Oslo is trying to solve. I was happy to hear from Kris Horrocks, Microsoft's senior product manager for the developer platform, who offered insight into the company's view of model-driven development and how Oslo fits into that vision.
RDN: What's new in the January CTP?
Horrocks: We have taken a lot of time since PDC to really stabilize this preview and then we've done a fair number of modifications and updates to the "M" programming language based on the community review we've had so far. There is actually a list of all the specific language constructs that are now supported and so forth. The other part that is updated in the CTP is within our repository. There's a greater number of out of the box models already in the repository compared to what was there at PDC.
Is "M" considered one language or multiple languages?
We're in the process of transitioning to talk about it as one language. Some of the feedback that we've gotten from PDC was that trying to talk about it as three different languages was unnecessarily complex. So at PDC we were referring to MGraph, MGrammar and MSchema and what we have chosen to do moving forward is to really just refer to those as three capabilities of the "M" language. And we found the technical reality is...that those three capabilities are merging to all be available through a common language.
Have you made any other changes since PDC?
It is mostly stability, language enhancements and additional content in a repository. There are also improvements in our Quadrant development tool, as well. ("Quadrant" was included in the VPC distributed to PDC attendees. However, Microsoft has not released "Quadrant" in any of the CTPs available for download on MSDN.)
How is Quadrant different than the graphical DSL tools that are in Visual Studio?
It is technically a separate shell. We are working in close concert with our Visual Studio team...to understand what the experience needs to be for our customers who are doing some modeling in the DSL Toolkit and some in Oslo.
Is Oslo expected to be part of VS 2010?
Yeah. I think a great way to think about it is -- are you familiar with the project we used to refer to as WinFx? So there was a while when we were referring to WinFx as a codename that basically became Windows Communication Foundation, Workflow Foundation and Presentation Foundation. And then as we got closer to actually shipping, we made some decisions about which part of our existing developer platform to release those in and in that case, it was the .NET Framework.
We fully expect the Olso capabilities to undergo a similar process where today we refer to these three capabilities that are provided by the repository -- the repository, the language, the quadrant -- as Oslo, but as we get closer to shipping our customers should expect that these capabilities will flow into their existing development platform and tools.
And that timeframe is the VS 2010 timeframe?
Well, it depends. Right now we are still getting feedback. One of the things with Oslo that we are trying to do is trying to be very early with our engagement with the community. We want to make sure that we get all the feedback that we possibly can about all of these components. And then based on their feedback, we'll chose the right ship vehicle...
Read the rest of the Q&A here. Are you testing "Oslo"? What are your thoughts on Microsoft's approach to domain modeling and application development? Comment below or drop me a line at [email protected].
Posted by Kathleen Richards on 03/24/2009