Close

Topologie zespołów

Jak cztery podstawowe topologie wpływają na transformację DevOps.

Ian Buchanan

Główny inżynier ds. rozwiązań

Opracowanie redakcyjne: Shana Vu

Dowiedz się więcej o zaletach zespołów dopasowanych do strumienia oraz o tym, jak współpracują one z zespołami platformowymi, zespołami ds. podsystemów i zespołami wspierającymi, aby dostarczać wartość klientom.

Wprowadzenie do topologii zespołów


Zespoły inżynierskie muszą działać szybciej niż kiedykolwiek wcześniej, aby zapewnić wartość swoim klientom. Rozwój chmury, SaaS i zawsze dostępnych usług oznacza, że klienci oczekują nowych funkcji, mniejszej liczby błędów i dostępności na poziomie 99,99% (lub więcej).

Aby sprostać tym wymaganiom, organizacje stosują praktyki Agile, a ostatnio także praktyki DevOps, które dają możliwość szybszego wprowadzania produktów na rynek / skrócenia czasu wdrażania, poprawy częstotliwości wdrażania, doskonalenia kultury zespołowej oraz pogłębiania współpracy między zespołami i działami.

Wdrożenie praktyk DevOps nie jest łatwe. Na szczęście książka Team Topologies proponuje odkrywcze sposoby na włączenie DevOps w strukturę swojej firmy, wskazując między innymi, jakie typy zespołów mogą okazać się najskuteczniejsze. Ta książka stanowi punkt wyjścia dla podejścia do zespołów, jakie prezentuje Atlassian. Zamiast powtarzać zawarte w niej wnioski, chcemy podzielić się własną perspektywą na temat typów zespołów.

Pierwszym krokiem w kierunku transformacji DevOps jest identyfikacja aktualnej struktury organizacyjnej. Jednak w każdej współczesnej firmie istnieje wiele różnych typów zespołów, a w niektórych przypadkach pojedyncze zespoły przejmują wiele ról i obowiązków. Ten brak spójności sprawia, że kierownictwu trudno jest zwizualizować pełny krajobraz organizacyjny i odpowiedzieć na takie pytania jak:

poznaj rozwiązanie

Narzędzia DevOps dla całego zespołu

materiały pokrewne

Tworzenie kultury DevOps

  • Czy dysponujemy odpowiednimi zespołami?
  • Czy w pewnych obszarach są luki, których nie wypełnia żaden zespół?
  • Czy zespoły mają zapewnioną niezbędną równowagę między autonomią a wsparciem ze strony innych zespołów?

Kierownicy ds. programowania i operacji mogą dokładniej ustalić, czy dysponują odpowiednimi zespołami, jeśli spojrzą na organizację przez pryzmat topologii zespołów. Zalecamy ograniczenie liczby wariantów zespołów do czterech podstawowych kategorii, które są bardziej przystępne zarówno dla wyższego kierownictwa, jak i dla samych członków zespołu:

  • Zespół dopasowany do strumienia
  • Zespół platformowy
  • Zespół ds. skomplikowanego podsystemu
  • Zespół wspierający

Należy pamiętać, że te typy zespołów przybierają różne formy w zależności od wielkości i dojrzałości firmy. Często najlepszym wyjściem jest połączenie więcej niż jednego rodzaju zespołu lub przekształcenie zespołu w inny.

1. Zespół dopasowany do strumienia


Zespoły dopasowane do strumienia koncentrują się na jednym, znaczącym strumieniu pracy. Może to być pojedynczy produkt lub usługa, pojedynczy zestaw funkcji czy też pojedyncza podróż lub persona użytkownika. Zespół ma możliwość budowania i dostarczania wartości dla klienta lub użytkownika tak szybko, bezpiecznie i niezależnie, jak to możliwe, bez konieczności przekazywania części pracy innym zespołom.

