10
votes

Gestion des tâches de déploiement et de configuration dans Scrum

Vous vous demandez simplement comment les autres détruisent des tâches de gestion ne sont pas directement liées à la réalisation d'histoires d'utilisateurs telles que la configuration du serveur et le déploiement d'applications (dans un environnement d'application Web). Auparavant, j'ai inclus ces activités dans la rupture de tâche d'un article d'archette de produit, mais l'effort a tendance à se perdre parmi d'autres tâches directement liées à la réalisation des exigences de l'utilisateur.

Les autres créent-ils un arriéré de produit dédié pour ce type de travail? Ou roulez-le dans les exigences existantes sous la guise de «nécessaire pour être potentiellement expédiable»? Ou n'incluez-vous même pas cela dans un plan de sprint? Intéressé par des approches différentes. Merci!


1 commentaires

Cette question est hors sujets car ce n'est pas dans la portée de ce site, tel que défini dans Quels sujets puis-je poser ici? aussi Voir: quels types de questions dois-je éviter de demander? Vous pourrez peut-être demander sur Un autre site d'échange de pile , par exemple gestion de projet ou Génie logiciel . Assurez-vous de lire la page sur le sujet dans le centre d'aide pour tout site sur lequel vous avez l'intention de poster une question.


6 Réponses :


2
votes

Je ne comprends pas "perdu" dans la question. C'est le travail que vous devez faire. Alors, comment peut-il être perdu?

La "théorie" derrière agile est que vous avez une infrastructure mature.

Il existe deux problèmes d'infrastructure distincts.

  • Création de nouvelles infrastructures.

  • Utilisation de l'infrastructure existante.

    Lors de la création d'une nouvelle infrastructure, nous construisons l'exploration dans les premières sprints. Vous ne pouvez pas programmer cela. Vous ne pouvez pas prédire les divers chemins, barrages routiers, pièges, pièges et pièges dans cette situation. Cela nécessite d'apprendre. N'essayez pas de prédire le temps nécessaire pour établir une nouvelle infrastructure. Des trucs iront mal. Si ce n'est pas le cas, l'infrastructure n'est pas vraiment "nouvelle" - c'est un clone ou copie.

    Utilisation de l'infrastructure existante - Configuration du serveur et déploiement - se produit avec chaque version, nous les faisons aussi souvent que possible.

    Certaines choses (comme notre nouveau pare-feu) ont jeté de véritables complexités dans certaines sorties.

    Mais en général, configuration et déploiement - comme une infrastructure mature - sont fondamentales. Ils font déjà partie de votre processus. Vous les faites déjà. Comment peuvent-ils être "perdus"?

    Que voulez-vous dire par "effort a tendance à se perdre"? Que signifie "perdu"? Tu savais que tu devais le faire. Tu l'as fait. Qu'est-ce qui est perdu?


    éditer. L'idée que cette fois est "perdue" ou "non visible" ou un "impact" ou autre chose que d'autres que l'activité que d'habitude n'a aucun sens, malgré tous les commentaires.

    Ceci est juste des choses que vous faites. Cela fait partie de la libération. C'est juste du travail, comme le développement, que vous venez de faire.

    "Une journée de migration est longue" mais si c'est ce qu'il faut, alors c'est ce qu'il faut. Vous le permettez simplement. C'est simplement une tâche que vous faites avec chaque libération.

    Si l'horaire est sacré - et le jour de la migration est un "problème" - vous devez demander qui a le "problème" et quel "problème" ont-ils? Est-ce un problème de chef de projet? Si tel est le cas, l'horaire a trompé l'ensemble de fonctions livrées et que le gestionnaire de projet doit repenser leur vision de la réalité. Le jeu de fonctionnalités de l'utilisateur est réel. L'horaire n'est qu'une bonne idée qui n'a pas toujours fonctionné.


3 commentaires

"Perdu" n'est probablement pas le bon mot. Peut-être "pas enregistré" ou "difficile à rendre compte" quand il n'existe pas comme une tâche explicite. Point pris à propos d'être fondationnel, mais si un déploiement consomme du temps significatif, disons parce qu'il existe des dépendances sur les processus de gouvernance, et cela finit par être un jour de travail, si cet effort n'a pas d'estimation et sa propre tâche dans un sprint?


Un jour? Combien de temps sont vos sprints? 2 semaines? Ensuite, c'est 10%. Peut-être que quelqu'un se soucie. Si vos sprints sont de 4 à 6 semaines; Ensuite, c'est 5%. Bruit.


Généralement, les sprints sont quelques semaines et nous essayons généralement d'obtenir des efforts et des estimations sur le point de vue (évidemment!), Donc 10% est remarquable. Une journée de migration est longue et certainement ce n'est pas toujours le cas. Le cadeau en termes de pourquoi il pourrait s'agir de cette longue est qu'il s'agit d'un environnement "d'entreprise", de sorte que des documents, des approbations, des processus, etc., etc.



