1 / 53

Tout pour devenir un bon architecte

Tout pour devenir un bon architecte. Stéphane GOUDEAU, stephgou@microsoft.com Stève SFARTZ, ssfartz@microsoft.com Architectes en système d’information Microsoft FRANCE. WebCast Live. 1h pour s’initier au design d’architectures Site de commerce électronique

Antony
Download Presentation

Tout pour devenir un bon architecte

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tout pour devenir un bon architecte Stéphane GOUDEAU, stephgou@microsoft.com Stève SFARTZ, ssfartz@microsoft.com Architectes en système d’information Microsoft FRANCE

  2. WebCast Live • 1h pour s’initier au design d’architectures • Site de commerce électronique • Un client DinnerNowCompagnie • Une SSII IntegrerViteEtBien • Stève, l’avant-vente • Stéphane, l’architecte • Plus d’informationssurl’architecture • www.microsoft.com/france/msdn/architects

  3. Le projet DinnerNow • Proposer un service en ligne de commande de repasdepuisplusieurs restaurants • Un site Web de saisie de commandes • Le carnet de commandes accessible par les restaurateurs • Un suivi en ligne des commandes clients • Les adresses des plats à réceptionner et à déposer pour les livreurs • Projet de type startup • Inonder le marchéfrançais, puis international • Délaisserrés et forte évolutivité

  4. Client : Saisiedescommandes • Site marchand grand public • Interface intuitive • Commande en 5 clicks • Effectuerunesélection de plats • Multi-restaurants • Recherchelocalisée • Paiement en ligne V2 • Fidélisation des clients

  5. Client : Saisiedescommandes

  6. Restaurant : Gestion des commandes • Visualisation du carnet de commande • Etat de chaquecommande • Niveaud’urgence des commandes • Préciserl’avancement des commandes(Emporter / Annuler) • Statistiques • Nombre de commandessur la semaine • Actus de la centrale V2 Synchronisation avec les back-offices des grandeschaînes

  7. Restaurant : Gestion des commandes

  8. Client : Suivi de sa commande • Etatd’avancement de la préparation • Temps réel • Heure de livraison • Adresse de livraison V2 • Historique • Commandes / Plats / Restaurants • Communauté • Notation • Lieuxfavoris

  9. Client : Suivi de sa commande

  10. Livreur : Détail des commandes • Détails des livraisons • Lieu de réception • Lieu de livraison V2 • Géo-Localisation • Historique des livraisons

  11. Récapitulons • Client Web Riche (RIA) • Gestion de panier • Sécurité : authentification, paiement en ligne

  12. Récapitulons • Client Web Riche (RIA) • Gestion de panier • Sécurité : authentification, paiement en ligne • Client Windows (RDA, Smart Client) • Géo-localisation • Flux RSS • Bonus: Gestion d’un mode offline

  13. Récapitulons • Client Web Riche (RIA) • Gestion de panier • Sécurité : authentification, paiement en ligne • Client Windows (RDA, Smart Client) • Géo-localisation • Flux RSS • Bonus: Gestion d’un mode offline • Client Riche (RIA ou RDA) • Géo-Localisation • FréquenceRafraichissement Importante • (~ 60s)

  14. Récapitulons • Client Web Riche (RIA) • Gestion de panier • Sécurité : authentification, paiement en ligne • Client Windows (RDA, Smart Client) • Géo-localisation • Flux RSS • Bonus: Gestion d’un mode offline • Client Riche (RIA ou RDA) • Géo-Localisation • FréquenceRafraichissement Importante (~ 60s) • Client Mobile (RMA, Mobile Client) • Géo-Localisation • Connectivité Web

  15. Synthèse des besoins techniques • Application multi-canal • Gestion de workflow • Préparation de la commande – Séquentiel - Algorithmique • Transmission vers les restaurants • Traiter les commandes en parallèle • Gestion des commandes – Automate à états finis • Modification des états : en préparation, annulée, à emporter, livrée • Dimension supervision • Disponibilité technique de bout en bout • Visibilité sur l’activité • Commandes en cours…

  16. Choix d’architecture applicative • SOA – Architecture Orientée Services • Flexibilité des échanges • Web (HTTP), TCP (intranet), MSMQ (Asynchrone) • Garanties de montée en charge • Scalabilité du Web (protocole HTTP) • Supervision • Disponibilité des services • Archiver les échanges de messages • Support du multi-canal • Gestion de la sécurité, de la robustesse, des transactions sur tous les transports

  17. Architecture SOA Sécurité et gestion des identités Supervision et Gouvernance Conception et Développement Consommation Contrôle de l’utilisateur Composition Interaction avec l’utilisateur Présentation (navigation, contrôles) Collaboratif Aggrégation de services Processus Métier Gestion des données Véhiculer les messages Composition Logique Métier transactionnelle Services de connectivité Exposition Systèmesexistants, legacy

  18. Architecture logicielle HTTP Application Web RIA TCP ou MSMQ / SOAP RDA Métier DinnerNowDB RDA Services HTTP SOAP WS-* Moteur de Workflow wfDB RMA Supervision

  19. Quelles sont les technologies Microsoft candidates ?

  20. Les technologies candidates • Commerce Serveur 2007

  21. Les technologies candidates • Commerce Serveur 2007 • Chiffrage en cours par une autre équipe • Une alternative est nécessaire car le produit n’est pas encore référencé chez le client

  22. Business Intelligence Collaboration BusinessProcesses Portal Content Management Search Les technologies candidates • Commerce Serveur 2007 • Office SharePoint Serveur (MOSS) 2007 Windows SharePoint Services“V3”

  23. MOSS 2007 Collaboration BusinessProcesses Office Serveur BI Search CMS Services Systèmes Modèle de site Sécurité Stockage Topologie APIs Management ASP.NET V2 Web Parts | Personnalisation | Master Pages | Framework (Navigation, Sécurité…) Services Base de données Services de Recherche Services de Workflow Système d’exploitation

  24. Les technologies candidates • Commerce Serveur 2007 • Office SharePoint Serveur (MOSS) 2007 • Pas de besoin de gestion de contenus (CMS) • Pas de personnalisation sur V1 • Pas de template pour l’eCommerce

  25. Les technologies candidates • Commerce Serveur 2007 • Office SharePoint Serveur (MOSS) 2007 • Développement spécifique • A partir d’un open source • StarterKit, DotNetNuke • A écarter car ces frameworks sont très orientés Web, nécessité de gérer du multi-canal

  26. Les technologies candidates • Commerce Serveur 2007 • Office SharePoint Serveur (MOSS) 2007 • Développement spécifique • A partir d’un open source • StarterKit, DotNetNuke • A écarter car besoins multi-canal • Spécifique • Architecture applicative • Choix d’implémentation • Frameworks, Application Blocks

  27. Architecture applicative MSDN Pattern & Practices msdn.microsoft.com/practices • Software Factories • Guide de référence • Application Blocks

  28. Smart Client Interface utilisateur Service web Logique métier RDA - Smart Client Server Web Client Deploiement Smart Client Logique métier

  29. ASP.NET Application Pages Affichage Initial UI + Comportement Données UI Behavior (Managed Code) Mise à jour de l’UI + Comportement ou données ASP.NET Atlas Script Framework Page Framework, Server Controls Component/UI Framework, Controls Application Services Client Application Services ASP.NET Ajax Extensions 1.0Modèle de programmation Serveur Browser “Application” Presentation (HTML/CSS)

  30. Données Données ASP.NET Atlas Script Framework Page Framework, Server Controls Component/UI Framework, Controls Application Services Client Application Services ASP.NET Ajax Extensions 1.0Modèle de programmation client ASP.NET Application Browser “Application” Presentation (HTML/CSS) Pages Rendu Initial (UI + Comportement) UI Behavior (Managed Code) “Ajax” Service Proxies UI Behavior (Script) Web Services

  31. HTM,Script, Balisage Atlas ASP.NET Ajax Proxiesde service Atlas ServicesWeb (ASMX/WCF) Bibliothèque de script et composants Microsoft Ajax Contrôles,composants ExtensionsserveurASP.NETAjax Bridge deservicesd'application ModèledecomposantsetinfrastructureUI ContrôlesserveurAtlas ServicesAjax Client Bridge deservicesWeb Bibliothèquedeclassesdebase Librairie Microsoft Ajax InfrastructureserveurAjax Banquelocale Scriptprincipal ASP.NET2.0 Navigateur Intégration Infrast.page,contrôlesserveur Servicesd'application Compat.navigateurs ASP.NET Ajax Extensions 1.0

  32. Windows Mobile 6 SDK • Nouvel Emulateur • Simulation de l’ActiveSync • Add-in Visual Studio

  33. Les gadgets Vista Connexion avec le Web Sidebar qui héberge les gadgets Utilitaires Flux RSS La galerie de gadgets Applications Métier

  34. Message BizTalk Server Moteur de règles métier Port de réception Port d’émission Orchestration Adapta-teur Adap- tateur Serveur Pipeline d’envoi Pipeline de réception Serveur Serveur Stockage persistent des messages

  35. Positionnement BizTalk Serveur BizTalk Server • BizTalk • Un produit • Pour des scénarios B2B, EAI, BPM • Comporte des outils de déploiement, suivi, montée en charge, etc. Accelerators Business Activity Monitor And Admin Tools Design Tools Workflow Orchestration Messaging Transformation • Une prochaine version intègrera WF dans le moteur d’orchestrations. Adapters • Workflow Framework • Une API .Net 3.0 • Scénarios très divers • Permet d’ajouter des fonctionnalités de workflow à des applications existantes. • Livré sans infrastructure d’hébergement : à vous de la créer Visual Studio Designer .NET 3.0 Windows Workflow Foundation

  36. Choix BizTalk Serveur • Bien adapté à DinnerNow • WorkFlow • Supervision • Etat de santé : HATS • Suivi d’activités : BAM • Evolutivité • Nos experts sont occupés • Choix WorkflowFoundation pour le prototype

  37. Windows WorkflowFoundation

  38. Workflow Séquentiel Machine à Etats Activités conditionnées par des règles Event State1 Step1 Step1 Rule1 State2 Event L’ordre de traitement est décrit par une structure séquentielle Data Step2 Step2 Rule2 EX: Vérification d’inventaire EX: Validation par manager Les évènements externes conditionnent l’ordre de traitement Les règles et les données conditionnent l’ordre de traitement Différents types de workfow Un ensemble d’activités qui coordonnent les personnes et les processus logiciels... Machine à états Workflow séquentiel

  39. Windows Communication Foundation .NET Remoting ASMX Interopérabilité avec d’autres plateformes Extensibilité Mode binaire Transaction Performance Programmation orientée Message Protocoles WS-* Enterprise Services System.Messaging WSE

  40. Ajout de comportements A A A B B B C C C C B A Client Service Bv Bv Adresse Où? « Binding » Comment? Contrat Quoi? Endpoint

  41. Maquette • Visual Studio 2008 • .Net 3.5 • SQL Express

  42. Quelquessemaines plus tard

  43. Choix d’implémentation • User Expérience • Smart Client WPF & Web Client ASP.Net AJAX • Ergonomie Web • Gadget Vista • Innovation • Mobile Client .Net Compact • Support des Services Web • SOA & Workflow • WCF - Windows Communication Foundation • Evolutivité des bindings • WF - WorkflowFoundation • Gestion du cycle de vie et persistance

  44. Choix d’implémentation • Données • Persistance Linq • Flexibilité • Sécurité • Authentification & Autorisation ASP.Net • Brique prête à l’emploi • CardSpace • Souplesse pour l’utilisateur

  45. Choix d’implémentation • Management • WMI - Windows Management Infrastructure • Infrastructure scalable et ouverture de gestion des évènements de managemenrt • MMC SnapIn – Management Console • Evolution possible vers des outils de supervision type System Center • PowerShell • Scripting, Pilotage par les équipes d’exploitation

  46. DinnerNow.NETArchitecture v1

  47. Démonstration

More Related