Академический Документы
Профессиональный Документы
Культура Документы
DISCLAIMER : ces propos n’engagent que la responsabilité de son auteur et en aucun cas Microsoft
France. Ce document est appelé à évoluer au rythme des annonces Microsoft, vous tenez entre les
mains la version du 4 avril 2008.
L’approche Services est animée des mêmes intentions mais à une échelle plus globale : celle des
applications distribuées en Entreprise et au-delà. Il s’agit de capitaliser et donc de développer plus
rapidement des applications en s’appuyant sur des briques prédéfinies et indépendantes des
technologies. Le paradigme de programmation n’est plus l’Objet mais le Message dont le format
(SOAP, XML, JSON…) et le protocole - Orienté Opération (RPC) ou Orienté Ressource (REST, AtomPub)
- doivent s’adapter au consommateur.
- Les « Building Blocks » sont à destination des développeurs. Ils constituent des fondations
pour bâtir des services de plus haut niveau, notamment l’authentification Windows Live ID, le
stockage dans les nuages - SQL Server Data Services, et l’Internet Service Bus - BizTalk
Services,
- Les Services dits « Attachés » apportent de la valeur ajoutée à des Logiciels utilisés par
l’Entreprise. Ils sont utilisés principalement par des utilisateurs finaux, à l’instar des Exchange
Hosted Services ou de Windows Update,
- Les Services dits « Finalisés » sont directement exposés aux utilisateurs. Ils peuvent aussi
être étendus et enrichis par les développeurs via leurs kits de développements associées
(SDK). Par exemple, les Microsoft Business Productivity Online Services (SharePoint Online,
Exchange Online…) ou Microsoft Dynamics CRM Live.
Dans la suite du document, nous nous concentrerons sur les Services à destination des développeurs,
à savoir les Building Blocks puisque ceux-ci peuvent être exploités directement par des applications
réalisées sur mesure. Nous ferons aussi un détour pour les interfaces programmatiques (SDK)
proposées par certains Services Finalisés pour faciliter l’intégration au système d’informations et
fluidifier ainsi l’expérience Utilisateur.
Par opposition aux applications « à demeure » installées en entreprise, le « Cloud Computing » peut
être vu comme une extension du système d'informations qui tire parti de ressources situées sur
Internet.
- s'appuyer tantôt sur la puissance du poste de travail au travers de Clients Riches (RDA),
tantôt sur l’universalité de l’accès au travers de navigateurs Web (RIA),
- en prenant soin de s'intégrer aux serveurs « à demeure » du Système d'Informations
- tout en tirant parti de ressources hébergées dans les nuages – le Cloud Computing.
Le Cloud Computing est à intégrer dans une réflexion globale des organisations. Par exemple, en
mettant à disposition des Services Finalisés tels que la gestion de relation client (CRM) ou bien le
collaboratif (Partage de documents, Reporting…), le Cloud Computing permet de décharger ses
équipes internes de capacités complètes du système d’informations qui pourraient être considérées
comme non stratégiques. En outre, le Cloud Computing permet de répondre rapidement à des
enjeux Métier nouveaux ou bien à fort potentiel de croissance, en proposant fondamentalement des
infrastructures prêtes à l’emploi et adaptables en terme de volume et de charge, un point sur lequel
les directions informatiques sont régulièrement challengées.
Dans cette logique, Microsoft spécialise ses offres de Services en ligne à l'instar des Business
Productivity Online Services dont l’hébergement est proposé en mode « Standard » et « Dédié », et
de façon complémentaire en sur-mesure chez ses partenaires. On retrouve cette flexibilité au niveau
de la facturation avec un paiement à l’utilisation ou à l’utilisateur - plutôt qu’au serveur ou au
processeur comme c’est le cas pour l’informatique « à demeure ». De plus, la plate-forme
« Microsoft Digital Advertising » permet de financer le logiciel par des revenus publicitaires en
mettant en relation acheteurs, intermédiaires et fournisseurs d’espaces publicitaires .Le logiciel a là
encore largement sa place depuis la mise à disposition de places de marchés (pricing, vente,
revente), mais aussi des outils de suivi de campagne marketing et surtout la nécessité d’intégrer la
publicité aux interfaces homme-machine (SilverLight pour le Web, Xbox pour le jeu…)
La figure précédente présente un ensemble de frameworks dits « Cloud Aware », entendons adaptés
à des développements pour les nuages. Les développeurs .Net s’intéresseront à trois frameworks
fondamentaux, à savoir Windows Communication Foundation pour exposer des API
programmatiques, les ADO.Net Data Services pour exposer des ressources et enfin le Microsoft Sync
Framework pour synchroniser ses données entre des sources à demeure et dans les nuages :
- Les ADO.Net Data Services permettent d’exposer des données jusqu’alors limitées à un
usage interne, via les protocoles de l’internet. En s’appuyant sur une modélisation
conceptuelle (Entity Data Model), ce framework permet de couvrir à la fois les aspects
interrogation et accès en lecture mais aussi la mise à jour des sources de données. Une
version finale des ADO.Net Data Services est attendue pour l’été 2008.
Remarques :
Ces frameworks sont eux-même utilisés pour construire les Services de plus au niveau de la
plate-forme Cloud Computing Microsoft. Ainsi WCF et ADO.Net Data Services sont mis en
oeuvre par les SQL Server Data Services pour exposer les données SQL Server, et WCF est au
cœur des BizTalk Services (voir ci-après pour la description de ces Services).
De plus, signalons que les consommateurs de services que sont les Clients Riches Microsoft -
ASP.Net AJAX 3.5, SilverLight 2.0 ou encore Windows Presentation Foundation s’interfacent
nativement à ces frameworks, dans leurs dernières versions.
Côté Services, Microsoft propose déjà pas moins de cinq Building Blocks Services à l’échelle de
l’internet : depuis la délégation de l’authentification au travers de Live (Windows Live ID SDK) ou la
diffusion de cartes interactives via Virtual Earth, jusqu’au stockage de flux vidéo avec SilverLight
Streaming, ainsi que le stockage de données (les SQL Server Data Services) et la connectivité étendue
à l’Internet (les BizTalk Services) :
- Les SQL Server Data Services s'adressent aux développeurs qui veulent se concentrer sur
la réalisation de leurs applications sans se soucier du déploiement, de l'administration et
de la sauvegarde d'un gestionnaire de données. Fruit de 18 mois de développement, ce
Service de stockage de données dans les nuages s'apparente à un immense cluster de
Microsoft SQL Server à l'échelle de l'internet, accessibles à la fois en mode Opérations et
Ressources (SOAP, XML, REST et AtomPub). La beta restreinte proposée aujourd’hui sera
étendue à l’horizon de l’été 2008.
- Les BizTalk Services étendent le concept de Bus de Services à l’Internet au travers d’un
relais de messages hébergé dans les nuages – il s’agit des Connectivity Services. Les
communications sont sécurisées via des protocoles standards et les principes de la
fédération d’identité – il s’agit des Identity Services. La communication est établie de
façon flexible, sans modification du code du développeur ni besoin de recompilation.
Cette flexibilité se matérialise par un binding spécifique WCF – le RelayBinding - proposé
par le kit de développement des BizTalk Services. Ce service est actuellement en preview.
Pas forcément. Pour aborder le développement et le déploiement dans les nuages, certains acteurs
ont pris l’option de reposer sur une infrastructure d'exécution dédiée et externalisée. Cette approche
désignée sous le terme « Plate-forme as a Service » est complétée par un environnement de
développement souvent externalisé sous forme d’applications en ligne (en mode SaaS).
On serait tenté d'opposer les Plate-formes as a Service aux Plate-formes Applicatives traditionnelles
des grands éditeurs. Ces dernières sont utilisées pour provisionner des applications « à demeure » ou
bien dans l'entreprise étendue (l'entreprise et ses partenaires - hébergeurs compris).
Finalement, les Plate-formes as a Service reprennent les concepts des plate-formes traditionnelles et
les spécialisent pour l'internet. Alors pourquoi créer des plate-formes dédiées, et ne pas s'appuyer
sur les plate-formes applicatives existantes pour créer des infrastructures d'exécution sur internet,
dédiées au Cloud Computing ? En d’autres termes, pourquoi ne pas s'appuyer sur une même plate-
forme pour déployer tantôt « à demeure » tantôt « dans les nuages » ?
C’est le choix qui a été fait par Microsoft au travers de l’initiative Oslo, à savoir la constitution d'une
plate-forme, qui soit capable d’apporter une flexibilité dans le déploiement des modules d’une
application : tantôt à demeure, tantôt vers des infrastructures spécialisées mises à disposition sur
Internet, telles que l’Internet Service Bus.
Remarque : L'originalité de l'approche d'Oslo réside dans la capitalisation sur les modèles :
réaliser une application via la description de modèles en restant agnostique en terme de cible
matérielle et d'infrastructure physique tout en étant précis en terme logique (contraintes,
besoins...) pour être capable de projeter le plus tard possible l'application sur les
environnements d'exécution. Les premières previews des investissements Oslo au niveau de la
plate-forme applicative Microsoft sont prévus pour fin 2008.
Réflexions
L’évolution vers le Cloud Computing pourrait avoir lieu bien plus rapidement que prévu. En effet, si
les populations techniques en entreprise ne sont aujourd’hui ni formées ni organisées pour cette
évolution du développement logiciel, les atouts économiques et stratégiques du Cloud Computing
devraient accélérer son adoption. Par ailleurs, on constate une maturité certaine des technologies du
Cloud Computing qui héritent des investissements passés en terme de standards et de normes
d’interopérabilité ( Services Web, Fédération d’identité). De plus, la Cloud Computing s’appuie sur
l’expérience des professionnels de l’internet et des architectures Web (robustesse des
infrastructures, montée en charge via le protocole HTTP).
Fort des dernières annonces « Software + Services » et de l’initiative Oslo de Microsoft, nous nous
rapprochons d’un futur informatique mixte, où le Logiciel s’appuiera sur des Services tantôt à
demeure, tantôt hébergés sur Internet, mais aussi où le Logiciel exposera lui-même des Services en
interne, vers des partenaires commerciaux et des clients. L’utilisation de technologies répandues
telles que .Net et la mise en œuvre d’une plate-forme applicative unifiée pour l’entreprise et pour
Internet permettra de prendre ce virage progressivement et à moindre coût.
Ressources