Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Au fur et à mesure que vous travaillez pour créer votre plateforme de développement interne, vous devez d’abord déterminer votre plateforme la plus viable (TVP). Un programme TVP est une variante de l’idée d’un produit minimum viable (MVP) dans la gestion classique des produits.
Une bonne façon de déterminer quels travaux doivent faire partie de votre programme TVP consiste à évaluer les pratiques d’ingénierie de plateforme de votre organisation avec le modèle de capacité d’ingénierie de plateforme. Le modèle de capacité d’ingénierie de plateforme peut vous voir quels sont les atouts actuels de l’ingénierie de plateforme de votre organisation et définir des objectifs pour l’avenir.
Le diagramme suivant peut vous aider à orienter votre réflexion sur la façon dont votre plateforme de développement peut évoluer au fil du temps. N’oubliez pas que le problème principal de votre organisation peut vous amener à vous écarter de ce qui est décrit ici en raison de vos investissements existants ou des besoins organisationnels. Vous n’avez pas besoin de passer à la phase suivante, sauf si votre organisation en a besoin.
Si vous commencez à partir de zéro, cette séquence représente une progression commune.
- Dans les premières étapes, concentrez-vous sur la découverte des fonctionnalités nécessaires, l'analyse de l'écart de compatibilité des produits préemballés et la création du nombre minimal d'outils ou de capacités de plateforme.
- Ensuite, à mesure que vous augmentez l’échelle, vous commencez à vous concentrer sur la réutilisabilité et à orienter les personnes sur des itinéraires prédéfinis avec des ressources réutilisables.
- Enfin, vous passez à un modèle de magasin numérique de type consommateur pour faciliter la création et la maintenance d’applications.
Vous devez adopter une mentalité orientée produit tout au long du processus, donc nous vous déconseillons de passer directement à la fin, et votre parcours spécifique peut varier. Ces dernières phases ressemblent le plus à un produit emballé sous film rétractable au sens traditionnel, mais c'est une destination, pas un point de départ.
Domaines d’ingénierie de plateforme
Compte tenu de la taille de cette rubrique, nous vous recommandons de décomposer la façon dont vous parlez de l’ingénierie de plateforme en interne en quatre domaines :
Systèmes d’ingénierie : combinaison organisée de suites DevOps telles que GitHub et Azure DevOps et d’autres outils et services de développement. Au-delà des outils et services DevOps critiques tels que CI/CD ou la gestion des packages, ce domaine inclut également des fonctionnalités utilisées directement pendant le processus de codage, comme les environnements de développement basés sur le cloud, les analyseurs de code et linters, et les assistants d'intelligence artificielle comme GitHub Copilot.
Plateforme d’application : sélection organisée de services (comme l’infrastructure en tant que service, la plateforme en tant que service et l’observabilité) qui ciblent chaque pile d’applications (classe d’application, modèle d’application, langages) qu’une organisation souhaite utiliser pour offrir une valeur métier. Cela inclut une combinaison de services spécifiques à la pile d’applications, ainsi que des services courants utilisés dans l’ensemble. Un exemple de plateforme d’application peut inclure Azure Container Apps, Azure Cosmos DB pour le stockage, Azure Key Vault pour secrets, le contrôle d’accès en fonction du rôle Azure pour l’identité et le contrôle, Azure Policy pour la conformité et l’audit, l’observabilité via Grafana et une topologie de réseau associée.
Modèles d’application : un ensemble de modèles de démarrage rapide bien définis et créés par l’organisation qui encapsulent des conseils pour bien démarrer et rester sur la bonne voie pour une plateforme d’application, un langage et un ensemble de systèmes d’ingénierie donnés. Ces modèles peuvent référencer d’autres modèles centralisés et fournir du code de démarrage, des références API et sdk, des pipelines CI/CD, une configuration d’outils, etc.
Fonctionnalités en libre-service des développeurs : il s’agit de la colle pour vos efforts d’ingénierie de plateformes. Il s’agit d’une combinaison d’API, d’orchestrateurs, d’un catalogue, de modèles et d’expériences utilisateur conçues pour réduire la surcharge de travail des développeurs et permettre aux équipes de développement de se prendre en charge et de devenir plus autonomes, tout en respectant les sélections et les conseils/gouvernance des trois zones précédentes.
L’intégration de systèmes d’ingénierie, de plateformes d’applications, de modèles d’application et de fonctionnalités en libre-service pour les développeurs constitue la pierre angulaire d’une stratégie d’ingénierie de plateforme. En combinant des outils DevOps, des services cloud et des fonctionnalités en libre-service, les organisations peuvent réduire considérablement la difficulté des développeurs, améliorer la productivité et garantir la conformité aux normes de gouvernance.