Warum nicht an einem Freitag bereitstellen? [geschlossen]

94

Joel erwähnte im StackOverflow-Podcast Nr. 24, dass es die Unternehmensrichtlinie von FogCreek ist, freitags keine Software zu versenden. Er ging jedoch nicht näher darauf ein, warum.

Genau. Bei meinem Arbeitgeber setzen wir am Donnerstagabend ein. Wir haben also Freitag Zeit, um alle Fehler zu beseitigen, die die Qualitätssicherung (QS) verpasst haben.

Mein Manager schlug jedoch vor, die Bereitstellung am Freitagabend durchzuführen, falls die Qualitätssicherung nicht genügend Zeit hat, um die Software vor einer Veröffentlichung zu testen. Ich sage: Was ist mit den Wochenendplänen der Leute? Und wenn wir an einem Freitagabend bereitstellen, müssten wir am Samstag arbeiten, um verpasste Fehler zu beseitigen - was scheiße ist.

Warum also nicht an einem Freitag Software versenden?

* Möglicherweise müssen wir (nicht sicher) diese Annahme treffen: Es gibt ein zentrales Softwareentwicklungsteam in einer Zeitzone, das die zentrale Webanwendung des Unternehmens bereitstellt.

Bill Paetzke
quelle
11
Wenn es mein Prozess wäre, würde es mittwochs bereitgestellt, Mitte der Woche gibt es ein paar Tage, um Probleme vor dem Wochenende zu lösen
CVertex
3
Apple wird normalerweise dienstags bereitgestellt.
Mouviciel
2
Das Schöne an Dienstag ist, dass Sie Montag für Endkontrollen und möglicherweise einen Übungseinsatz haben, damit alle auf der gleichen Seite sind, und Sie den Rest der Woche Zeit haben, sich um alles zu kümmern, was auf Sie zukommt. Bis Freitag wissen Sie, ob Sie an diesem Wochenende arbeiten müssen.
Mike DeSimone
7
Ich verstehe nicht, dass dies nicht mit der Programmierung zusammenhängt. Ist das nicht das Endergebnis der Programmierung der Bereitstellung Ihres Codes?
Womp
1
@womp Wenn ich Ihren Überlegungen folge, geht es bei der Bereitstellung von Code letztendlich darum, einige geschäftsorientierte Anforderungen zu erfüllen. Und dies sollte jede geschäftliche Frage rechtfertigen?
Pascal Thivent

Antworten:

87

Es geht nicht nur um Fehler. Möglicherweise gibt es andere damit verbundene Supportbelastungen: Erklären Sie den Benutzern neue Funktionen und überwachen Sie, ob keine Leistungsprobleme vorliegen.

Eine neue Version bedeutet im Allgemeinen einen kurzen Anstieg der Support-Aktivitäten. Daher ist es eine schlechte Idee, dies so zu planen, dass weniger Personen verfügbar sind (oder wenn mehr Zeit in Anspruch genommen wird).

Jon Skeet
quelle
6
Jon Skeet veröffentlicht jederzeit Code, oder?!
Matt
15
@Matt - Wenn der Tag als Freitag begann, ist dies nicht mehr der Fall, wenn Jon seine Software veröffentlicht. Jon Skeet passt seinen Veröffentlichungsplan nicht an den Kalender an. Der Kalender passt sich seinem Veröffentlichungsplan an.
Newtopian
2
@ Newtopian: Sie haben es mit Chuck Norris gemischt, Jon Skeet ist nur ein Google-Bot
Niteriter
5
@Matt, Korrektur: Jon Skeet kompiliert niemals Code in der Debug-Konfiguration, nur Release. Wenn der Compiler fertig ist, wird der neue Build sofort an Kunden auf der ganzen Welt gesendet. Er mag es so.
2
Mein Studio scheint die schreckliche Angewohnheit zu haben, am Freitag zu starten. Ich kann mit Sicherheit sagen, dass mein Chef die meisten seiner verärgerten Kundenanrufe am Samstag / Sonntag erhält, wenn etwas übersehen wurde. (NIEMALS AM FREITAG STARTEN)
ChristoKiwi
50

Niemals am Freitag einsetzen, weil:

  1. Es ist das Ende der Woche, also sind die Leute weniger scharf
  2. Es ist das Ende der Woche, sodass die Leute nicht zur Behebung von Fehlern zur Verfügung stehen
  3. Es ist das Ende der Woche, sodass die Leute nicht für die Beantwortung von Fragen zur Verfügung stehen
  4. Es ist das Ende der Woche. Warum sollten Sie dann bereitstellen?
Viktor Klang
quelle
1
KIIS - Sie hätten es nicht besser sagen können. ..
R Claven
46

