web-dev-qa-db-fra.com

Développement de synchronisation dans l'arrière-plan vs frontal

Nous avons deux développeurs travaillant sur le même projet. On fait l'avant et l'autre fait le dos.

Tout fonctionne bien, mais nous avons rencontré le développeur en train de faire la fin de l'arrière et de l'obtenir plus rapidement que ce que le développeur frontal travaille. Par conséquent, le devin arrière devient d'aller à d'autres histoires qu'il a besoin de travailler.

Je suppose que c'est bien, mais je ne suis pas sûr de ce qui se passe lorsque le développeur de l'avant se passe et finit par ne pas pouvoir obtenir toutes les histoires, et nous devons nous arrêter parce que le temps a été passé à l'avance à l'arrière Développeur final faisant ses tâches hors de la commande prioritaire.

Devrait-il attendre le développeur d'extrémité arrière jusqu'à ce que le développeur d'extrémité avant se rattrape ou devrait-il continuer?

S'il continue à aller, que faites-vous sur le budget et de ne pas compléter le sprint?

6
Djacobs

Ralentir un travailleur en bas serait un très mauvais choix.

Des choses que je considérerais:

  • Voyez si vous pouvez rééquilibrer la charge de travail. Certaines choses ne sont pas clairement des tâches de bout en bout ou en arrière, et vous pouvez modifier davantage le fardeau du programmeur qui court devant le programmeur.

  • Dans cette même lumière, il n'y a pas de magie sur le front-extrémité par rapport au travail backend: d'autant plus qu'elles partagent un objectif commun (application), une API, etc., vous pouvez envisager d'avoir le programmeur moins occupé à prendre des tâches d'interface utilisateur. Je discuterais avec eux au moins, à la vue s'ils sont ouverts. C'est une chose très personnelle et certaines personnes ne veulent tout simplement pas et d'autres aimeront la chance

  • Apporter une autre ressource d'interface utilisateur pour aider (même si juste à temps partiel).

  • Démarrez le programmateur de backend d'une autre tâche et faites-la avoir divisé du temps entre les deux projets.

En bref - être pragmatique et efficace. N'oubliez pas que Agile (et ses outils/processus) sont juste là pour aider. L'adhésion rigoureuse au dogme ne produira pas de meilleurs résultats que le pragmatisme et la flexibilité.

13
Lewis Pringle

Faites de votre développeur rapide Découvrez comment faire des tâches "frontales".

Les développeurs de fractionnement par langue ou par une expérience familiale ne sont que quelque chose que les ressources humaines pour faciliter la publicité pour les employés.

Dans les développeurs de vie réels, les développeurs sont, ou devraient être, d'apprendre constamment de nouvelles langues, de nouvelles-matières, des outils logiciels, etc.

Ne laissez pas que certains développeurs travailler sur un sous-ensemble de tâches ralentissent votre projet et entravent les développeurs carrières

7
Ewan

Si vous pratiquez Agile, il ne devrait pas y avoir une extrémité frontale et un device de fin de développement, il y a deux devs. Ils peuvent rompre des travaux en fonction de leurs forces et l'arrière de l'arrière peut faire les pièces de fond plus compliquées et inversement, mais elles devraient tous deux être en mesure de se reculer. Le développeur de votre arrière-plan peut ne pas être aussi efficace pour développer des pièces d'extrémité avant, mais les deux sont nécessaires pour obtenir une valeur de la part du projet.

Le concept de la fin de la police ou du développeur de fin de fin est en grande partie obsolète, tout développeur devrait pouvoir apprendre les technologies pertinentes pour devenir compétente. Cela est bénéfique pour vous en tant que gestionnaire/propriétaire de produit, car vous bénéficiez davantage de vos développeurs, et il est avantageux pour les développeurs qui les rendent plus commercialisables et plus potentiels de croissance de carrière.

5
Ryathal

Par conséquent, le devin arrière devient d'aller à d'autres histoires qu'il a besoin de travailler. Je suppose que c'est bien

D'une perspective agile (spécifiquement, Scrum), il n'est vraiment pas bien. L'arrière devint device devrait aider la fin de l'avant à terminer leurs histoires. Par exemple, ils pourraient aider à écrire ou à effectuer des tests, faire une documentation, aider à préparer la démo, etc.

Devrait-il attendre le développeur d'extrémité arrière jusqu'à ce que le développeur d'extrémité avant se rattrape ou devrait-il continuer?

En attente est une option, mais encore une fois, la meilleure solution consiste à aider le développeur arrière pour aider le développeur frontal de la manière possible.

À Agile, l'objectif est d'optimiser pour l'équipe, pas l'individu. La chose importante dans un sprint n'est pas nécessairement de garder tout le monde occupé, mais de livrer un code fini et expédiable.

2
Bryan Oakley

Cela ressemble à une situation très familière.

Au début de ma carrière, j'ai travaillé pour une petite start-up. C'était une équipe de trois personnes. Un développeur d'arrière-plan (un Développeur Saised PHP), un développeur frontal (moi, frais de départ) et un graphiste.

J'étais le développeur lent avant.

Nous ne pratiquons pas agile, mais nous avons trouvé un moyen d'utiliser nos ressources au maximum, qui est la vraie racine de votre question. Le développeur d'arrière-plan se surtoutait inévitablement devant moi. Il a dû connaître suffisamment de "trucs frontales" pour obtenir les informations à l'écran. Il connaissait le HTML de base, et c'était suffisant pour vérifier la sortie. Plus tard, je viendrais entrer et réécrire complètement la couche d'interface utilisateur. Si une matière Ajax-y était nécessaire, nous avons conçu et convenu à l'avance. Nous avons traité AJAX appelle comme tout autre appel d'API entre serveur et client - vous devez y penser à l'avance.

Alors, laissez tous les travaux à leur propre rythme. Conception à l'avance, les développeurs de l'arrière-temps et de l'extrémité frontale connaissent les structures de données avant le début du travail, puis tournez-les des lâches. On dirait que votre défi consiste à suivre le développeur d'arrière-plan, sans accélérer le développeur d'extrémité avant. La vitesse vient avec la pratique.

Les histoires sont donc terminées dans des périodes plus longues. Séparez les histoires en plus petites (Waaaaaaaaay plus petit) pour limiter le travail en cours, allonger vos sprints ou viennent de vivre avec elle. Lequel vous choisissez est hors de propos, tant que les personnes travaillent constamment, et le logiciel de travail est en cours de livraison. C'est le véritable esprit de développement agile.

1
Greg Burghardt