Joel a mentionné dans le podcast StackOverflow # 24 que la politique de la société FogCreek est de ne pas expédier de logiciel le vendredi. Cependant, il n'a pas expliqué pourquoi.
Je suis d'accord. Chez mon employeur, nous sommes déployés le jeudi soir. Nous avons donc vendredi pour nettoyer tous les bogues qui ont manqué l'assurance qualité (QA).
Cependant, mon responsable a suggéré que nous déployions le vendredi soir au cas où le contrôle qualité n'aurait pas assez de temps pour tester le logiciel avant une version. Je dis, qu'en est-il des projets de week-end des gens? Et si nous nous déployons un vendredi soir, nous devrons travailler samedi pour nettoyer tous les bogues manqués - ce qui est nul.
Alors pourquoi ne pas expédier le logiciel un vendredi?
* Nous pourrions (pas sûrs) avoir besoin de faire cette hypothèse: il y a une équipe de développement logiciel de base située dans un fuseau horaire déployant l'application Web principale de leur entreprise.
la source
Réponses:
Ce n'est pas seulement une question de bugs. Il peut y avoir d'autres fardeaux de support connexes - expliquer les nouvelles fonctionnalités aux utilisateurs, surveiller qu'il n'y a pas de problèmes de performances.
Une nouvelle version signifiera généralement un bref pic d'activité de support - donc planifier cela quand il y a moins de personnes disponibles (ou lorsqu'il y a plus de ressentiment du temps pris) est une mauvaise idée.
la source
Ne jamais déployer le vendredi car:
la source
Vous avez pratiquement répondu à votre propre question. C'est une raison courte et douce: si vous expédiez un vendredi et qu'un bogue entre en production, il n'y a généralement personne pour le réparer ou parler aux clients jusqu'au lundi suivant. Cela représente potentiellement plusieurs jours de perte de revenus dans le pire des cas.
la source
Nous évitons de publier du code le jeudi ou le vendredi - personne ne veut passer son vendredi à déterminer les bogues critiques pour la mission, et il est probable que même si nous produisons un correctif en 1 jour, il faudra au moins un autre jour avant qu'il ne puisse être publié, ce qui signifie soit travailler le week-end, soit il ne sera réparé que la semaine prochaine.
la source
Cela dépend de votre groupe cible. Nous déployons principalement les vendredis. Notre produit basé sur un navigateur est utilisé dans le monde entier par les clients, mais principalement pendant les heures de bureau. Cela signifie que nous n'avons pas vraiment de temps autre que le dimanche matin si nous voulons nous assurer que nous n'affectons aucun client (l'Inde et le Moyen-Orient ne quittent pas le travail de bureau le samedi), mais généralement nous «faisons des compromis» et déployer les vendredis après-midi.
Si précédemment travaillé sur un site de rendez-vous où nous voulions idéalement déployer de nouvelles choses vers mardi, car l'activité a culminé autour du week-end et étrangement, le lundi autour du déjeuner.
Quoi qu'il en soit, cela se résume à 2 considérations. 1. Quand cela sera-t-il le moins perturbateur pour vos clients (s'il s'agit d'une application Web) et 2. Quand sera-t-il le mieux adapté à l'équipe de développement pour la résolution rapide des bogues critiques.
Si vous craignez que vos développeurs deviennent bâclés vers la fin de la semaine, votre pipeline QA est peut-être trop court.
la source
Nous déployons normalement les mardis, puis nous avons le reste de la semaine pour nous attaquer à n'importe quel problème. Cela dépend aussi un peu de l'industrie, s'il n'y a pas de travail le week-end, il est peut-être possible de déployer le vendredi soir, mais s'ils fonctionnent, ce n'est pas une bonne idée.
Pour cela, les gens ont tendance à être un peu plus bâclés les vendredis (en pensant déjà à cette date chaude | bière froide | les deux) et les jours avant de partir en vacances ;-)
la source
Cela dépend vraiment de votre application et de son niveau d'occupation / critique le week-end.
Nous ne déployons généralement pas de logiciel le vendredi, mais le faisons souvent le samedi ou le dimanche. Nous avons trouvé que le dimanche matin était particulièrement utile pour minimiser l'impact d'une sortie.
Cela dépend vraiment de savoir si vous essayez de minimiser l'impact de tout temps d'arrêt dont vous avez besoin pour faire votre publication, OU d'atténuer les bogues potentiels.
Vous ne verrez aucun bogue tant que les clients n'utiliseront pas réellement le système (dans la plupart des cas), donc un déploiement un vendredi équivaut à un déploiement un lundi matin, si votre utilisation est faible le week-end.
D'un autre côté, des choses comme les achats en ligne ont tendance à être plus utilisées le week-end, vous serez donc certainement déconseillé d'en déployer un le vendredi.
Cela dépend également de votre politique d'assistance en dehors des heures d'ouverture. Si vous avez quelqu'un sur appel qui peut annuler le logiciel, le risque est moindre. Pourtant, je préfère le faire pendant la semaine de travail.
Nous déployons généralement des trucs du mardi au jeudi, préférant éviter le lundi (notre jour le plus chargé) et le week-end (quand un bug pourrait passer inaperçu et causer des problèmes)
la source
Vous devriez déployer le vendredi afin que vous ayez tout le week-end pour le nettoyer et corriger les bogues avant que le reste de votre équipe ne remarque vos oublis lundi.
la source
Je ne planifierais jamais un déploiement le vendredi sauf si je prévoyais également d'être au bureau samedi pour vérifier que cela fonctionne correctement, si vous finissez par vous déployer un vendredi à cause d'un dérapage, vous êtes en grand danger de précipiter les choses, il vaut mieux attendre. , laissez tout le monde se calmer pendant le week-end, puis expédiez le lundi après un examen du matin.
Si votre déploiement se déroule pendant le week-end, le fait de commencer le vendredi soir peut vous donner une bonne longueur d'avance, car souvent le bureau s'effacera un peu plus tôt, de sorte que la charge globale du système sera inférieure à celle du lundi matin, par exemple.
la source
J'ai travaillé avec une entreprise qui avait une politique de déploiement le vendredi; ils étaient en Israël et le samedi est généralement le dernier jour de la semaine de travail. En tous cas...
Dans ma dernière entreprise, la politique était de fournir à Ops le package de déploiement au plus tard à midi les mardis et jeudis. Cela signifie qu'ils ont une demi-journée pour le sortir et demander des ajustements mineurs si quelque chose ne va pas avec la dernière phase du contrôle qualité pré-direct. (Tout autre contrôle qualité peut avoir lieu à tout moment de la semaine car il n'est pas en direct.)
La libération dans n'importe quel environnement, sauf en direct, convient à tout moment, si les Ops ont le temps de le faire (bien sûr, cela devrait être réservé à l'avance de toute façon) mais ne relâchez jamais pour vivre:
Lundi - Mauvais, vous venez de rentrer d'un week-end (espérons-le sans travail) et vous n'aurez pas tout ce que vous avez fait la semaine dernière en tête. Mercredi - Habituellement le jour le moins productif de la semaine et se situe comme le «milieu de la journée de travail». Si votre emplacement était mardi et que vous l'avez manqué à cause de bugs, mercredi est probablement un mauvais choix car vous ne donnez pas assez de temps pour corriger et tester ces bogues. Vendredi - Allez. Sérieusement? C'est vendredi. Si cela a vraiment besoin d'être expliqué, c'est que vous n'êtes pas assez expérimenté pour occuper le type de poste de direction dans lequel vous vous trouvez. Mais sérieusement, c'est parce que déployer le vendredi signifie proposer à vos clients de venir le week-end pour tester votre travail en direct environnement. Pour moi, cela bat toute idiotie pour laquelle vous pourriez vous aligner.
la source
Nous avons la chance de faire bon usage du décalage horaire, nous avons des bureaux répartis dans le monde entier. Ainsi, lors de la mise à jour des clients, nous les organisons de manière à ce que cela se fasse du jour au lendemain pour le client afin de minimiser l'impact sur eux.
cela fonctionne bien lorsque vous contrôlez la mise en œuvre et le déploiement de votre logiciel, mais la publication sur un site Web est un tout autre animal. Comme d'autres l'ont déjà souligné, assurez-vous de prévoir du temps pour:
la source