Automatiser l’efficacité

Effectué
Remplacer les tâches manuelles répétitives par l’automatisation logicielle qui les termine plus rapidement, avec une plus grande cohérence et précision, et réduit les risques.

La charge de travail peut avoir des workflows avec des processus qui impliquent des membres de l’équipe qui effectuent des tâches banales, répétitives et fastidieuses qui n’ont pas réellement besoin de l’intelligence humaine. Selon la fréquence, vous pouvez consacrer beaucoup de temps à ces efforts, en investissant plus de temps à mesure que la charge de travail augmente. En outre, ces processus sont souvent sujettes aux erreurs en raison d’une entrée humaine.

Grâce à l’automatisation, vous économisez du temps, de l’effort et de l’argent, et vous évitez les erreurs.

Exemple de scénario

Contoso University a développé une application web, actuellement en production et hébergée dans Azure, qui fournit des services d’éducation en ligne pour les étudiants et les enseignants de Contoso.

La solution technologique repose sur Azure App Service, Azure SQL Database, Azure Active Directory, Azure Key Vault et Azure DevOps.

Automatiser les flux

Évaluez tous les flux de travail par rapport aux critères qui sont au bon niveau de complexité, d’effort, de fréquence, de précision, de chronologie et de durée de vie. Automatisez les flux de travail en fonction de cette évaluation et hiérarchisez les flux de travail avec les retours attendus les plus élevés. Supprimez les flux de travail redondants ou ajoutez une valeur pour justifier l’effort humain.

En adoptant cette approche, vous pouvez réinvestir la capacité de l’équipe dans un travail de valeur plus élevée et augmenter la productivité et la cohérence.

La création d’un inventaire des flux de travail vous permet d’automatiser les tâches appropriées. La suppression de tâches redondantes réduit la complexité et les erreurs.

Problématique de Contoso

  • L’équipe de Contoso University recherche des moyens d’améliorer le processus d’exploitation en automatisant les tâches manuelles répétitives, fastidieuses, sujettes aux erreurs ou à faible valeur. Cela pourrait libérer du temps et des ressources de l’équipe pour des travaux plus stratégiques, améliorer la qualité et la fiabilité du service, et potentiellement réduire les coûts.

Application de l’approche et résultats

  • Pour démarrer cet effort, l’équipe a effectué un inventaire des tâches d’opérations manuelles susceptibles d’être automatisées. Ensuite, l’équipe a analysé la liste des tâches à l’aide des critères suggérés dans la recommandation, comme le niveau de complexité approprié, l’effort, la fréquence, la précision, les chronologie s et la durée de vie, pour déterminer les principaux candidats à l’automatisation. En même temps, l’équipe a également évalué si l’acquisition d’un outil d’automatisation ou la construction personnalisée de l’automatisation en interne pourrait être meilleure à long terme.
  • À la suite de l’analyse, ils ont décidé de se concentrer sur l’automatisation des activités liées à la gestion des comptes d’utilisateur. La gestion des comptes d’utilisateur (étudiants, enseignants, personnel) est une tâche courante, qui inclut la création de comptes lors de l’inscription des étudiants, la réinitialisation des mots de passe et la suppression de comptes lorsque des personnes quittent l’université.
  • En automatisant la plupart des tâches liées à la gestion des comptes d’utilisateur, l’équipe a libéré suffisamment de temps pour démarrer sur d’autres améliorations de l’excellence opérationnelle qui avaient été retardées précédemment.

Conception pour l’automatisation

Concevez vos composants de charge de travail pour prendre en charge les fonctionnalités d’automatisation.

Évitez la situation où l’absence d’automatisation dans la conception de votre système favorise l’anti-modèle des tâches répétitives, ralentit la croissance et commence à accumuler la dette technique.

