Oszacowanie harmonogramu wdrażania flagi funkcji
Jak oszacować wdrażanie flagi funkcji: procentowe etapy, 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 audytowej, 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łym elementem. Zespoły, które nie planują przeprowadzenia tej operacji porządkującej, 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: „Zabezpieczenie wywołania za pomocą flagi – wystarczy kilka wierszy kodu”.
SRE: „Który wskaźnik wskazuje, że wdrażanie przebiega nieprawidłowo?”
PM: „W przypadku których grup najpierw włącza się ten wskaźnik?”
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 głosowaniem
- Sposób wdrożenia: Linear, oparte na kohortach czy przełączenie typu boolowskiego?
- Wartość domyślna w przypadku awarii usługi flagowej: dotychczasowe zachowanie czy nowe?
- 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 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.
Zobacz szacowanie wdrażania ograniczenia szybkości w odniesieniu do tego samego schematu „wdrażanie pochłania pracę” oraz inne przykłady sprawdzonych szacunków. Rozpocznij bezpłatną sesję planowania pokerowego, gdy fazy zostaną nazwane.