on me demande souvent comment ORCID parvient à mettre continuellement à jour le registre pour ajouter de nouvelles fonctionnalités, tout en prenant en charge les nombreux systèmes d'entreprise détenus et exploités par ORCID Organisations membres qui utilisent nos API. La réponse finale est la flexibilité. Mais, bien sûr, c'est un peu plus compliqué que ça.
Un peu d'histoire
Lors de notre premier lancement en octobre 2012, nous avons commencé avec l'API version 1.0.1. (Notre prototype précédent était la version 1.0.) Comme vous pouvez l'imaginer, au cours de cette première année, nous avons apporté de nombreuses améliorations et ajouté de nouvelles fonctionnalités importantes, telles que la possibilité de connecter des financements et des affiliations à un ORCID Enregistrer. Pour chacune de ces améliorations, nous avons maintenu une compatibilité descendante, permettant aux organisations de mettre à jour à leur guise. Un an (et 23 mises à jour !) plus tard, nous avons constaté que nous soutenions activement 23 versions de notre API. Cela nécessitait des ressources humaines substantielles pour gérer, et signifiait que nous avions moins de temps pour ajouter plus de fonctionnalités et d'améliorations que nos membres et utilisateurs recherchaient. Pire encore, presque tous les utilisateurs d'API utilisaient la version 1.0.7 ou une version antérieure, ce qui signifie qu'ils ne bénéficiaient pas des nouvelles fonctionnalités que nous implémentions et supportions. De toute évidence, ce processus ne fonctionnait bien pour personne !
Concentrer notre approche
En novembre 2013, nous avons développé une approche avec les objectifs suivants :
- Maintenez le nombre d'API prises en charge simultanément à un niveau gérable pour notre petite équipe.
- Fournissez de meilleures informations aux utilisateurs de l'API sur les mises à jour majeures et mineures de l'API.
- Servir les utilisateurs d'API qui souhaitent avoir accès aux dernières mises à jour et fonctionnalités, et à ceux qui ont besoin d'API à plus long terme et stables pour l'entreprise.
- Offrez de la flexibilité aux utilisateurs d'API qui migrent activement vers des versions plus récentes, mais qui ont besoin d'une assistance supplémentaire ou de temps pour la transition.
L'API Enterprise-Stable
Nous publions désormais une nouvelle version d'API stable pour l'entreprise une fois par an, généralement en janvier. Cette version inclut toutes les nouvelles fonctionnalités, mises à jour et améliorations de l'année précédente.
- Bien que la version précédente stable pour l'entreprise soit toujours fonctionnelle, elle est considérée comme « obsolète ».
- Les utilisateurs de l'API sont informés 3 à 6 mois avant la date d'expiration des différences entre les deux versions, et reçoivent une documentation et une assistance pour mettre à jour leur système. Nous fournissons également un avis à nos contacts techniques qui ont construit une intégration avec l'API membre.
- Après un certain temps, l'ancienne version est "sunset", après quoi elle n'est plus activement prise en charge. Finalement, l'ancienne version ne fonctionnera plus.
- La durée pendant laquelle les deux versions sont activement prises en charge varie en fonction de l'étendue des modifications et de l'effort requis pour effectuer une mise à jour.
- Nous nous engageons envers nos membres. Nous nous assurons TOUJOURS qu'ils ont migré avec succès vers la nouvelle version avant d'interrompre la prise en charge d'une version d'API obsolète.
L'API Innovation
Pour nos membres qui souhaitent accéder plus tôt aux nouvelles fonctionnalités et améliorations, nous proposons des API Release Candidates plus fréquentes qui incluent les dernières innovations.
- Ces versions fournissent un aperçu des mises à jour probables dans la prochaine version stable pour l'entreprise.
- Ils incluent des fonctionnalités que nous testons et permettent aux utilisateurs de l'API d'essayer de nouvelles fonctionnalités plus tôt.
- Les versions candidates ne sont généralement pas prises en charge et disposent d'une documentation limitée. le ORCID L'équipe de développement est très intéressée à travailler en collaboration avec les membres utilisant des versions candidates pour améliorer les fonctionnalités provisoires.
Nous fournissons des détails sur les versions actuelles, les dates de modification et plus encore dans notre documentation des versions. Nous recommandons également à toute personne utilisant l'API de devenir membre du Groupe d'utilisateurs de l'API où nous partageons les dernières informations sur les API.