Ponieważ zespoły dopasowane do strumienia pracują nad pełnym spektrum dostarczania, z konieczności działają one bliżej klienta i zazwyczaj korzystają już z metodyki Agile. Ten zespół uwzględnia opinie klientów w cyklach tworzenia oprogramowania, jednocześnie utrzymując jego wersję produkcyjną.

Podczas gdy zespoły dostosowane do strumienia są powszechnie spotykane w firmach programistycznych, inne organizacje mogą być bardziej zaznajomione ze strukturami zespołów zorganizowanych według funkcji (np. oddzielne zespoły ds. inżynierii, projektowania, kontroli jakości), a nie strumienia dostaw.

Ponieważ zespoły dopasowane do strumienia są najczęstszym typem zespołu w organizacjach, to w odniesieniu do nich definiowana jest rola innych zespołów. Zespoły dostosowane do strumienia powinny regularnie kontaktować się z zespołami, z którymi współpracują (zespoły ds. skomplikowanego podsystemu, wspierające i platformowe) w celu ciągłej poprawy szybkości dostarczania i jakości swoich produktów oraz usług.

2. Zespół platformowy


Zespoły platformowe umożliwiają zespołom dopasowanym do strumienia realizowanie zadań przy znacznej autonomii. O ile zespół dopasowany do strumienia zachowuje pełną kontrolę nad tworzeniem, utrzymywaniem i naprawianiem aplikacji na etapie produkcyjnym, zespół platformowy zapewnia wewnętrzne usługi, z których może korzystać zespół dopasowany do strumienia.

Zespoły platformowe tworzą możliwości, z których mogą korzystać liczne zespoły dopasowane do strumienia, z niewielkim narzutem. Optymalizując produkt, zespoły platformowe minimalizują zasoby i obciążenie intelektualne zespołu dopasowanego do strumienia. Jest to również korzystne dla użytkowników końcowych, ponieważ zespoły platformowe mogą tworzyć spójne środowisko, które obejmuje różne doświadczenia użytkowników lub produkty.

W Atlassian zespoły platformowe tworzą usługi wykorzystywane przez wszystkie nasze produkty (takie jak zarządzanie tożsamościami), a ich zadaniem jest dostarczanie dokumentacji, wsparcia i konsultacji zespołom dopasowanym do strumienia.

3. Zespół ds. skomplikowanego podsystemu


Zespół ds. skomplikowanego podsystemu odpowiada za tworzenie i utrzymanie części systemu, która zależy od konkretnych umiejętności i wiedzy. Większość członków zespołu musi być specjalistami w określonym obszarze wiedzy, aby móc rozumieć i wprowadzać zmiany w podsystemie.

Zadaniem tego zespołu jest zmniejszenie obciążenia zespołów dopasowanych do strumienia pracujących na systemach, które obejmują dany podsystem lub z niego korzystają. Dzięki fachowej wiedzy i umiejętnościom zespołu ds. skomplikowanego podsystemu zespoły dostosowane do strumienia nie muszą rozwijać umiejętności w obszarach zbyt skomplikowanych jak na ich codzienną pracę. Członkowie takiego zespołu mogą posiadać specjalistyczną wiedzę w zakresie niektórych mikrousług (np. rozliczeniowych), algorytmów, a nawet sztucznej inteligencji.

Częstym błędem jest umieszczanie specjalistów w każdym zespole dopasowanym do strumienia, który korzysta z określonego podsystemu. Chociaż może się to wydawać efektywne, ostatecznie jest nieopłacalne i wykracza poza zakres prac zespołu dostosowanego do strumienia.

4. Zespół wspierający


Zespoły dopasowane do strumienia znajdują się pod ciągłą presją, aby szybko dostarczać rozwiązania i reagować na zmiany, co sprawia, że ich członkom trudno jest znaleźć czas na analizy, uczenie się i ćwiczenie nowych umiejętności.