4
votes

Nous avons une liste de tâches distincte pour des tâches telles que l'administration du serveur et planifiez nos dates livrables autour de cela. Par exemple, grâce à l'expérience, je sais que je passerai environ 2 heures par jour à faire des tâches administratives. Ainsi, lorsque je dis à mon chef de projet que quelque chose prendra 4 heures, il ajoute automatiquement environ 2 heures à la date livrable et permet au PDG le savoir prendra 6 heures (ou 1 jour de travail).

Alternativement, certaines tâches "administratives" sont des pré-requis pour obtenir des projets livrables effectués. Par exemple, si un projet inclut la ré-écrivie une partie lente de notre site Web pour être plus efficace et une partie du problème est que nos serveurs ne sont pas mis en place pour utiliser MemCached dont nous avons besoin, puis configurer et configurer MemCached devient un Projet pré-requis pour réécrire le code. La raison pour laquelle il n'est pas roulée est parce que lorsque nous avons mis en place une mise en cache correctement, la partie intensive du site peut être suffisamment bien fonctionner pour que nous souhaitions insérer un autre projet important à la vente au préalable. Cela le garde agile.

Je pense que cela est pertinent: http://joelonsoftware.com/articles/setyourpriorities.html - spécifiquement vers la fin où il décrit sa méthode de priorité aux caractéristiques.

Cet article sur la planification basée sur des preuves semble également pertinent: http: // joelonsoftware. Com / Eléments / 2007/10 / 26.HTML


0 commentaires

0
votes

Nous utilisons deux approches. Des choses comme le déploiement de l'application sont incluses dans User Story Lifetime. L'histoire est faite quand elle est déployée.

Si nous avons des tâches autonomes non liées à l'histoire spécifique (par exemple la configuration de nouvel environnement de test, mais changer l'architecture va également à cette catégorie) nous les ajoutons simplement comme une autre "histoire". Je sais que ce n'est pas vraiment une histoire d'utilisateur, mais nous travaillons sur ceux-ci de la même manière. Quelqu'un doit faire du travail, quelqu'un d'autre vérifie si cela fonctionne bien ou non, etc.


0 commentaires

2
votes

Tout le monde peut ajouter à l'arriéré du produit, y compris les développeurs, mais sa décision de propriétaires de produits sur le point de savoir si le travail se produit.

Donc, si vous avez un nouvel environnement de production à construire, ajoutez-le à l'arriéré du produit, dans la réunion de planification Scrum, vous pouvez expliquer à votre propriétaire de votre produit l'importance relative, elles peuvent décider que cela devrait être effectué maintenant ou ultérieurement. (La même chose s'applique au déploiement et / ou à la configuration d'une application)

Si vous avez une tâche de refacteur qui améliorera la vitesse de l'application, ajoutez-la à l'arriéré du produit et que le propriétaire du produit peut décider de l'importance relative et que ce soit fait maintenant ou plus tard.

Si vous avez une tâche de refacteur qui a est à faire pour permettre au développement de continuer correctement, je devinerais qu'il y a quelque chose dans l'arriéré du produit que ce refacteur pourrait tirer sur et les estimations pour cet article d'arriéré devrait refléter cela.


0 commentaires

7
votes

Pour qu'une histoire soit considérée comme "faite", elle doit être expédiable, qui inclut non seulement testé mais également déployée et configurée.

Si vous avez déjà établi l'infrastructure déjà établie, cela devrait être inclus dans vos estimations pour l'histoire.

Si vous n'avez pas l'infrastructure, la construction du script de construction et du système de déploiement est une histoire à part entière: sauf que le "client" ici est un développeur ou un gars d'infrastructure, pas un développeur. Donc:

En tant que développeur, je dois déployer l'application XYZ et vérifier qu'elle passe ses tests fonctionnels afin que nous puissions considérer d'autres histoires comme complètes.

serait une histoire parfaitement acceptable dans ce contexte.

Une fois que vous avez quelques-unes de ces histoires sous vos courroies, vous saurez combien de temps ils prennent généralement. L'estimation des histoires ultérieures est alors beaucoup plus facile.


0 commentaires

0
votes

Nous avons des types d'activité de tâche à Redmine où nous définissons le type de l'activité de travail lorsque nous terminons / terminer. Ces types d'activités d'élément de travail comprennent des activités d'équipe régulières telles que le développement, le test, la documentation, etc., mais ils incluent également des activités telles que des exigences, un déploiement, une conception, une analyse, etc. Nous marquons nos activités avec eux et, plus tard, nous pouvons analyser nos efforts aussi selon ceux-ci. Types d'activités.


0 commentaires