Établir des normes de développement
Optimiser la productivité en standardisant les pratiques de développement, en appliquant des portes de qualité et en effectuant le suivi des progrès et de la réussite grâce à une gestion systématique des changements. |
---|
L’équipe de développement est chargée de résoudre les problèmes de charge de travail avant la mise en production avec une friction minimale. N’oubliez pas l’efficacité du développeur et optimisez les cycles de traitement rapide, du codage aux résultats des tests. Implémentez des processus efficaces et de taille appropriée qui planifient et normalisent les activités techniques et favorisent également le consensus au sein de l’équipe et des parties prenantes.
Exemple de scénario
Contoso Ticketing est un petit démarrage qui fournit une solution SAAS de ticketing pour les entreprises de taille moyenne. L’intégration de nouveaux clients est un processus complexe qui nécessite des personnalisations de produits et un développement personnalisé pour s’intégrer à l’environnement du client. L’équipe d’implémentation utilise Azure DevOps comme plateforme pour la collaboration et la livraison, mais elle ne suit aucune méthodologie de développement formelle.
Adopter des normes industrielles pour le développement
Utilisez une méthodologie de développement de logiciels standard du secteur adaptée aux besoins de votre charge de travail et de votre taille d’équipe. Conservez un backlog partagé entre tous les rôles.
L’adoption d’une méthodologie connue définit le rythme du projet. Elle supprime les ambiguïtés du processus en donnant aux membres de l’équipe des attentes claires et à la responsabilité.
En suivant une liste commune, les tâches peuvent être affinées et hiérarchisées avec les pratiques standard. Le projet aura de meilleures chances d’être livré à temps.
Les méthodologies standard aident à la gestion des risques. Avec des révisions de jalons granulaires, les développeurs peuvent résoudre les problèmes potentiels avant qu’ils ne deviennent des afficheurs.
Problématique de Contoso
- Le produit principal de l’entreprise a gagné en popularité et l’équipe d’intégration travaille désormais sur des projets d’implémentation plus simultanés que jamais. Pour suivre la charge de travail accrue, l’équipe a dû augmenter son effectif.
- La croissance de l’équipe, jumelée à l’absence de processus formels, a entraîné certains défis, tels que la communication peu claire entre les membres de l’équipe, les réunions aléatoires et non productives, et les cycles de développement peu fréquents et non planifiés. Plusieurs des projets d’intégration sont désormais en retard et le leadership de l’entreprise a demandé à l’équipe d’apporter les modifications nécessaires pour corriger la situation.
Application de l’approche et résultats
- Pour surmonter ces défis, l’équipe décide d’adopter une méthodologie de collaboration, une infrastructure agile populaire pour le développement de logiciels.
- Scrum aidera l’équipe à résoudre certains des problèmes auxquels elle est confrontée. Entre autres choses, Scrum fournit une structure claire et cohérente pour le processus de développement, avec des rôles prédéfinis, des événements, des artefacts et des règles. Un backlog partagé et une cadence de sprints de développement courts aideraient l’équipe à travailler sur une vision partagée et à fournir de la valeur aux clients régulièrement et de manière fiable.
Maj vers la gauche pour les tests
Disposer de processus d’assurance qualité qui mettent l’accent sur les tests au début du cycle de vie du développement. Incluez tous les artefacts pour les procédures de test planifiées, notamment les composants d’application, l’infrastructure et les opérations de plan de données qui font partie d’une version ou d’une mise à jour de fonctionnalités.
Traitez les artefacts comme immuables lorsqu’ils sont promus par le biais d’environnements, en obtenant confiance chaque fois qu’ils passent par une porte de qualité.
Là où c’est pratique, automatisez les case activée de routine.
L’assurance qualité garantit que les exigences fonctionnelles et non fonctionnelles ont été satisfaites avec confiance, ce qui entraîne un impact positif sur le client.
Problématique de Contoso
- La stratégie de test fonctionnel de l’équipe de charge de travail utilise une combinaison de tests automatisés et manuels. Leur approche de test ne couvre pas tous les aspects du système, tels que les performances, la sécurité et la facilité d’utilisation. Ils n’ont pas non plus un moyen cohérent de déployer leur code dans différents environnements de manière entièrement automatisée, ce qui introduit la variabilité et l’incertitude.
- L’augmentation du volume et de la complexité des efforts d’intégration des clients a amplifié les défis de leur stratégie de test, conduisant à des bogues fréquents, à une rework et à l’insatisfaction du client.
Application de l’approche et résultats
- L’équipe de charge de travail s’engage dans l’effort d’améliorer sa stratégie de test et d’augmenter la cohérence et la prévisibilité de ses pipelines de déploiement.
- Ils commencent par créer des plans de test pour chaque fonctionnalité ou personnalisation en cours de développement, couvrant les exigences fonctionnelles et non fonctionnelles. Ils utilisent Azure DevOps pour gérer leurs cas de test, leurs données de test et leurs résultats de test. Ils configurent des portes de qualité dans leurs pipelines de déploiement qui vérifient la qualité du code, la configuration et le déploiement avant de promouvoir les artefacts dans l’environnement suivant.
- Après avoir implémenté ces améliorations, l’équipe constate une diminution du nombre de déploiements ayant échoué, ainsi que du nombre de bogues et d’incidents en production. Par conséquent, la qualité, la vitesse de livraison et la satisfaction des clients ont augmenté considérablement.
Mesurer l’efficacité du développement
Signaler la progression et les tendances pour mesurer l’efficacité. Suivez et signalez les tendances des bogues, des mises à jour ayant échoué, du temps de déploiement et des boucles de commentaires pour améliorer vos pratiques de développement.
Problématique de Contoso
- L’équipe de charge de travail a récemment implémenté plusieurs modifications pour améliorer la qualité et la prévisibilité des processus d’intégration des clients. Toutefois, l’entreprise est confrontée à un défi pour mesurer et signaler l’impact de ces changements. Malheureusement, l’entreprise n’a pas de données ou de métriques fiables pour montrer combien la qualité et la prévisibilité ont amélioré, ou quelles modifications ont contribué à l’amélioration plus que d’autres.
- L’entreprise a besoin d’un moyen de quantifier et de communiquer les avantages de ses investissements de processus, afin qu’elle puisse hiérarchiser ses ressources et ses efforts à l’avenir.
Application de l’approche et résultats
- L’équipe décide de commencer à tirer parti des fonctionnalités de création de rapports dans AzDO, que l’équipe utilise déjà, pour pouvoir quantifier les améliorations au fil du temps et hiérarchiser l’allocation des ressources pour les investissements futurs.
- Ils commencent par utiliser plusieurs rapports prêtes à l’emploi :
- Rapports de vélocité
- Diagrammes de flux cumulatifs
- Tendances des bogues : nombre de bogues créés, résolus et fermés au fil du temps, et comment ils affectent les métriques de qualité.
- Statistiques de déploiement : durée nécessaire à la livraison de logiciels du code à la production et de la comparaison des cibles et des benchmarks.
- L’équipe prévoit également de développer des rapports personnalisés avec des rapports De tableau de bord et Power BI Analytics dans un avenir proche.