La modélisation chez MicrosoftUML, le bon ? XAML, la brute ? Les DSL, les truands ?Le duel ?!Xavier Warzee, ArchitecteEmail : xwarzee@acm.orgxavierw@microsoft.comBlog : http://warzee.frhttp://blogs.msdn.com/xavierwTwitter :	@xwarzeeMicrosoft France
Forum des Architectures Applicatives MicrosoftGroupe LinkedIn: http://bit.ly/archiappms
Le continuum d’usage des modèlesSource : http://blogs.msdn.com/b/stuart_kent/archive/2011/04/07/is-model-driven-development-feasible.aspx
XAML, la brute ?
ApprocheDéclarativeWPFWFWCFApplicationFrameworkUtilisation de XAML pour les ModèlesFrameworks configurables en XAML !Modèle
.NET est de plus en plus orienté modèleSupport de XAML .NET 3.0.NET 3.5.NET 4.0WPF/SilverlightRich XAML supportRich XAML supportRich XAML supportWFRich XAML supportXAML with code behindXAML with code behindWCFRich XAML supportNo XAML supportLimitedXAML support
Services WCF implémentés par un worflow WFWCF ServiceWF WorkflowWCF endpointExternalServiceClientWCF endpointExternalService
WCF/WF
XAML verbeux
« Designer graphique » pour rendre plus lisible le modèle XAML WCF/WF
UML, le bon ?
UML : une des attentes du marché !
Approche retenue
Support UML dans VS 2010> UltimateEdition
Support UML dans VS 2010> Ultimate Edition
Layer Diagram
UML Class Diagram
UML Use Case Diagram
UML Sequence Diagram
UML Component Diagram
UML Activity Diagram
Collaborations : OMG
Collaborations : Eclipse Fondation avec Soyatec
Les DSLs, les truands ?
Principes d’oslo
Oslo : la démarcheAnalysteArchDevIT ProOutils de modélisationLangage de modélisationRepositoryRuntimesBus de ServicesCloud
Architecture d'Oslo
Development DomainsTEXTUALDSLsVISUAL  DSLsRUNTIMES“Quadrant” Web Editor“MWeb”ASP.NETWEB“Quadrant” Service Editor“MService”WCF/WF (“Dublin”)SERVICES“Quadrant” Entity Editor“MEntity”EFENTITIES“Quadrant” Schema Editor“MSchema”SQLDATABASE“Quadrant” My Configured EditorMy DSLMy RuntimeCUSTOM
La language M
Simplifier la modélisation avec un dsl ?
Mon petit dsl
Un DSL pour qualifier les applications
Un DSL pour qualifier les applications
Du Mschema au référentiel
Du DSL au référentielQuadrantRéférentielDSL
« M » avec visual studio 2010Création du modèle
Schéma & données créés avec « M »
Application ASP.NET MVC générée avec « M »
Modélisation avec Quadrant
Modélisation avec Quadrant
Modélisation avec Quadrant
LightSwitch
Faciliter les développements pour tous
Faciliter les développements pour tous les développeurs 
Architecture supportée
Technologies supportées
Architecture de référence en 3 niveaux
Le méta-modèle
Exemple(instances)
Sous le capot*DataTierService TierPresentation TierSubmit PipelineQueriesControlsScreensMethodsData WorkspaceData WorkspaceWCF RIA ServicesWCF RIA ServicesOther …SQL ServerAzureSharePointSilverlight 4.0ASP.NET 4.0Desktop HostBrowser HostIIS 6.0/7.0
La philosophie de LightSwitch
L’extensibilité de LightSwitchLightSwitch repose sur MEFTout est extensibleLe shell, le thèmeLes contrôles graphiquesLes sources de donnéesLes types de données…
Extension du Shell
Configuration de déploiement
Données+Ecrans=   Applications métiers
LightSwitch en brefUn DSL décrivant :Des sources de données à consommerDes écrans qui les manipulentDu code métier personnalisé.Un designer Visual Studio en WPFUn générateur de codeUn framework (runtime) d’exécutionIntégré à la plateforme .NetVisual Studio et TFSFramework 4.0IIS
conclusion
Une approche globale
Merci
RessourcesArchitecture (Cloud, SOA, Enterprise Architecture, …)Portail : http://msdn.com/architectureThe Architecture Journal : http://www.architecturejournal.netWindows Communication Foundation Web http://msdn.microsoft.com/wcfWindows Workflow Foundation Webhttp://msdn.microsoft.com/wfOslo/Data/MPortail : http://msdn.com/dataForum : http://social.msdn.microsoft.com/Forums/en-US/oslo/threads/La spécification du langage « M » : http://msdn.microsoft.com/en-us/library/dd285282.aspx« Model-Driven SOA with “Oslo” »http://msdn.microsoft.com/en-us/architecture/aa699436.aspxLightSwitch Developer Centerhttp://msdn.microsoft.com/en-gb/lightswitch/LightSwitch Bloghttp://blogs.msdn.com/b/lightswitch/
Back slidesImages Charles Da Costahttp://chadacosta44.blogspot.com/2010/03/sergio-leone_8328.html

Journées NEPTUNE - Keynote Modélisation chez Microsoft

Notes de l'éditeur

  • #5 XAML : eXtensibleApplication MarkupLanguage
  • #6 WPF : XAML estutilisé pour la définition des interfaces graphiques en termes de composantsgraphiques, de data binding, de gestion des événements, …