The Doppler Quarterly (FRANÇAIS) Été 2016 | Page 73

livré depuis son développement, l'opération est ter- minée et une autre équipe prend la suite et se charge de la maintenance et du support de l'application. Lors de la livraison d'un service, le développement n'est jamais terminé tant que le service est consommé par les clients. À une conférence Puppet il y a deux ans, Mike Stahnke de chez Puppet, a fait une déclaration devenue classique au sujet du développement des services : « ce n'est jamais fini tant que votre dernier client est encore en vie. » Se focaliser sur la technologie seule et ignorer les aspects politiques et sociaux de ce changement est une recette du désastre. Avec les services, les jours où l'on envoyait le code à une autre personne pour s'en débarrasser sont ter- minés. Les développeurs doivent gérer et maintenir de manière autonome leurs services, ce qui signifie qu'ils ont besoin de la surveillance des performances des applications (APM) et des outils de journalisation pour obtenir des remarques et des alertes rapide- ment. La surveillance devient de plus en plus proac- tive, contrairement à la pratique réactive. Comme de nombreux utilisateurs et applications différents peuvent s'y fier, le service doit toujours être activé. Les équipes d'opérations continuent à surveiller l'in- frastructure, mais les développeurs surveillent leurs services. Cette nouvelle approche change radicalement les modèles de fonctionnement passés basés sur les silos et nécessite une collaboration plus étroite entre développeurs et opérations. Les structures d'équipes s'alignent sur les produits et services avec de petites équipes qui incluent un large spectre d'expertise du domaine et d'ensembles de compétences. Les silos fonctionnels ne sont pas très opérationnels dans un monde orienté vers les services. Architectures verticales vs. horizontales Les architectures verticales traditionnelles sont constituées d'un maximum de deux ou trois niveaux (Web, appli, base de données), et une planification de la capacité est nécessaire pour attribuer suffisam- ment de ressources de calcul et de stockage pour évoluer correctement. L'évolutivité verticale signifie ajouter des matériels supplémentaires ou des compo- sants matériels à l'infrastructure existante. Cette tâche est exécutée par des experts en matériel. Les applications sont créées dans l'attente que le matériel sera toujours là, et une armée de gens sont chargés de s'assurer que cette hypothèse est une réalité. ÉTÉ 2016 | THE DOPPLER | 71