Ocena 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 zwykłe 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 audytowej, wyłącznika awaryjnego oraz planu wycofania. Większość z tych elementów nie została uwzględniona 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łym elementem. 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: „Opakowanie wywołania w flagę — kilka wierszy kodu”.
SRE: „Który wskaźnik wskazuje, że wdrażanie przebiega nieprawidłowo?”
Premier: „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: split należy podzielić wdrożenie, stopniowe wprowadzanie zmian oraz działania porządkowe na osobne zadania, a także utworzyć zgłoszenie dotyczące usunięcia, zanim zapomni Pan 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.
Zobacz szacowanie wdrożenia ograniczenia szybkości w odniesieniu do tego samego schematu „wdrożenie pochłania pracę” oraz inne przykłady udanych szacowań. Rozpocznij bezpłatną sesję planowania pokerowego, gdy fazy zostaną nazwane.