Sie haben so ziemlich Ihre eigene Frage beantwortet. Es ist ein kurzer und süßer Grund: Wenn Sie an einem Freitag versenden und ein Fehler in die Produktion kommt, ist im Allgemeinen niemand da, um ihn zu beheben oder bis zum folgenden Montag mit den Kunden zu sprechen. Das sind im schlimmsten Fall möglicherweise mehrere Tage Umsatzverlust.

Zombat
quelle
1
Hier gilt das gleiche. Ich entwickle interne Software für ein produzierendes Unternehmen, daher habe ich keine externen Kunden. Aber unsere Benutzer arbeiten an Wochenenden und in Nachtschichten, so dass die Bereitstellung am Freitagabend das Schlimmste wäre, was wir tun könnten :-)
Christian Specht
8

Wir vermeiden es, Code am Donnerstag oder Freitag zu veröffentlichen - niemand möchte seinen Freitag damit verbringen, geschäftskritische Fehler herauszufinden, und es besteht die Möglichkeit, dass selbst wenn wir innerhalb eines Tages einen Fix erstellen, es mindestens einen weiteren Tag dauern wird, bis er veröffentlicht werden kann. was bedeutet, dass entweder am Wochenende gearbeitet wird oder erst nächste Woche behoben wird.

Justin
quelle
6

Das hängt von Ihrer Zielgruppe ab. Wir setzen hauptsächlich freitags ein. Unser browserbasiertes Produkt wird weltweit von Kunden verwendet, jedoch hauptsächlich während der Bürozeiten. Das heißt, wir haben keine andere Zeit als Sonntagmorgen, wenn wir sicherstellen wollen, dass wir keine Kunden betreffen (Indien und der Nahe Osten steigen samstags nicht von der Arbeit ab), aber im Allgemeinen "kompromittieren" wir. und Freitag Nachmittag einsetzen.

Wenn wir zuvor an einer Daten-Site gearbeitet haben, auf der wir idealerweise um Dienstag herum neue Dinge bereitstellen wollten, da die Aktivität am Wochenende ihren Höhepunkt erreichte und seltsamerweise am Montag um das Mittagessen herum.

Auf jeden Fall kommt es auf 2 Überlegungen an. 1. Wann ist es für Ihre Kunden am wenigsten störend (wenn es sich um eine Webanwendung handelt) und 2. Wann passt es am besten zum Entwicklerteam, um kritische Fehler schnell zu beheben.

Wenn Sie sich Sorgen machen, dass Ihre Entwickler gegen Ende der Woche schlampig werden, ist Ihre QS-Pipeline möglicherweise zu kurz.

Grubsnik
quelle
4

Wir werden normalerweise dienstags eingesetzt, dann haben wir den Rest der Woche Zeit, um Probleme zu lösen. Es hängt auch ein wenig von der Branche ab. Wenn am Wochenende keine Arbeit stattfindet, ist es möglicherweise in Ordnung, Freitagabend bereitzustellen, aber wenn sie funktionieren, ist dies keine gute Idee.

Dazu sind die Leute freitags (und denken schon an das heiße Date | kaltes Bier | beides) und Tage vor der Abreise in den Urlaub etwas schlampiger ;-)

AndersK
quelle
4

Es hängt wirklich von Ihrer Anwendung ab und davon, wie beschäftigt / kritisch sie am Wochenende ist.

Wir stellen Software normalerweise nicht an einem Freitag bereit, sondern häufig am Samstag oder Sonntag. Wir haben festgestellt, dass der Sonntagmorgen besonders gut ist, um die Auswirkungen einer Veröffentlichung zu minimieren.

Es hängt wirklich davon ab, ob Sie versuchen, die Auswirkungen von Ausfallzeiten, die Sie für Ihre Veröffentlichung benötigen, zu minimieren oder mögliche Fehler zu mindern.

Sie werden keine Fehler sehen, bis Kunden das System tatsächlich verwenden (in den meisten Fällen). Die Bereitstellung an einem Freitag entspricht also der Bereitstellung an einem Montagmorgen, wenn Sie am Wochenende nur eine geringe Auslastung haben.

Auf der anderen Seite werden Dinge wie Online-Shopping am Wochenende häufiger genutzt, sodass Sie auf jeden Fall davon abgeraten werden, eines davon an einem Freitag bereitzustellen.

Dies hängt auch von Ihrer Supportrichtlinie außerhalb der Geschäftszeiten ab. Wenn Sie jemanden auf Abruf haben, der die Software zurücksetzen kann, ist das Risiko geringer. Trotzdem mache ich das lieber während der Arbeitswoche.