Problématique de Contoso

  • L’application a une interface utilisateur riche et dynamique qui utilise de nombreux éléments interactifs et animations. L’équipe de développement n’a jamais utilisé d’outils de test automatisé de l’interface utilisateur depuis que l’application a été développée à l’origine et s’est basée uniquement sur des tests manuels.
  • Récemment, l’équipe a travaillé sur l’automatisation de ses tests d’interface utilisateur, mais elle a rencontré de nombreux défis. Certaines pages de l’interface utilisateur sont trop dynamiques et imprévisibles, et il n’existe aucun moyen cohérent d’identifier certains des champs avec lesquels les cas de test doivent interagir.

Application de l’approche et résultats

  • L’équipe a décidé d’améliorer son implémentation de l’interface utilisateur pour la rendre plus testable et accessible. Ils apporteront les améliorations incrémentielles en corrigeant les pages au fur et à mesure qu’elles créent les cas de test.
  • À mesure qu’ils s’attaquent à chaque page, ils s’assurent que chaque champ a un identificateur unique qui peut être utilisé par les outils d’automatisation des tests. Ils suivent également les directives et normes d’accessibilité, telles que l’utilisation du code HTML sémantique, des étiquettes appropriées et de la navigation au clavier. Cela rend leur interface utilisateur plus conviviale et plus facile à tester.
  • À mesure que des tests automatisés sont terminés, ils sont incorporés dans la suite de tests qui s’exécute au cours de la build quotidienne, ce qui entraîne des réductions significatives du temps nécessaire pour libérer de nouvelles builds en production, des améliorations de la qualité des produits et des économies de coûts pendant le développement.

L’automatisation doit être bien conçue

Traitez toutes les automatisations comme une dépendance critique de votre charge de travail. Adaptez-vous à la croissance attendue de la charge de travail. Vos outils d’automatisation font partie intégrante de votre charge de travail et doivent respecter les cinq piliers de l’infrastructure bien architecte.

Concevez votre composant d’automatisation pour résister aux risques, tels que les menaces de sécurité. Avec les meilleures pratiques appliquées, vous pouvez éviter l’extension de l’implémentation.

La charge de travail continuera à fonctionner avec une garantie de haut niveau si cette dépendance est maintenue fonctionnelle et sécurisée.

Problématique de Contoso

  • La charge de travail a un environnement dédié aux tests de charge et de performances, avec une configuration qui imite étroitement la production. Pour simuler de manière plus étroite les conditions de production dans l’environnement, une nouvelle copie de la base de données de production, avec toutes les données sensibles de l’utilisateur rendues anonymes et masquées, est chargée dans l’environnement de test tous les lundis, lorsque cet environnement est réinitialisé.
  • Le script de chargement de base de données a été écrit par un ancien développeur qui ne l’a pas bien documenté ou suivi d’autres bonnes pratiques. Le script s’exécute lentement et ne gère pas correctement les erreurs ou les échecs.
  • Dernièrement, à mesure que la base de données de production augmente, le temps d’exécution du script est de plus en plus long et échoue fréquemment. Ces retards et défaillances affectent la capacité de l’équipe à exécuter les exécutions de test et provoquent des retards dans la planification de développement.

Application de l’approche et résultats

  • L’équipe décide que le temps est venu pour réécrire cet outil afin qu’il puisse être en même temps que les pratiques de développement standard utilisées pour développer la base de code de l’application principale. L’équipe suivra les meilleures pratiques de développement acceptées par le secteur, notamment la sécurité appropriée et la gestion adéquate des erreurs.
  • Les performances sont améliorées et les fonctionnalités ont été repensées de telle manière qu’elles produisent un temps d’exécution prévisible, quelle que soit la taille du jeu de données de production.
  • En traitant l’automatisation avec la même rigueur que la base de code de l’application principale et en appliquant les principes et recommandations WAF, l’équipe l’a optimisée pour la fiabilité, la sécurité, les performances, les coûts et les opérations.

Contrôle de vos connaissances

1.

Parmi les éléments suivants, lequel n’est pas un facteur important à prendre en compte lors de l’évaluation de vos flux de travail et du potentiel d’automatisation ?

2.

Comment Contoso a-t-il abordé l’automatisation de ses tests d’interface utilisateur ?

3.

Comment devez-vous considérer votre automatisation par rapport à votre charge de travail dans son ensemble ?