Il y a quelques semaines Bungee Labs lançait une nouvelle version de sa plate-forme d'exécution d' applications dans les nuages.
Les Plate-formes as a Service - PaaS proposent de reposer sur une infrastructure d' exécution externalisée, spécialisée et complétée par une palette d' outils de développement (qui peuvent être externalisés en mode SaaS par exemple). En d'autres termes, passage obligé par ces outils, et exécution limitée à cette plate-forme.
It's time to stop developing 'here' and running 'there.' David Mitchell, Bungee's Funder
Avantages : le tout en un avec un accès facilité au développement et au déploiement de ses services et applications.
Inconvénients : les codes sont développés pour une unique plate-forme cible, propriétaire. Bref, on ne peut trouver plus propriétaire comme approche.
On serait tenté d'opposer les Plate-formes as a Service aux plate-formes applicatives traditionnelles des grands éditeurs : IBM, Microsoft, Oracle et SAP. Ces dernières sont utilisées pour provisionner des applications dans l'entreprise ou dans l'entreprise étendue (l'entreprise et ses partenaires - hébergeurs compris).
Rappel : Une plate-forme applicative est composé d'un environnement de développement, d'une infrastructure d'exécution, et d'outils de management et de gestion du cycle de vie des applications. Dans le cas de Microsoft, les technologies associées sont Visual Studio Team System pour le développement, le système d'exploitation Windows pour l'exécution (Serveur d'application IIS, Windows Activation WAS, gestionnaire de queue MSMQ, transactionnel distribué MSDTC, infrastructure de management WMI...) et System Center côté management, supervision, déploiement et help desk.
En fait, les Plate-formes as a Service reprennent les mêmes concepts mais 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.
Pourquoi opposer les 2 types de plate-formes : traditionnelles et PaaS ? Pourquoi ne pas s'appuyer sur une même plate-forme pour déployer tantôt dans ses murs (en entreprise) et tantôt dans les nuages ? Et en poursuivant dans ce sens, pourquoi ne pas proposer un même outillage qui permettrait de façon flexible de déployer des modules tantôt dans l'entreprise tantôt dans les nuages ?
Microsoft travaille à la constitution d'une plate-forme avancée qui soit capable d'héberger des applications à la fois en Entreprise (On-Premise) mais aussi de déporter certains modules sur Internet (In the Cloud). Cette capacité fait partie de l'initiative Oslo pour les aspects implémentation, et globalement de la vision Software + Services.
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 très précis en terme logique (contraintes, besoins...) pour être capable de projeter le plus tard possible l'application sur les environnements d'exécution.
Quelques éléments d'Oslo allant dans ce sens sont déjà disponibles en preview : les laboratoires Live proposent une infrastructure hébergée dans les nuages : l'Internet Service Bus - ISB (nom de code BizTalk Services). Intérêt : le kit de développement de l'internet Service Bus (BizTalk Services SDK) propose de réaliser indifféremment des communications entre applications de façon locale (intra-entreprise) ou bien inter-entreprises via un relais placé dans les nuages (Connectivity Services), et de façon sécurité (Identity Services). Ce paramétrage de la communication est réalisé de façon flexible, sans modification du code source ni besoin de recompilatoin. Cette flexibilité se matérialise par un binding spécifique Windows Communication Foundation (WCF - RelayBinding) compris dans le SDK BizTalk Services.
Pour ma part, je pense que ces plate-formes visent des usages différents.
UPDATE : Le billet Which Approach will win ? de David Chappell complète ce propos.
Il y a quelques semaines Bungee Labs lançait une nouvelle version de sa plate-forme d'exécution d'
Dans le billet " PaaS ou S+S " daté de Mars dernier, nous avions présenté l'approche