Normalerweise setzen wir Dinge von Dienstag bis Donnerstag ein und vermeiden lieber Montag (unseren geschäftigsten Tag) und das Wochenende (wenn ein Fehler unbemerkt bleiben und Probleme verursachen könnte).

MarkR
quelle
4

Sie sollten am Freitag bereitstellen, damit Sie das ganze Wochenende Zeit haben, es zu bereinigen und Fehler zu beheben, bevor der Rest Ihres Teams am Montag Ihre Versehen bemerkt.

JamieL
quelle
3

Ich würde niemals einen Einsatz am Freitag planen, wenn ich nicht auch vorhabe, am Samstag im Büro zu sein, um zu überprüfen, ob er ordnungsgemäß funktioniert. Wenn Sie am Freitag aufgrund eines Ausrutschens eingesetzt werden, besteht die große Gefahr, dass Sie sich beeilen. Es ist weitaus besser, zu warten Lassen Sie alle über das Wochenende beruhigen und versenden Sie am Montag nach einer morgendlichen Überprüfung.

Wenn Ihre Bereitstellung über das Wochenende ausgeführt wird, können Sie ab Freitagabend einen guten Vorsprung haben, da das Büro häufig etwas früher gelöscht wird, sodass die Gesamtsystemlast geringer ist als beispielsweise Montagmorgen.

AndrewB
quelle
2

Ich habe mit einem Unternehmen zusammengearbeitet, das freitags eingesetzt werden sollte. Sie waren in Israel und Samstag ist normalerweise der letzte Tag der Arbeitswoche. Wie auch immer...

In meiner letzten Firma bestand die Richtlinie darin, Ops das Bereitstellungspaket spätestens dienstags und donnerstags zur Mittagszeit zur Verfügung zu stellen. Dies bedeutet, dass sie einen halben Tag Zeit haben, um das Problem zu lösen und geringfügige Anpassungen anzufordern, wenn in der letzten Phase der QS vor dem Live-Betrieb etwas schief geht. (Jede andere Qualitätssicherung kann zu jeder Zeit der Woche stattfinden, da sie nicht live ist.)

Die Freigabe für jede Umgebung außer Live ist zu jeder Zeit in Ordnung, wenn Ops die Zeit dazu haben (natürlich sollte dies ohnehin vorher gebucht werden), aber niemals für die Weitergabe freigeben:

Montag - Schlecht, Sie sind gerade von einem (hoffentlich nicht arbeitenden) Wochenende zurückgekommen und haben nicht alles im Kopf, was Sie letzte Woche getan haben. Mittwoch - Normalerweise der am wenigsten produktive Tag der Woche und der Tag "mitten in der Arbeit". Wenn Ihr Slot Dienstag war und Sie ihn aufgrund von Fehlern verpasst haben, ist Mittwoch wahrscheinlich eine schlechte Wahl, da Sie nicht genügend Zeit zur Verfügung haben, um diese Fehler zu beheben und zu testen. Freitag - Komm schon. Ernsthaft? Es ist Freitag. Wenn dies wirklich erklärt werden muss, sind Sie nicht erfahren genug, um die Art von Führungsposition zu übernehmen, in der Sie sich befinden. Aber im Ernst, weil die Bereitstellung am Freitag bedeutet, dass Sie Ihre Kunden freiwillig am Wochenende einladen, um Ihre Arbeit in einem Leben zu testen Umgebung. Für mich ist das besser als jede Idiotie, für die Sie sich anstellen könnten.

Matt W.
quelle
1
Ich bin damit einverstanden, dass der Versand freitags schlecht ist. Ich wollte, dass die StackOverflow-Community mir solide Gründe gibt, damit ich meinen Manager leicht von jeder Möglichkeit von Freitagsbereitstellungen überzeugen kann. Und hoffentlich hilft dieser Thread anderen Softwareentwicklern wie mir, schreckliche Bereitstellungen am Freitag zu vermeiden :)
Bill Paetzke
0

Wir haben das Glück, den Zeitunterschied gut zu nutzen. Wir haben Büros auf der ganzen Welt verteilt. Wenn wir Aktualisierungen an Kunden vornehmen, arrangieren wir dies so, dass diese über Nacht für den Kunden durchgeführt werden, um die Auswirkungen auf ihn zu minimieren.

Dies funktioniert gut, wenn Sie die Implementierung und Bereitstellung Ihrer Software steuern, die Veröffentlichung auf einer Website jedoch ein weiteres Tier ist. Wie andere bereits betont haben, sollten Sie Zeit für Folgendes einplanen:

  1. Unterstützung von Macken und Fehlern, die auftreten können
  2. Unterstützung der Benutzer bei den Übergängen
  3. Last-Minute-Hotfixes
Newtopian
quelle