Mon entreprise est en pleine transition d'un développement de type cascade vers Agile / Scrum. Entre autres choses, on nous dit que nous nous attendons à avoir de nouvelles fonctionnalités de travail, testables (par QA) à la fin de chaque journée.
La plupart de nos développeurs perdent environ 2 heures par jour à cause des réunions et autres frais généraux d'entreprise. Cela signifie que dans une période donnée de 6 heures (au mieux), nous devons concevoir, écrire, tester unitaire, construire et déployer (avec les notes de publication) suffisamment de code pour produire une fonctionnalité complète avec laquelle QA pourra jouer. Je comprends que les notes de build / déploiement / version pourraient être automatisées avec une configuration CI appropriée, mais nous n'en sommes pas encore là.
Nous avons également un important contingent offshore qui écrit notre code côté serveur, et le décalage horaire de 12 heures rend cela encore plus difficile.
Nous essayons de classer les histoires en tranches verticales étroites et profondes afin de terminer les fonctionnalités de bout en bout aussi rapidement que possible, mais la plupart des jours sont plutôt frénétiques et j'attrape souvent des gens qui prennent des raccourcis stupides et fragiles pour s'assurer que le contrôle qualité a sa propre construction. Ce problème est aggravé après qu'un sprint a été en cours pendant quelques jours, lorsque les défauts inévitables commencent à rouler et doivent s'insérer dans la même fenêtre de 6 heures.
Est-ce un rythme normal pour les équipes Agile? Même si nous parvenons à mettre en œuvre une configuration CI, je ne vois pas comment nous serons en mesure de maintenir ce rythme tout en créant des logiciels de qualité.
Edit: Il y a plusieurs bonnes réponses ici. Cela m'a fait réaliser que ce que je demandais vraiment, c'est si les équipes Agiles devaient fournir de nouvelles fonctionnalités quotidiennement. J'ai mis à jour le titre en conséquence.