Nous avons deux équipes agiles distinctes, chacune travaillant sur des applications distinctes, mais liées.
Jusqu'à présent, chaque équipe était capable de travailler de manière indépendante (bases de code distinctes, magasins de persistance, sprints, backlogs, etc.). Récemment, la gestion des produits a décidé que ces applications seraient encore plus étroitement intégrées. D'un autre côté, la taille de chaque équipe (composée de QA, Devs, BAs) augmentera au cours des 6-12 prochains mois.Une façon agile et conviviale d'intégrer deux applications/équipes distinctes
La direction a décidé de garder le processus agile en grande partie intact, car il a bien fonctionné (deux équipes travaillant de manière indépendante autant que possible), mais a suggéré l'intégration des applications.
Dans chaque sprint, tout sujet nécessitant une intégration avec l'autre application sera identifié. À ce stade, une histoire d'intégration supplémentaire sera ajoutée au carnet de commandes des autres équipes. Cette équipe sera ensuite chargée de l'exécution du contrat. En attendant, l'autre équipe peut continuer son travail d'histoire original, en substituant un service faux/faux jusqu'à ce que l'autre équipe produise un service de travail.
Depuis Agile prêche une philosophie KISS, plusieurs personnes dans les équipes ont contesté la «complexité» de cette approche. Ils préconisent de continuer à utiliser le partage de procédures stockées comme une méthodologie d'intégration plus simple et plus simple qui «a bien fonctionné dans le passé». Je préfère la programmation par contrat pour toutes sortes de raisons, mais la raison principale est sa capacité à fournir une visibilité dans le temps de compilation du comportement que votre application est censée fournir. Vous avez également des limites claires autour de qui possède quel code, et dont vous risquez de casser le code si vous rompez votre contrat. Les procédures stockées ne font rien de tout cela. Comme nous avons déjà récolté de nombreux avantages de l'agilité, je voudrais penser qu'il existe déjà un moyen "agile-friendly" pour faire face à ce genre d'intégration/synchronisation d'applications. La création d'une couche SOA basée sur un contrat répond-elle au test d'odeur agile? Y a-t-il une troisième option que je n'ai pas envisagée?
Cette question est hors-sujet car elle ne fait pas partie de la portée de ce site, tel que défini dans [Quelles questions puis-je poser à propos de cette fonctionnalité?] (// stackoverflow.com/help/on-topic) Voir aussi: [Quoi types de questions dois-je éviter de demander?] (// stackoverflow.com/help/dont-ask) Vous pouvez demander sur [un autre site Stack Exchange] (// stackexchange.com/sites#name), par exemple [ pm.se] ou [softwareengineering.se]. Assurez-vous de lire la page sur le sujet dans le centre d'aide pour tout site sur lequel vous souhaitez poser une question. – Makyen