Zespół wspierający, składający się ze specjalistów w danej dziedzinie technicznej (lub produktowej), pomaga wypełnić tę lukę w zakresie umiejętności. Zespoły te koncentrują się na badaniach i eksperymentach, aby móc przedstawiać merytoryczne sugestie dotyczące narzędzi, modeli i ekosystemów, które mają wpływ na dostępny zestaw narzędzi.

Dzięki temu zespoły dopasowane do strumienia zyskują czas na zdobywanie i rozwijanie umiejętności bez oddalania się od podstawowych celów. Zadaniem zespołu wspierającego jest przede wszystkim zwiększenie autonomii zespołów dopasowanych do strumienia poprzez poprawę ich umiejętności, przy czym koncentruje się on na problemach, a nie na rozwiązaniach.

Jeśli zespół wspierający dobrze wykonuje swoją pracę, po kilku tygodniach wspierany przez niego zespół nie powinien już potrzebować pomocy. Nigdy nie powinien być trwale zależny od zespołu wspierającego.

Czy pracujesz w zespole dopasowanym do strumienia?


Wnioski…


W DevOps chodzi nie tyle o cel, co o drogę, polegającą na ciągłym doskonaleniu narzędzi, kultury zespołowej i praktyk. Jeśli dopiero zaczynasz przygodę z DevOps, na początek postaw sobie za cel dostarczanie klientom wartości. W miarę rozwijania się dodaj automatyzację narzędzi i procesów. A gdy wreszcie gdy Twój zespół stanie się komórką zaawansowanych praktyków, sięgnij po narzędzie, jakim jest wgląd, aby monitorować, mierzyć i doskonalić właściwe rzeczy.

Jeśli dopiero zaczynasz przygodę z DevOps, poznaj najlepsze metody postępowania dzięki naszemu Przewodnikowi po DevOps dla początkujących. Aby zacząć korzystać z DevOps w praktyce, zalecamy wypróbowanie Open DevOps, który zapewnia zespołom wszystko, czego potrzebują do opracowywania i obsługi oprogramowania. Zespoły mogą utworzyć odpowiadający im łańcuch narzędzi DevOps dzięki integracjom z produktami wiodących dostawców i aplikacjom ze sklepu Marketplace. Wypróbuj teraz.

Ian Buchanan
Ian Buchanan

Ian Buchanan jest głównym inżynierem ds. rozwiązań DevOps w firmie Atlassian, skupiającym się na rozwijającej się społeczności DevOps oraz stosowaniu systemów Jira, Bitbucket i Bamboo w celu usprawniania ciągłej integracji oraz ciągłego dostarczania. Ian Buchanan ma szerokie i bogate doświadczenie zarówno w dziedzinie technologii Java, jak i .NET, ale najbardziej znany jest jako mistrz praktyk Lean i Agile w dużych przedsiębiorstwach.

W trakcie swojej kariery z powodzeniem zarządzał narzędziami do tworzenia oprogramowania dla przedsiębiorstw we wszystkich fazach ich cyklu życia — od początku aż do końca. Udało mu się doprowadzić do usprawnienia procesów w całej organizacji, czego efektem jest większa produktywność, wyższa jakość i większe zadowolenie klientów. Tworzył międzynarodowe zespoły Agile, które cenią sobie samorozwój i samodzielną organizację. Kiedy nie wygłasza prelekcji ani nie programuje, Ian oddaje się swoim pasjom związanym z parserami, metaprogramowaniem i językami dziedzinowymi.


Udostępnij ten artykuł
Następny temat

Zalecane lektury

Dodaj te zasoby do zakładek, aby dowiedzieć się więcej na temat rodzajów zespołów DevOps lub otrzymywać aktualności na temat metodyki DevOps w Atlassian.

Ilustracja DevOps

Społeczność DevOps

Ilustracja DevOps

Ścieżka szkoleniowa DevOps

Ilustracja przedstawiająca mapę

Zacznij korzystać za darmo

Zapisz się do newslettera DevOps

Thank you for signing up