U bent hier:
  1. Home
  2. Nieuws
  3. Interviews
  4. Bekijk


Achtergrond

Asymmetrische cryptografie, een onevenredige last voor de CPU

Asymmetrische of publieke-sleutelcryptografie kan een zware wissel trekken op de processor, zowel op het vlak van berekeningen als qua...

Column

De economische architectuur

Beste lezers, dit is mijn laatste reguliere column. Ik heb de afgelopen jaren geschreven over intelligente pleisters en punaises, waar we nu het Holst Centre voor hebben. Ik heb geschreven over de...

Interview

Afgeslankt NXP klimt uit zwart gat

Het waren pijnlijke jaren, maar het gaat weer de goede kant op met zijn bedrijf, vertelt CTO René Penning de Vries van NXP. Een gesprek...

Interview met Chris Sells

Microsoft mengt zich in modellenwereld

11 augustus 2009

Onder de codenaam ‘Oslo’ sleutelt Microsoft aan een eigen platform voor modelgebaseerde ontwikkeling. Afgelopen april presenteerde programmamanager Chris Sells het raamwerk in aanbouw voor een uitpuilende zaal tijdens de Hot-or-Not-lezingencyclus van Sioux. De ruim honderdtwintig toehoorders, voor het overgrote deel ontwikkelaars uit de Nederlandse hightech, bestempelden de Redmondse aanpak vrijwel unaniem (98 procent) als veelbelovend. De concurrentie in de modellenwereld is gewaarschuwd.

‘Een van de belangrijkste trends in applicatieontwikkeling is modelleren, en wij investeren daar fors in’, zei Bill Gates vorig jaar juni in zijn keynote op de Microsoft TechEd Developers-conferentie. ‘Wij hebben een modelgedreven ontwikkelplatform, dat we de codenaam ‘Oslo’ hebben gegeven. In specifieke domeinen als dataontwerp in SQL, proces-activiteiten in Biztalk of softwaremanagement in System Center zien we modellen opkomen. Al die domeinen zouden we willen onderbrengen in een en dezelfde modelruimte. Daarmee hoeven mensen hun eigen domeinen niet langer in isolatie te ontwikkelen. Dat is waar het bij Oslo om gaat.’

Hoofdelementen van het Oslo-platform zijn een modelleertaal, codenaam ‘M’, een opslagplaats voor de modellen, de Repository, en de visualisatietool Quadrant. Het bouwproces begint bij de ontwikkelaar, die M gebruikt om een domeinspecifieke taal (domain-specific language, DSL) te maken voor het beoogde toepassingsgebied. Vervolgens modelleert de domeinexpert met deze DSL de gewenste applicatie. De modellen die dit oplevert, bewaart Oslo in de Repository, op dit moment een SQL Server-database. Ten slotte is het weer de beurt aan de ontwikkelaar om de runtime te bouwen. Deze runtime is niks anders dan een programma dat uit de database leest. In Quadrant zijn visuele DSL’s te ontwerpen.

‘Van probleem naar oplossing lopen we vaak aan tegen een communicatiebarrière’, stelt Chris Sells. De programmamanager van Microsofts Connected Systems-divisie kwam de modelleeraanpak onlangs toelichten bij Sioux in Eindhoven. ‘De domeinexpert beschrijft het toepassingsgebied aan de software-engineer. Vervolgens schrijft die er requirements voor, die hij onderbrengt in een specificatie. Voor de domeinexpert is dat document echter nauwelijks te begrijpen. De kloof wordt nog groter wanneer we van specs naar code gaan.’

‘Oslo maakt het mogelijk de applicatieontwikkeling met een orde van grootte te versnellen’, stelt Chris Sells van Microsoft.

‘Bij Oslo is de documentatie leesbaar door en begrijpelijk voor ontwikkelaars én domeinexperts, waardoor zij het er eenvoudig over eens kunnen worden’, vervolgt Sells. ‘Bovendien worden de modeldata onderdeel van het draaiende systeem. De modellen zijn de drijvende kracht van de applicatie en als er veranderingen nodig zijn, hoeven we alleen die modellen aan te passen. Dit alles maakt het mogelijk om de applicatieontwikkeling met een orde van grootte te versnellen.’

Ook lichtgewicht

M omvat drie verschillende talen: MSchema, MGraph en MGrammar. Het laatste formalisme kunnen ontwikkelaars gebruiken om eigen DSL’s te definiëren. Hiermee bouwen domeinexperts in MSchema vervolgens de -applicatiemodellen. De (C-gebaseerde) syntax maakt de modellen heel natuurlijk te projecteren op de SQL-taal, de de facto standaard in databaseland, die in Oslo ten grondslag ligt aan de gegevensverwerking. In MGraph zijn de modellen ten slotte uit te breiden met concrete waardes. Daarmee ontstaat een implementatie van de DSL.

‘In MSchema zijn entiteiten en hun onderlinge relaties te beschrijven, zoals klassen dat doen in een objectgeoriënteerde programmeertaal, klassediagrammen in UML of tabellen in SQL’, licht Sells toe. ‘Met MGraph zijn instanties te creëren van de data, vergelijkbaar met instanties van een objectklasse. Dit formalisme is prima voor programmeurs, maar niet zo voor domeinexperts. MGrammar biedt de mogelijkheid om eigen talen te definiëren die de vertaalslag maken naar een formaat dat domeinexperts kunnen begrijpen.’

De omgeving slaat de M-modeldata op in de Repository, die de vorm heeft van een SQL Server-database. Deze bewaarbak biedt onder meer beveiliging, mogelijkheden voor auditing, globalisatie/lokalisatie en uitrol, en versiebeheer van modelschema’s. Sells: ‘Vanaf het moment dat de modeldata in de Repository zitten, is het alleen nog maar SQL. De uiteindelijke applicatieruntimes draaien op de data die ze via SQL-query’s uit de database lezen. -Daarvoor kunnen ze elke denkbare -technologie voor gegevenstoegang gebruiken, bijvoorbeeld Access, Ado.Net, Entity Framework, Excel of ODBC.’

Quadrant is een gereedschap om met de inhoud van de Repository te interageren. In een grafische omgeving kunnen gebruikers modellen bouwen en modeldata bewerken. ‘De M-modellen hebben de vorm van tekst, van code’, verklaart Sells. ‘Quadrant giet de domeinrepresentaties in een visuele DSL, die ontwikkelaars én domeinexperts kunnen begrijpen. De omgeving biedt ook een editor om de data te bewerken.’

Met een SQL Server-database lijkt Oslo nog te zwaar voor embedded toepassingen. Sells denkt daar anders over. ‘Als je niet heel erg op de kleintjes hoeft te letten, bijvoorbeeld als je toch al een database hebt draaien, kan het heel goed. Bovendien is het platform heel lichtgewicht te maken door de modeldata in XML uit de Repository te trekken en ze zo in je embedded systeem te gebruiken.’

Op 20 april sprak Chris Sells in Eindhoven tijdens de Hot-or-Not-lezingencyclus van Sioux, waarmee het bedrijf de hightechgemeenschap bewust wil maken van nieuwe ontwikkelingen in het vakgebied die claimen de productiviteit te verbeteren. De cyclus gaat verder met een goeroepresentatie over softwarebeveiliging. Meer informatie is te vinden op: www.sioux.eu/hotornot.

Terug naar overzicht



© Bits & Chips | Deze pagina op internet: http://www.bits-chips.nl/nieuws/interviews/bekijk/artikel/microsoft-mengt-zich-in-modellenwerled.html