Models Everywhere

Various considerations about Model Driven Engineering

Archive for the ‘Microsoft’ Category

Bits of History (Uml is not UML)

Posted by jbezivin on November 26, 2010

OIM: One initial Microsoft modeling project

Among the multiple attempts of Microsoft to propose a general modeling approach, the Uml proposal is probably one of the less known. It bears nevertheless a lot of interesting lessons. It is part of OIM (Open Information model).

Uml is not UML. Uml (capital U, small m, small l) was the Microsoft equivalent of the OMG UML 1.0. It was a very interesting Microsoft tentative to provide a coordinated set of Modeling Languages. The simplied chart shows the main organization:

These DSLs corresponds to the following subject areas:

  • Umx Uml Extension Model. A set of generic extensions to the Uml model, and a realization of some of the predefined stereotypes in UML v.1.0.
  • Dtm Data Type Model. A set of Uml model extensions that supply numerous common data types.
  • Cde Component Description Model. A set of generic component-related Uml model extensions describing run-time (executable) components and their specifications.
  • Com COM (Component Object Model) Model. A set of COM-specific extensions to the Cde and Dtm models.
  • Gen Generic Model. A set of general-purpose interfaces, relevant across diverse information models.
  • Dbm Database Model. A set of extensions to the Uml model covering generic database concepts.
  • Sql SQL Server Model. A set of SQL Server-specific extensions to the Dbm model.
  • Ocl Oracle Model. A set of Oracle-specific extensions to the Dbm model.
  • Db2 DB2 Model. A set of DB2-specific extensions to the Dbm model.
  • Ifx Informix Model. A set of Informix-specific extensions to the Dbm model.
  • Tfm Database Transformation Model. Describes transformations for moving data between databases.
  • Olp OLAP Model. An extension of the Dbm model describing multidimensional databases.
  • Sim Semantic Model. An extension of the Dbm model that enables users to interact with database data without learning data manipulation languages.

The global organization could be described as follows:

As we see, the role of the OMG MOF was taken by the RTIM.

RTIM Repository Type Information Model  is the metametamodel – the language in which the other information models (or metamodels) are defined.

The organization of these various DSLs was intended to facilitate the global handling of information systems at the modeling level:

Let’s do a small zoom on the Cde metamodel. This more or less corresponds to the OMG CCM (Corba Model of Component), a 600+ pages recommendation document:

Among the interesting properties of this metamodel, an explicit representation of pre and post conditions:

Another interesting property of this metamodel is the management of events:

Cde defines a specific interface called ICdeEventSourceSpec for objects that are the source of events. This allows both component specifications, interfaces, and other objects to be event sources by supporting this interface. In Com, it is component specifications (Com class specifications) that are event sources. In Corba, interfaces are event sources.

The Cde covers one particular event scheme, where an event is represented as an operation on an interface, and where the parameters of the operation provide data about the event. Many events can be defined on a single interface. The events can be raised in different ways:

  • In push models the interface defining the events is implemented on different objects than the object raising the event. The raiser then invokes an operation on those other objects as a means of signaling the event. Such consumers will have registered interest with the raiser in component model specific ways.
  • In pull models the interface defining the events is implemented by the event raiser. A consumer invokes an operation on that interface to poll for the event.

There are still many references to the Microsoft repository System, like the following:

The standard serialization format for models is not XMI, but XIF (for XML Interchange Format):

Of particular interest to many of us also is the Transformation Metamodel TFM:

Of course, one name is behind most of these activities: Phil Bernstein, the leader of the model management group:

So the interesting question is “what happened to this OIM project?”.  Dit it get discarded like the recent Oslo project?

What I remember is the following, but I may be wrong:

  1. The OIM is quite successful. Because of the strong database bias and high skills of the group, the underlying model repository scales up much better than current modern modeling systems.
  2. Microsoft defines a strategy consisting in putting the OIM initiative in the open by donating all the technology to the MetaData Coalition, a non for profit organization
  3. The MetaData Coalition accepts the Microsoft donation
  4. The MetaData Coalition and the OMG establish cooperative relationship [April 20, 1999].
  5. The Metadata coalition merges into the OMG and discontinue independent operation [September 25, 2000]

This story of the first attempted Microsoft approach to modeling is partially recorded at:

Interesting reading:

Posted in Microsoft | Leave a Comment »

MDDAY’2010 going to be a big success again

Posted by jbezivin on November 23, 2010

MDDAY’2010 leading for a new success in Paris on Thursday


Model Driven Day, the french main meeting on Model Driven Engineering

Each european country has its own specificities when it comes to adopting new technologies and new practices in the IT domain. It may be interesting to compare how model driven engineering (MDE, MDA, MDD, DDD, etc.) has been gaining recognition in various parts of the world in the last ten years. If we look at different indicators (events, companies claiming to work on the subject, participants to international conference like Eclipse Summit Europe, etc.), several countries are quite active in the domain. I will give special recognition to Germany and Spain, but UK, France, Austria, or Netherlands are also quite active. What is remarkable is that the form that the deployment of software modeling practices takes in different places are not always the same. In Germany for example it seems that MDE applied to embedded systems is a priority and in France the application of MDE to information systems is more apparent although there are also some interesting projects in embedded systems. As a trace of this, a typical french event is taking place this week in Paris, the Model Driven Day (MDDay). This year like last year, registrations are closed and they are waiting for a record number of participants. The meeting will take place this Thursday at the new Microsoft Conference Center in Issy-les-Moulineaux. It is organized by several french companies that have been active in MDE in the past years:

The program will start with a guest talk by Steve Cook and terminate with a panel with Laurent Bossavit, Jean-Pierre Mevel, Xavier Warzee, Philippe Desfray and Pascal Roques, all leading people in France on software modeling. Needless to say that everybody is eagerly waiting for Steve Cook introductory presentation. The emphasis this year is on the synergy between agile and model driven approaches. But there will also be a presentation of the overall Microsoft approaches to modeling.

The interesting format of this one-day conference on MDE is that companies involved in software modeling will present one aspect of their skills and will have one of their customer testifying about the deployment of MDE.

This year the following talks will take place:

  • Compatibility between MDE and agility (on the path of Domain Driven Design) by Object Direct and ADIXE.
  • Organization of an important Model Driven Project by Objecteering and DCNS
  • MDE at the service of Agility by W4 and the state of Geneva
  • Reconciliating software developers with real Model Driven approaches MIA-Software and the BRIT Air company
  • Framework interoperability in large system engineering by SODIUS and EADS
  • Agile MDA, pragmatic and executable, by SoftFluent and SPEIG
  • A survey of Microsoft modeling initiatives by Microsoft and SOGETI
  • Model-based Agile development with PMF for Windows Phone 7 applications by Microsoft and SOGETI
  • Migration of Statefull Fat-Client applications ona JEE/SpringWebFlowJSF stack at a central bank by JAXIO and Banque de France
  • Building a registry for insurance products by the WYMIWYG approach (What You Modelize Is What You Get) by OBEO and CAP GEMINI
  • Examples of MDA modernization of Applications – Case studies COBOL2J2EE and Natstar2J2EE with BluAge Reverse by BluAge and the SOPRA Group.

This MDDay even has been organized since 2007 and all presentations from previous years are available in ZIP/PDF or RAR/PDF format (unfortunately most of them in french):

Due to a big success, the registration are closed, but one may ask to be added to the waiting list by mail to info@mdday.fr

Posted in MDA, MDE, Microsoft | 1 Comment »

 
Follow

Get every new post delivered to your Inbox.