Jak znaleźć czas na jakość? ­ Teoria Kolejek w praktyce

wżołnowskiCzy kiedykolwiek próbowaliście wdrożyć dowolne praktyki jakościowe w organizacji, w której nie ma na nic czasu? Jeśli tak to rozwiązanie wielu Waszych problemów, na które natrafiliście może być prostsze niż myślicie! Podczas prelekcji przedstawię podstawy Teorii Kolejek i Little’s Law oraz ich zastosowanie w zarządzaniu dowolnym procesem wytwarzania oprogramowania tak, by był on maksymalnie efektywny i jednocześnie by znalazł się w nim czas na jakość!

Moja przygoda z Teorią Kolejek zaczęła się, gdy próbowałem znaleźć sposób na oszacowanie maksymalnej wydajności jednego z systemów, który tworzymy bez wykonywania testów obciążeniowych i wydajnościowych. I tak – w wielu przypadkach, jest to możliwe.

Ale nie tym chciałbym się z Wami podzielić (no może tylko troszeczkę)… Gdy zacząłem studiować temat Teorii Kolejek bardzo szybko dotarło do mnie gdzie popełnialiśmy wielokrotnie podstawowy błąd projektując czy też wyłaniając nasze (miej lub bardziej zwinne) procesy wytwarzania oprogramowania.

Wydajność każdego systemy jest zależna od najwolniejszego/najsłabszego elementu tego ogniwa. Podobnie jest z zespołami developerskimi. Ponadto każdy system, któremu do przeprocesowania dostarczymy zbyt wiele zadań bardzo szybko się zapycha i jest niewydajny. Podobnie jest z zespołami developerskimi – jeśli kolejka zadań jest zbyt duża i/lub developerzy pracują nad więcej niż jednym zadaniem jednocześnie, to system przestaje być wydajny.

Czy kiedykolwiek zdarzyło się Wam rozmawiać z ludźmi na temat praktyk jakościowych i usłyszeć  od nich: „No tak, wiemy że automatyzacja jest dobra i fajna, ale nie mamy na nią czasu”, „Tak, poprawili byśmy jakość kodu, ale mamy tyle rzeczy do zrobienia, że nie ma czasu na refaktoring”. Oczywiście tłumaczenie, że jeśli poświęcimy trochę czasu na poprawę jakości to ten czas szybko się zwróci jest na nic.

Mam w zanadrzu kilka przykładów tego jak zastosowanie Teorii Kolejek poprawiło jakość i zwiększyło efektywnoć zespołów, ale szkoda czasu na przekonywanie Was przykładami. Możecie nie zgadzać się z moją wiedzą, możecie nie zgadzać się z moimi doświadczeniami, możecie nie zgadzać się z całą psychologią tłumaczącą dlaczego zespoły pracujące w ten sposób są dużo lepsze od innych, ale nierozsądnym by było gdybyście zaczęli kwestionować matematykę stojącą za teorią kolejek. Możecie kłucić się ze mną, ale matematyka to matematyka.


Tagged under:
TwitterFacebookLinkedInGoogle+