La gestion des produits API et DevOps sont deux aspects essentiels du développement logiciel moderne, mais ils se concentrent sur différents domaines du processus de développement. Qu'est-ce donc que l'APIOps est étroitement lié au DevOps ? Est-ce qu'il prend également en charge les activités de gestion des produits API ?
Les produits API (consommés en interne et en externe) sont là pour durer. Sans API (interfaces de programmation d'applications), il n'y aurait pas de données ou de produits d'IA, d'appareils IoT ou de plateformes numériques sans API (interfaces de programmation d'applications). Cependant, parmi les experts en API et les fournisseurs de technologies, le rôle des API en tant que produits et la nécessité d'une gestion appropriée peuvent parfois être négligés en raison de l'expérience technique des personnes travaillant avec des API.
Ce blog explore le concept des APIOps en tant que moyen de gérer efficacement les produits API, en combinant les principes du DevOps, du GitOps et de la gestion des produits. Nous examinerons les définitions de DevOps et d'APIOps, puis examinerons de plus près la gestion des produits pour les produits API, pour finalement aboutir à des cycles APIOps, une approche nouvelle mais largement adoptée qui comble les lacunes et favorise la collaboration entre les différentes parties prenantes.
DevOps, une méthodologie de développement logiciel, vise à automatiser le travail des développeurs et les opérations informatiques, améliorant ainsi le cycle de vie du développement des systèmes. Cela peut créer des changements culturels dans les entreprises, en mettant l'accent sur l'importance de la culture aux côtés des outils et de l'automatisation. En 2017, Jarkko Moilanen a introduit APIOps en tant que rôle combinant l'expertise en matière de DevOps et de développement d'API, en se concentrant sur la maîtrise de la chaîne d'outils de développement d'API et l'automatisation associée.
Les APIOps ont évolué pour être définies comme une combinaison de DevOps et de GitOps adaptée aux API. Cette approche utilise les concepts GitOps dans le déploiement des API, ce qui permet des modifications itératives et automatisées. Alors que DevOps se concentre principalement sur le développement et le déploiement de logiciels, APIOps étend sa portée au cycle de vie des API et à l'amélioration de la qualité.
La gestion des produits et son proche parent, la gestion du cycle de vie des produits (PLM) sont des concepts utilisés dans l'ingénierie et le marketing. Dans les produits liés aux logiciels, la gestion des produits joue un rôle central pour garantir l'adéquation des produits aux besoins du marché et à la stratégie du produit. Les principales activités d'un chef de produit performant incluent les entretiens avec les clients, les tests utilisateurs, les sprints de conception, la priorisation des fonctionnalités, les évaluations de marché, l'allocation des ressources, la traduction des exigences métier en exigences techniques, la tarification, la modélisation des revenus et la définition des indicateurs de réussite.
La gestion des produits et le DevOps sont des disciplines distinctes. La gestion des produits est une science commerciale axée sur l'adaptation des produits aux besoins du marché et aux objectifs commerciaux. Il doit être distinct du rôle plus restreint d'un propriétaire de produit agile. D'autre part, le DevOps, ancré dans des pratiques telles que le cycle Lean et Deming, se concentre sur l'amélioration de la qualité et de la rapidité.
Bien que les définitions du DevOps par les géants de la technologie tels que Microsoft, Atlassian et AWS n'incluent pas nécessairement les activités de gestion des produits, le rôle des chefs de produit est crucial pour suivre les indicateurs de réussite, aligner les produits sur les stratégies commerciales et les objectifs des clients, et garantir les indicateurs de qualité internes. Les responsables de produits API jouent donc un rôle central lorsqu'il s'agit d'évaluer si les API apportent de la valeur aux clients, un indicateur essentiel.
Cependant, combler le fossé entre les développeurs de logiciels, les architectes, les ingénieurs DevOps et les professionnels de la gestion de produits peut s'avérer difficile en raison de leurs expériences et de leurs méthodologies différentes. La méthode APIOps Cycles a été créée pour résoudre ce problème et favoriser la collaboration entre ces parties prenantes et la gestion des ventes, du marketing, des clients et des partenaires.
Les API ont révolutionné le développement et l'intégration de logiciels et sont devenues indispensables pour les applications modernes. Reconnaître les API en tant que produits (même si elles cela semble controversé) et leur gestion à l'aide de méthodologies de gestion des produits est essentielle à leur succès. L'APIOps, un mélange de DevOps et de GitOps, facilite la gestion du cycle de vie des API, mais doit également intégrer les principes de gestion des produits pour une efficacité globale.
Les cycles APIOps apparaissent comme une méthode prometteuse pour combler le fossé entre les aspects techniques et les besoins commerciaux, en promouvant la collaboration entre les diverses parties prenantes. En intégrant le design thinking, la gestion des produits pilotée par les données et les aspects culturels, de qualité et de rapidité du DevOps, APIOps Cycles libère le véritable potentiel des produits API.
En savoir plus sur la méthode : https://www.apiopscycles.com/
Les sources :
https://medium.com/apiops/what-is-apiops-666b0d71764b
https://hbr.org/2017/12/what-it-takes-to-become-a-great-product-manager
APIOps Ⓡ et APIOps Cycles Ⓡ sont des marques commerciales d'Osaango Ltd, à utiliser dans le contexte des méthodes liées à l'automatisation des API et à la gestion du cycle de vie, de la communauté gérée par Osaango et de la méthode APIOps Cycles sous licence ouverte.