Microsoft Moves DBMS into the VS Developer Mainstream
The second morning keynote at VSLive! San Francisco 2007 was delivered by Britt Johnston, director for data programmability within Microsoft's Database and Storage Platforms Group. Titled, "The Last and Next Decade in Data Management with the Microsoft Data Platform," the presentation gave the audience a sneak preview of data management capabilities provided by the next version of Visual Studio (VS), code named "Orcas." Some capabilities scheduled for even later versions were also demonstrated.
Johnston's prime focus was his group's effort to morph database management programming from an arcane specialty completed "over there somewhere" into tasks that can be completed with familiar VS tools.
Johnston outlined a vision of conceptual data programming that spanned product lines and the realms of programmers, system administrators and report authors. Johnston and his team are working to make it easier to map business concepts to data, make services consistent across different information sources, make storage models consistent and make it easier to extend legacy investments. These improvements are designed to help you create artifacts that can be easily shared.
He described Microsoft's vision for accomplishing this as moving from "database" to "data platform" based on four pillars: entities, SQL Server, rich services and VS. Entities take the focus from tables and rows to business concepts. SQL Server's evolution from CE to EE encompasses a simple programming model from device to cloud. Rich services enable searching, analyzing, integrating, reporting and synchronizing of all data. Orcas will let you maintain data project artifacts within VS Diagram.
Johnston drilled down to specifics. Some of his program managers demonstrated key new features of Orcas. These demonstrations were prepared in Redmond using video capture technology. Several members of the audience commented on the impressive clarity of these visuals.
The first video demonstrated how you can use Orcas' XML Editor in VS to open an XML file and generate a schema from it. The product manager leading the demo observed that the noise ratio in XML files is high, with many elements that don't even contain data. He showed how the Editor uses Intellisense to automate much of the work required to filter this noise. The Editor goes to the schema associated with a file and places the required elements in your buffer. You need only to provide some of the data and commit when done, without typing any extra items. The project manager also showed how the XML Editor provides you with instantaneous validation of the XML files.
Johnston asked the audience how many have tried XML Editor. A few attendees raised their hands. He then encouraged the audience to download the express version from MSDN, observing that "customers think they have to buy additional products, but they really don't."
Next up was a demonstration of another Orcas feature -- the XSLT Debugger. The product manager demonstrating this feature showed how you can set break points in the data files, as opposed to in the XSLT file. The Debugger also shows where the data is coming from, what the transformation is doing and the final result. The product manager highlighted not only standalone debugging but also how you can debug XSLT files from your project, just as with a VB or C# program.
The third feature demonstrated will not be available until Rosario ships -- or perhaps even later. It's an XSD designer. A simple search operation was displayed, highlighting features such as setting tic marks in the scrollbar to show results on an entire tree. A more complex operation was also shown that involved looking for the root elements of a schema, where you have an option to view in the designer the most likely elements.
The final demonstration featured an entity data models (EDM) Wizard that generates classes from the conceptual model. However, the portion of this demo that produced spontaneous audience applause was an EDM designer functionality that will not be available in the Orcas beta release. This hotly anticipated functionality is a database designer and an entity modeler. These features let you map a database to a model, keeping the model in sync. The project manager leading this demonstration created a user entity type from a user's table with drag-and-drop functionality, where glyphs showed mapping of entity type to table. Sophisticated graphical representations of entities and relationships enabled the user to work at the level of business relationships rather than programming abstractions. These visuals have been seen before in drawing programs, but this was the first time an audience had seen them working within a real development environment.
After the demonstrations, Johnston discussed framework innovation and ADO.NET. There are some new features that, in sum, provide a bridge between developers' ADO.NET expertise and the new data programming world:
- The first implementation of EDM
- A query language (Entity SQL)
- A new provider (Entity Client)
- A new object-rational mapping (ORM) stack over Entity Client
- LINQ support over entities
The ADO.NET Entity Framework will let you work with entity data at the conceptual level and separate applications from database schemas. LINQ to Entities lets you query data in terms of your programming language, and you'll be able to program databases using .NET objects, and create, read, update, and delete directly against the objects. Its overall goal is to minimize the time you spend programming in objects.
Johnston added that the provider model puts the expertise in the data source, enabling it to pick the right dialect instead of forcing developers to use the least denominator syntax across systems.
He promised that Microsoft will provide developers with an integrated development experience, with reusable artifacts that let you repurpose your investment in code across the report writing and security space. He announced that Microsoft is raising the level of abstraction by creating a "services ecosystem." Johnston ended on a promise that he'd keep the faith with traditional DBMS developers, including a continued commitment to ODBC, Java, PHP and others.
Lee Thé's first computer was a state-of-the-art unit with 48K RAM and a 1MHz processor. He has been writing and editing computer magazine articles since then, in between scuba diving trips. He's based in the San Francisco Bay Area.