Zespół projektuje usługę rezerwacji biletów na festiwal regionalny. System bez problemu radzi sobie z oczekiwanym obciążeniem, a przegląd projektu kończy się akceptacją. Następnie następuje zmiana wytycznych: organizator obiecuje, że sprzedaż biletów musi działać bez zakłóceń, nawet jeśli jedno z centrów danych zostanie wyłączone w trakcie sprzedaży. Ten sam projekt ma teraz pojedynczy punkt awarii, a inżynierowie, którzy go stworzyli, muszą zdecydować, co zmienić, z czego zrezygnować i jak uzasadnić swój wybór.
To przykładowy scenariusz, a nie udokumentowany incydent. To sytuacja, w której kata projektowania systemów jest budowane, aby ją przećwiczyć: projekt, który był dobry przy jednym zestawie ograniczeń, napotyka nowe, a inżynierowie muszą go bronić lub poprawić, uzasadniając to. Ten przewodnik jest przeznaczony dla liderów ds. wsparcia inżynieryjnego i menedżerów ds. inżynierii. Omawia on, czym jest kata projektowania systemów, jak je zbudować, jak je uruchamiać i oceniać oraz w jakich sytuacjach szkolenie przestaje być odpowiedzią. Każdy przypadek i kryterium powinny zostać zweryfikowane przez starszego inżyniera przed ich użyciem.
Czym jest kata projektowania systemu?
System Design Kata to krótkie, ograniczone czasowo ćwiczenie projektowe. Mały zespół otrzymuje jednoakapitowy problem biznesowy, szkicuje architekturę, prezentuje ją kolegom i odpowiada na trudne pytania. W wyszukiwarkach nazywa się to również „architektonicznym kata” lub „architektonicznym kata”. Format ten został zapoczątkowany przez Teda Newarda jako warsztat i jest udokumentowany, wraz z zasadami i rolą moderatora, na stronie Neala Forda poświęconej architektonicznym kata . Motywujące pytanie Newarda, cytowane tam, brzmi: jak organizacje mają rozwijać świetnych architektów, skoro inżynierowie mają szansę projektować mniej niż sześć razy w swojej karierze? Kata daje im dodatkowe powtórzenia bez ryzyka produkcyjnego.
Szybkie fakty
| Question | Krótka odpowiedź |
|---|---|
| Jakie jest zadanie? | Obrona architektury w przypadku zmiany ograniczenia. |
| Jak duża jest grupa? | Oryginalny format zakłada zajęcia w małych grupach składających się z 3–5 osób i pod opieką moderatora. |
| Jaki jest Twój wynik? | Rozumowanie kompromisowe i odpowiedź na nowe ograniczenie, nie jest to najładniejszy diagram. |
| Czy quiz na temat wzorców projektowych wystarczy? | Nie. Potwierdza ona wymagania wstępne, ale nie to, czy inżynier może uzasadnić swój wybór pod presją. |
| Kto potwierdza tę sprawę? | Kierownik ds. inżynierii lub starszy architekt. |
| Czego nie naprawi kata? | Brak uprawnień projektowych, niejasne wymagania i brak czasu na właściwe zaprojektowanie w pracy. |
| Skąd wiesz, że zadziałało? | Nowy, niewidoczny przypadek oceniony według ustalonych kryteriów, plus kontynuacja w postaci rzeczywistych przeglądów projektu. |
1. Opisz problem z wydajnością
Zacznij od zadania, a nie od tematu. Zadanie polega na obronie architektury w obliczu zmieniających się ograniczeń. W praktyce ma to miejsce podczas przeglądów projektu, działań następczych po incydentach i spotkań planistycznych, gdzie zmienia się wymaganie: większy ruch, bardziej rygorystyczna obietnica dostępności, nowa zasada dotycząca rezydencji danych, mniejszy budżet.
Wielu inżynierów potrafi narysować sensowną architekturę. Jeszcze mniej potrafi powiedzieć, co by zmienili, gdyby dwa cele się zderzyły, i jakie dowody mogłyby zmienić ich zdanie. Ta druga umiejętność to właśnie to, co ćwiczy się w kata.
Napisz jednozdaniową deklarację wydajności i poproś kierownika ds. inżynierii o jej sprawdzenie: „Biorąc pod uwagę architekturę i zmienione ograniczenia, inżynier określa, co jest nie tak, proponuje zmianę, określa kompromis i mówi, czego nadal nie wie”.
2. Zdiagnozuj luki w nauce i kontekście
Zanim cokolwiek stworzysz, porównaj zadanie z tym, co Twój program praktykuje i ocenia obecnie.
- Czy ćwiczenie wykorzystuje rzeczywiste zadanie? Jeśli szkolenie uczy wzorców w izolacji, a ocena jest testem wielokrotnego wyboru, to nikt nie ćwiczył obrony swojego wyboru.
- Jakie jest zapotrzebowanie poznawcze? W zrewidowanej taksonomii Blooma porównywanie opcji z ograniczeniami polega na analizie i ocenie, a proponowanie zmienionego projektu osiąga poziom tworzenia. Nasz przewodnik po dopasowywanie działań edukacyjnych do taksonomii Blooma pokazuje jak dopasować aktywność do danego poziomu.
- Czy to coś innego niż umiejętności jest przeszkodą? Sprawdź, czy inżynierowie mają czas na projektowanie, czy ktoś odpowiada za decyzje architektoniczne i czy wymagania są spisane. Jeśli decyzję podejmuje ktoś spoza zespołu, żadne kata nie zmieni tego, co zespół może zrobić. Przekaż te przyczyny osobom, które mogą je rozwiązać.
3. Przygotowanie i praktyka projektowania
Przypisz każdemu etapowi odrębne zadanie.
Przygotowanie. Sprawdź wymagania wstępne za pomocą krótkiej diagnostyki: słownictwo używane przez Twój zespół (dostępność, spójność, opóźnienie, koszt), elementy składowe, których znajomość jest wymagana, oraz własny szablon przeglądu projektu. Nauka we własnym tempie jest odpowiednia na tym etapie, a sprawdzenie pamięci potwierdza jedynie spełnienie wymagań wstępnych.
Ćwicz. Wykonaj samo kata. W formacie opisanym na stronie Neala Forda, po utworzeniu zespołu, ćwiczenie przebiega w trzech fazach: fazie dyskusji, w której zespół ustala, co buduje, fazie recenzji koleżeńskiej, w której każdy zespół prezentuje i odpowiada na pytania, oraz fazie głosowania, w której koledzy dają kciuk w górę („udało się”), kciuk „meh” („przegapiłem kilka rzeczy”) lub kciuk w dół („przegapiłem, i to bardzo”). Niektóre zasady warto zapożyczyć bezpośrednio: zespoły mogą formułować założenia dotyczące nieznanej technologii, ale muszą je wyraźnie określić i nie mogą zakładać, że mogą zatrudnić zespół gwiazd.
Dodaj zmienne ograniczenie. Standardowe kata daje stały problem. Aby wytrenować umiejętność opisaną w tym poradniku, dodaj drugą kartę w połowie: zmienione ograniczenie, które drużyna musi zaakceptować. To nasz wybór projektowy, który nie jest częścią oryginalnych zasad, więc przetestuj go.
Informacja zwrotna. Powiąż informację zwrotną z decyzjami, a nie z wynikiem końcowym. „Przeniosłeś się do dwóch regionów, ale nie powiedziałeś, co stanie się z zamówieniem złożonym podczas zmiany” jest bardziej przydatne niż „3 na 5”.
Wprowadzanie danych na żywo czy asynchroniczna analiza? Facylitacja na żywo przynosi najlepsze efekty, gdy wybór jest niejednoznaczny, a inżynierowie dowiadują się od starszego kolegi, który wyjaśnia, dlaczego podtrzymują swoją decyzję. Asynchroniczna analiza wystarczy, aby porównać pisemne uzasadnienie z opisanym przykładem.
4. Omów realistyczny przykład
Przykład. Starszy inżynier powinien zweryfikować przypadek i kryteria odpowiedzi przed użyciem.
Przypadek. Festiwal regionalny sprzedaje 20 000 biletów w ciągu weekendu, a większość sprzedaży przypada na pierwsze dziesięć minut. Pierwsza wersja briefu dotyczy usługi rezerwacji, która poradzi sobie z tym szczytem. Projekt: jedna platforma internetowa, jedna baza danych, połączenie z dostawcą płatności przy kasie.
Zmienione ograniczenie. W połowie organizator dodaje: sprzedaż musi być kontynuowana, jeśli jedno centrum danych zostanie wyłączone, a bilet nie może zostać sprzedany dwa razy.
Pierwsza próba. „Dodaj drugie centrum danych i zreplikuj bazę danych”. Zespół sięgnął po znany komponent, ale nie wyjaśnił, co dzieje się z zasadą zakazu podwójnej sprzedaży, gdy dwie lokalizacje nie mogą się ze sobą komunikować.
Informacja zwrotna i ponowna próba. Facylitator prosi zespół o wskazanie dwóch celów, które są ze sobą sprzeczne, i wskazanie tego, który z nich chroniliby w przypadku podziału sieci. Ponowna próba prosi o wybranie i opisanie doświadczeń klienta.
Bardziej zdecydowana próba. „Chcielibyśmy chronić zasadę zakazu podwójnej sprzedaży. Podczas podziału, tylko główna strona sprzedaje bilety, a druga strona wyświetla stronę oczekującą. Akceptujemy niższą dostępność przez krótki czas, aby uniknąć dwukrotnej sprzedaży tego samego miejsca. Założyliśmy, że podział jest rzadki i krótkotrwały, i chcielibyśmy, aby organizator potwierdził, że strona oczekująca jest akceptowalna. Jeśli będzie potrzebował sprzedaży w obu miejscach, przydzielimy z wyprzedzeniem oddzielne bloki miejsc dla każdej z nich, kosztem części niesprzedanych miejsc”. Zauważ, że ta odpowiedź nazywa konflikt, wybiera stronę, określa koszt i sygnalizuje to, czego nie wie.
Dlaczego każda odpowiedź jest uzasadniona lub niekompletna? Oceń każdą z nich pod kątem zatwierdzonych kryteriów, a nie preferowanej architektury recenzenta. Pierwsza próba wskazuje komponent, ale nie proponuje kompromisu. Silniejsza próba jest konkretna, określa swoje założenia i oferuje alternatywę wraz z ceną.
5. Ocena zdolności i zaplanowanie przeniesienia
Dowodem na zdolność jest wydajność w nowym przypadku, którego inżynier nie widział. Oceń argumentację kompromisową i reakcję na nowe ograniczenie. Prosta rubryka wykorzystuje skalę od 0 do 2 dla każdego kryterium:
| Kryterium | Obserwowalne dowody |
|---|---|
| Wykonanie zadania | Chroni architekturę przy zmienionych ograniczeniach i rejestruje dowody stojące za decyzją. |
| Rozumowanie | Wyjaśnia istotne ograniczenia, rozważane alternatywy i to, co pozostaje niepewne. |
| Granice | Postępuje zgodnie z zatwierdzonymi procedurami projektowymi i prosi o pomoc w przypadku braku informacji lub upoważnień. |
Kotwice: 0 oznacza brak lub brak wsparcia, 1 oznacza częściowe pominięcie istotnych elementów, a 2 oznacza kompletne i uzasadnione w odniesieniu do uzgodnionych kryteriów. Należy zdefiniować błędy krytyczne osobno, takie jak zignorowanie określonego wymogu bezpieczeństwa lub ochrony danych, aby wynik ogólny nie mógł ich ukryć. Niniejsza rubryka stanowi propozycję, a nie sprawdzony standard gotowości: należy ją dostosować we współpracy z kierownikiem ds. inżynierii i przeprowadzić pilotaż. Nasz przewodnik po projektowaniu interaktywnych praktyk z użyteczną informacją zwrotną zawiera informacje na temat pisania informacji zwrotnych, które odnoszą się do decyzji.
Planuj transfery z rozwagą. Po kata poproś każdego inżyniera o przedstawienie jednej rzeczywistej decyzji projektowej podczas przeglądu i zadaj te same pytania. Bezbłędna ocena poprzedniego incydentu to kolejny dobry pomost do rzeczywistej pracy; zapoznaj się z naszym poradnikiem dotyczącym przeprowadzania bezbłędnych przeglądów incydentów.
Gdzie interaktywna dostawa pomaga
Formaty interaktywne pomagają, gdy każdy powinien się zobowiązać, zanim zobaczy grupę. Podczas sesji kata na żywo, facylitator może pokazać zmienione ograniczenie, poprosić każdego członka zespołu o wpisanie kompromisu, jaki by zawarli i dlaczego, a następnie ujawnić rozkład przed rozpoczęciem dyskusji. Głosowanie koleżeńskie na końcu oryginalnego formatu jest łatwe do przeprowadzenia w ten sam sposób. Ten sam przypadek można przeprowadzić we własnym tempie w celu przygotowania lub dla inżynierów, którzy opuszczą sesję. AhaSlides wspiera interaktywną naukę i przełączanie się między prowadzeniem na żywo a we własnym tempie. Jest to narzędzie do prezentacji i nauki, a nie miejsce do rysowania lub uruchamiania architektury, więc trzymaj diagramy na tablicy lub w swoim narzędziu do projektowania. Sprawdź każdą konkretną funkcję tworzenia, przekazywania opinii lub raportowania, na której planujesz polegać w swoim własnym przepływie pracy. Aby uzyskać wskazówki dotyczące wyboru formatów, zapoznaj się z naszym artykułem na temat tego, kiedy używać adaptacyjnego, interaktywnego i żywego uczenia się.
Zmierz, co się zmieniło
Zdecyduj z wyprzedzeniem, co dowodziłoby, że inżynierowie potrafią bronić architektury przy zmieniających się ograniczeniach. Porównaj argumentację kompromisową w nieznanym przypadku z punktem odniesienia sprzed programu. Określ, kto jest uwzględniany, jaki jest mianownik i jaki jest czas. Jeśli wyniki się poprawią, sprawdź, co jeszcze zmieniło się w tym samym okresie, na przykład nowy szablon przeglądu projektu, zmiana personelu lub incydent, który zwrócił uwagę, zanim zaliczysz szkolenie.
Ograniczenia, które mogą pozostać
- Autorytet projektowy. Jeśli zespół nie podejmie decyzji, jej przećwiczenie będzie miało ograniczony efekt.
- Czas. Kata zajmuje wiele godzin; prawdziwe projekty powstają tygodniami i wymagają danych, których kata nie jest w stanie dostarczyć.
- Relacja ze sprawy. W jednym przypadku chodzi o kilka kompromisów. Wynik nie opisuje ogólnej oceny inżyniera.
- Złożoność. Większa złożoność nie oznacza koniecznie lepszej architektury, dlatego nie nagradzaj największej liczby komponentów.
- Transfer. Dobre wyniki na warsztatach nie są tym samym, co dobre wyniki na napiętym przeglądzie, dlatego sprawdź wyniki po kata, w rzeczywistych warunkach.
Wskaż je sponsorom z wyprzedzeniem i zaplanuj osobne poprawki. Kata poprawia to, co inżynierowie potrafią wyjaśnić i obronić. Nie tworzy autorytetu ani czasu.
PYTANIA I ODPOWIEDZI
Czym jest kata projektowania systemu?
Krótkie, ograniczone czasowo ćwiczenie projektowe, w którym mały zespół szkicuje architekturę problemu biznesowego, prezentuje ją kolegom i odpowiada na trudne pytania. Nazywa się je również kata architektonicznym.
Ile osób powinno być w zespole?
Oryginalny format zakłada małe grupy od 3 do 5 osób, zazwyczaj od 4 do 10 w jednym pomieszczeniu. Grupy powinny być na tyle małe, aby każdy mógł mówić.
Jak oceniasz kata projektowania systemu?
Przedstaw nowy przypadek i oceń uzasadnienie kompromisu oraz odpowiedź na zmienione ograniczenie w odniesieniu do uzgodnionych kryteriów. Głosowanie koleżeńskie jest użyteczną informacją zwrotną, ale samo w sobie nie stanowi oceny.
Gdzie zacząć
Wybierz jedną powtarzającą się w Twojej organizacji decyzję projektową i opisz ją w jednym akapicie. Dodaj zmienione ograniczenie, poproś kierownika ds. inżynierii o zatwierdzenie przypadku i kryteriów odpowiedzi, a następnie stwórz trzykryterialną rubrykę z listą krytycznych błędów. Przeprowadź pilotaż z jednym zespołem przed wdrożeniem.
Aby zobaczyć, jak kata może być wykonywane na żywo z udziałem Twojej drużyny, a następnie ponownie wykorzystane w indywidualnym tempie, zapoznaj się z AhaSlides.








