The Origins of Microsoft's Oslo Software Modeling Platform
Microsoft's data-centric platform, which is aimed at empowering nondevelopers to build distributed applications, has roots in some very familiar apps.Microsoft set out to create Oslo, its general-purpose software modeling platform, back in 2003 in an attempt to make software development more accessible to more people by enabling them to create applications from models or diagrams.
The initial goal was to deliver a visual tool for creating models along with a repository to store the models and metadata. But the need for a new declarative programming language emerged. That language was code-named D, and Microsoft will deliver an early look at the language as well as the tool and the repository next month at its Professional Developers Conference.
Oslo is aimed at empowering nondevelopers to build distributed applications. The initial version of Oslo won't let a complete novice build applications, but it will ease development. It will also, hopes Microsoft, broaden the developer base. "The business analyst is an under-served role, and a good opportunity for the product," said Brad Lovering, a Microsoft technical fellow leading the Oslo effort. Don Box, a partner architect at CSD who is working on the Oslo language stack, added, "We're trying to make it simple to get an idea out of your brain and onto a hard disk." Box said that Oslo is designed to capture people's ideas, requirements and hopes for software, "so that we can then do all kinds of processing on top of it. But we're really trying to turn the software development problem into a data design-that's the simplest way to talk about what we're doing. And so part of that premise is making it easy for people to interact with that data. And one way to interact with data is through visualizations and diagrammatic things, box and line designers, all kinds of charts." Lovering said the Oslo tool is novel with respect to development tools in that it will feel familiar to the masses. "If you're [a Microsoft] Access user, it will be more familiar to you, let me put it that way," he said. Indeed, said Lovering, the tool is basically an interactive database development tool. "So, if you kind of think of Access, [Microsoft] Excel, ..." that is an approximation of the tool, Lovering said. However, "you have to be a little bit careful with that comparison because it could be misleading. I'm trying to give you sort of a general feeling of the center; it is not [Access and Excel], but those are the best approximations I have if you haven't experienced the tool." David Chappell, principal of David Chappell & Associates, has had early access to some of the Oslo technologies. "It's a tool for working with data and creating data," he said. The tool enables users to capture domain knowledge in domain-specific views, said Lovering. And the tool also will be useful for more advanced diagramming, such as enabling the development of BPMN (business process modeling notification) workflows and UML (Unified Modeling Language) services, he added.