Developing the Microsoft Business Framework


Hello, World!

I am a Development Lead on the Microsoft Business Framework, with responsibilities for XmlSerialization, Web Services and the Web Service Designer.  I have opinions on almost every topic going (I even have opinions on “not having an opinion”).  I have been at Microsoft for a little over 4 years and intend to never leave.  As a Developer I tend to think and talk about features in the small;  I will leave it to my program management and architecture colleagues to paint the larger picture for you.

We are currently working on version 1.0 of the Business Framework.  It will offer a collection of class libraries and a set of Visual Studio hosted development tools.  The class libraries support the creation and deployment of an object layer around a set of database tables that we call Business Entities and a means of assigning Business Logic to the appropriate tier in your architecture Business Operations and Collaborations.  Obviously MBF does much more than that but in the main the extra features support and extend the scenarios enabled by Entities, Operations and Collaborations.

The following list of features supported by our runtime is far from exhaustive but may give you a flavour of what is coming:




Runtime Metadata service

Object - Data Mapping

Data Location policy

Role based security

Service Binding

Service Activation and Remoting




Serialization/Deserialization of Entities

Web Service integration

XSD Schema generation from a graph of Entities

Brokered Events

Administration / Configuration tools

Reliable Operations

Business Intelligence

Business Intelligence Programing model



The following lists the tools and features which we will provide as an add-in to Visual Studio again it's not exhaustive and the names will probably change closer to release.

Business Entity Designer

Web Service Designer

Component editor

Visual Studio Project Integration

Code generation

Metadata explorer

Metadata editor

Business Intelligence Wizard

Map designer

The Microsoft Business Framework is 100% managed code, written from the ground up in C# using the Whidbey toolset.  We sit on top of a host of new technologies the database persistence is ObjectSpace, the Visual Studio modelling tools are written on top of Whitehorse, the Business Intelligence technology works against Yukon, the Mbf Serializer integrates seemlessly with the .Net Framework Xml Serialization stack and Business Operations are exposed as ASP.Net Web Services.

One of the more interesting and challenging aspects of our team is that it is geographically diverse.  This causes us interesting challenges that are new to most of us.  I will undoubtedly mention this fact again in the future since it has an important fact on how we develop.  There are four locations where MBF is developed - by developed I mean features are designed and coded.  The four locations are Redmond, Fargo - North Dakota, Findlay - Ohio and Copenhagen - Denmark (although it seems silly to qualify Wonderfull ... Wonderfull ... Copenhagen).  What this means is that scheduling tele-conferences between locations is pretty tricky, Copenhagen goes home before Redmond gets to work; when it is required to tele-conference the Redmond members get in early and the Copenhagen attendees stay late.

I am most closely involved in the Web Services integration, the Web Services Designer, Xml Serialization and Web Services and tangentially involved with the Entity Designer.  I will mainly use this column to discuss these features as well as general MBF programming model issues and what life is like at Microsoft.

If there is any topic you would like to discuss feel free to ask.  If I don't have an opinion - and you already know that I will - I will try to corral someone who really understands and get them to help out.

My next post will describe how we integrate with the .Net Framework serializer to enable Entity serialization.  Hopefully it will include some code if I can remember how to program.



SDE Lead - MBF Web Services, Redmond

This posting is provided "AS IS" with no warranties, and confers no rights. Use of included script samples are subject to the terms specified at:"