Oszacowanie harmonogramu wdrażania flagi funkcji
Jak oszacować wdrożenie flagi funkcji: etapy procentowe, mechanizmy awaryjne, wskaźniki kontrolne oraz porządkowanie, którego nikt nie planuje. Flaga to niewielki produkt, a nie wdrożenie.
W tej historii wprowadza się flagę, ale zapomina o usunięciu, wskaźnikach i wyłączniku awaryjnym.
Flag funkcji nie jest mechanizmem wdrażania; to niewielki produkt. Wymaga on ustawienia domyślnego, ścieżki nadpisywania, ścieżki audytu, wyłącznika awaryjnego oraz planu wycofania. Większość z tych elementów brakuje w pierwotnym zgłoszeniu, które zazwyczaj brzmi: „zapakuj to w flagę”. To zgłoszenie stanowi punkt kontrolny, a nie samą funkcję.
W kosztorysie należy uwzględnić etapy wdrażania (1% → 10% → 50% → 100%), wskaźniki decydujące o tym, czy w danym etapie należy zwiększyć skalę wdrożenia, czy je cofnąć, a także zgłoszenie porządkujące, które usuwa flagę po tym, jak funkcja stanie się stała. Zespoły, które nie planują tego zadania porządkującego, w ciągu roku dostarczają kod pełen nieaktywnych flag, co samo w sobie stanowi dług operacyjny.
O czym się mówi w tym pomieszczeniu
Backend: „Zawiązanie wywołania w flagę – to tylko kilka wierszy kodu”.
SRE: „Który wskaźnik wskazuje, że wdrażanie przebiega nieprawidłowo?”
PM: „W przypadku których grup zostanie ta opcja włączona jako pierwsza?”
Wstęp: „Kto zdejmuje flagę, gdy osiągniemy 100%, i kiedy to nastąpi?”
Backend: „Czy istnieje wyłącznik awaryjny niezależny od tego znacznika?”
Pytania, które warto zadać przed oddaniem głosu
- Sposób wdrożenia: Linear, oparte na kohortach czy przełączenie typu boolowskiego?
- Wartość domyślna w przypadku awarii usługi flag: stare czy nowe zachowanie?
- Wskaźniki decydujące o przejściu do kolejnego etapu: co oznacza, że „wszystko przebiega pomyślnie”?
- Czy ścieżka działania mechanizmu awaryjnego jest niezależna od systemu flag?
- Zlecenie usunięcia: sporządzić z wyprzedzeniem czy „zajmiemy się tym później”?
- Ścieżka audytu: kto zmienił status, kiedy i dlaczego?
Rozwiązanie jest takie samo jak w przypadku większości zadań związanych z wdrażaniem: należy podzielić wdrożenie, stopniowe wprowadzanie zmian oraz działania porządkowe na odrębne zadania, a także utworzyć zgłoszenie dotyczące usunięcia, zanim zapomną Państwo o jego istnieniu.
Flaga to niewielki produkt. Proszę oszacować fazę rozruchu, wskaźniki związane z uruchomieniem oraz prace porządkowe, a nie tylko sam proces zakończenia projektu.
Proszę zapoznać się z artykułem „Szacowanie wdrażania ograniczenia szybkości” w odniesieniu do tego samego schematu „wdrażanie pochłania pracę” oraz z innymi praktycznymi przykładami szacowania. Proszę otworzyć bezpłatną sesję planowania pokerowego po nadaniu nazw poszczególnym fazom.