• Nie Znaleziono Wyników

Efektywno´s´c w zwinnych zespołach programistycznych

5.3 Wyniki bada´n empirycznych

5.3.1 Efektywno´s´c w zwinnych zespołach programistycznych

W badanych zespołach zmierzona została warto´s´c czynników w poszczególnych iteracjach (liczba tych iteracji zale˙zy od czasu trwania projektu i waha si˛e od siedmiu do pi˛e´cdziesi˛eciu dwóch). Analizowane czynniki dla ka˙zdej z iteracji to:

• realizacja celu – wyra˙zona w sposób binarny,

• zaplanowana liczba Story Pointów (SP) – wyra˙zona liczb ˛a całkowit ˛a,

• pr˛edko´s´c zespołu – zrealizowane Story Pointy, wyra˙zone liczb ˛a całkowit ˛a,

• przewidywalno´s´c zespołu – stosunek zaplanowanych do zrealizowanych SP, wyra˙zony procentowo2,

• IM (Incydent Management) – wyra˙zone liczb ˛a całkowit ˛a Story Pointów przeznaczone na napraw˛e bł˛edów,

• ´srednia pr˛edko´s´c – wyra˙zona liczb ˛a naturaln ˛a, zaokr ˛aglon ˛a do dwóch miejsc po przecin-ku, ´srednia krocz ˛aca z pi˛eciu poprzedzaj ˛acych okresów,

• ´srednia przewidywalno´s´c - wyra˙zona procentowo, zaokr ˛aglona do dwóch miejsc po prze-cinku, ´srednia krocz ˛aca z pi˛eciu okresów,

• pr˛edko´s´c na osobo-dzie´n - wyra˙zona liczb ˛a naturaln ˛a, zaokr ˛aglon ˛a do dwóch miejsc po przecinku, SP zrealizowane przez jedn ˛a osob˛e podczas jednego dnia pracy,

2W praktyce dopuszcza si˛e przewidywalno´s´c wi˛eksz ˛a ni˙z 100%, kiedy zespół wykonał wi˛ecej, ni˙z zaplanował.

Jest to sytuacja jak najbardziej po˙z ˛adana (zapobiega marnotrawieniu czasu, w celu zachowania statystyki), dlatego przyj˛eło si˛e j ˛a odnotowywa´c w ten sposób.

• wdro˙zenia funkcjonalne3 - wyra˙zone liczb ˛a całkowit ˛a.

W tabelach (Tabela5.1,5.2i5.3) przedstawiono powy˙zsze statystyki dla wybranych trzech zespołów4(A, E, AC), dane dotycz ˛ace wszystkich badanych zespołów znajduj ˛a si˛e w Zał ˛ aczni-ku 1.

Tabela 5.1: Warto´sci mierników efektywno´sci zespołu A

Zródło: opracowanie własne´

3Wdro˙zenia zmieniaj ˛ace istniej ˛ace funkcjonalno´sci lub dodaj ˛ace nowe elementy, w tym poprawiaj ˛ace bł˛edy.

4S ˛a to trzy typowe zespoły, b˛ed ˛ace przykładem zró˙znicowania pod wzgl˛edem liczebno´sci członków w zespole, czasu trwania analizowanego projektu oraz mierzonych statystyk.

Tabela 5.2: Warto´sci mierników efektywno´sci zespołu E

Zródło: opracowanie własne´

Tabela 5.3: Warto´sci mierników efektywno´sci zespołu AC

Zródło: opracowanie własne´

Pr˛edko´s´c ´srednia zespołów jest najwa˙zniejszym badanym czynnikiem5 i została przedsta-wiona wraz z lini ˛a trendu6 na wykresach dla wybranych trzech zespołów (Rysunek 5.3, 5.4 i 5.5); wykresy dla wszystkich badanych zespołów znajduj ˛a si˛e w Zał ˛aczniku 2.

5Patrz Rozdział4.

6Linia trendu została oszacowana metod ˛a wielomianow ˛a, a jej dopasowanie (współczynnik R2) dla niemal wszystkich zespołów wynosi ponad 50% (waha si˛e w zale˙zno´sci od zespołu od 28 do 98%).

Rysunek 5.3: ´Srednia pr˛edko´s´c zespołu A Zródło: opracowanie własne´

Rysunek 5.4: ´Srednia pr˛edko´s´c zespołu AC Zródło: opracowanie własne´

Rysunek 5.5: ´Srednia pr˛edko´s´c zespołu E Zródło: opracowanie własne´

Analizuj ˛ac zaprezentowane wykresy (zarówno te na powy˙zszych rysunkach, jak i w zał ˛ acz-niku 2), dostrzega si˛e wyra´zn ˛a cykliczno´s´c w pracy zwinnych zespołów programistycznych.

Efektywno´s´c wyra˙zona ´sredni ˛a pr˛edko´sci ˛a zespołu pocz ˛atkowo do´s´c dynamicznie ro´snie, osi ˛ a-ga maksimum lokalne, a dalej maleje, a˙z do minimum lokalnego, by znów wzrosn ˛a´c (cz˛esto ju˙z nie tak dynamicznie), a nast˛epnie ponownie spada, najcz˛e´sciej wypłaszczaj ˛ac si˛e pod koniec (analizuj ˛ac lini˛e trendu zaobserwowa´c mo˙zna dwa cykliczne spadki). Zale˙zno´s´c ta wyst˛epuje dla wszystkich badanych zespołów.

W celu zbadania cykliczno´sci tempa pracy (wyra˙zonego poprzez pr˛edko´s´c zespołu), a za-tem wykazaniu braku jej regularno´sci, posłu˙zono si˛e klasycznym współczynnikiem zmienno´sci.

Jest to miara zró˙znicowania rozkładu cechy. Stosuje si˛e j ˛a w celu porównania zró˙znicowanie tej samej cechy w kilku populacjach. W odró˙znieniu od odchylenia standardowego, które okre´sla bezwzgl˛edne zró˙znicowanie cechy, współczynnik zmienno´sci jest miar ˛a wzgl˛edn ˛a, czyli zale˙z-n ˛a od wielko´sci ´sredniej arytmetycznej. Do obliczenia tego współczynnika zastosowany został wzór5.1:

V = S

¯

x · 100%, (5.1)

gdzie:

V – współczynnik zmienno´sci,

S – odchylenie standardowe z próby, wyznaczane według wzoru5.2:

x - ´srednia arytmetyczna warto´sci zmiennej z próby, wyznaczana według wzoru5.3:

¯

Aby mo˙zliwe było porównywanie pr˛edko´sci ró˙znych zespołów, niezb˛edne jest ujednolicenie zakresu tej zmiennej. W tym celu zastosowana została metoda unitaryzacji zerowej (MUZ), co pozwoliło na uzyskanie zmiennych o ujednoliconym zakresie zmienno´sci, definiowanym przez ró˙znic˛e pomi˛edzy ich warto´sciami maksymalnymi i minimalnymi. Zgodnie ze wzorem5.4:

zij =

zij – warto´s´c zmiennej po unitaryzacji, xij – warto´s´c zmiennej przed unitaryzacj ˛a.

Dzi˛eki zastosowaniu unitaryzacji zerowej, spełnionych jest wszystkie siedem postulatów ujednolicania zakresu zmiennych [Jarocka 2015]:

• postulat jednolitej preferencji - pozbawienie mian, w których wyra˙zone s ˛a cechy,

• postulat addytywno´sci - sprowadzenie rz˛edu wielko´sci zmiennych do stanu porówny-walno´sci,

• postulat stało´sci rozst˛epu lub stało´sci warto´sci ekstremalnych - równo´s´c długo´sci przedziałów zmienno´sci warto´sci wszystkich cech unormowanych (stało´s´c rozst˛epu) oraz równo´s´c dolnej i górnej granicy ich przedziału zmienno´sci,

• mo˙zliwo´s´c normowania cech przyjmuj ˛acych warto´sci dodatnie i ujemne lub tylko ujem-ne,

• mo˙zliwo´s´c normowania cech przyjmuj ˛acych warto´s´c równ ˛a zeru,

• postulat dodatnio´sci - nieujemno´s´c warto´sci cech unormowanych;

• istnienie prostych formuł – w ramach danej formuły normalizacyjnej – ujednolicaj ˛acych charakter zmiennych.

Klasyczny współczynnik zmienno´sci został obliczony wła´snie dla unitaryzowanej pr˛ed-ko´sci. Jego warto´s´c wyra˙zana jest procentowo, a interpretacja zale˙zna jest od wielko´sci współczynnika. Przyjmuje si˛e, ˙ze poni˙zej 25% badana cecha wykazuje nisk ˛a zmienno´s´c, dla warto´sci współczynnika z zakresu 25-45% ´sredni ˛a zmienno´s´c, dla zakresu 45-100% siln ˛a zmienno´s´c, a powy˙zej 100% badana cecha charakteryzuje si˛e bardzo siln ˛a zmienno´sci ˛a.

Tabela 5.4: Współczynnik zmienno´sci pr˛edko´sci zespołów

Zródło: opracowanie własne´

W Tabeli 5.4 przedstawiono warto´s´c współczynnika dla poszczególnych zespołów. Dwa-dzie´scia dziewi˛e´c z badanych zespołów charakteryzuje si˛e siln ˛a zmienno´sci ˛a, z czego dziesi˛e´c zespołów wykazuje generalny trend wzrostowy, osiem stabilny, natomiast jedena´scie malej ˛ a-cy. Pozostałe sze´s´c wykazuje zmienno´s´c umiarkowan ˛a, przy generalnym trendzie wzrostowym dla czterech i stabilnym dla dwóch zespołów. Zespół B charakteryzuje najwi˛eksza zmienno´s´c (72,73%), natomiast zespół E charakteryzuje najwi˛eksza stabilno´s´c tempa pracy – współczyn-nik zmienno´sci wynosi jedynie 34,45%. ´Srednia warto´s´c współczynwspółczyn-nika dla wszystkich bada-nych zespołów wynosi 57,57%, czyli generalnie wyst˛epuje silna zmienno´s´c. Wywnioskowa´c mo˙zna zatem, ˙ze pr˛edko´s´c zespołów zwinnych jest silnie zró˙znicowana. Powy˙zsza analiza wy-kazuje zasadno´s´c hipotezy H1.

Bior ˛ac pod uwag˛e dodatkowo naniesione na omawiane tabele (Tabela5.1,5.2,5.3oraz Za-ł ˛acznik 1.) i wykresy (Rysunek5.3,5.4,5.5oraz Zał ˛acznik 2.) fazy rozwoju produktu i

wprowa-dzania go na rynek dla ka˙zdego zespołu w analizowanych iteracjach, zauwa˙zy´c mo˙zna wyra´zn ˛a zale˙zno´s´c cyklicznych spadków efektywno´sci od tych˙ze faz.

W Tabeli 5.5 zestawiono (dla zespołów A, E i AC) warto´sci badanych czynników w rozbiciu na poszczególne fazy (etapy): narodziny, młodo´s´c, dojrzało´s´c i utrzymanie oraz zaznaczono ró˙znic˛e warto´sci czynnika w stosunku do poprzedniej fazy. Wida´c wyra´znie (co potwierdzaj ˛a równie˙z charakterystyki pozostałych badanych zespołów, patrz Zał ˛acznik 1.), i˙z w drugiej i czwartej fazie nast˛epuje spadek warto´sci indykatorów zwinno´sci (wyra˙zonych jako stymulanty), a w efekcie i ogólnej efektywno´sci, podczas gdy w pierwszej i trzeciej fazie zespoły osi ˛agaj ˛a lepsze charakterystyki7. Pozwala to na pozytywne zweryfikowanie hipotezy H2.

Tabela 5.5: Warto´sci badanych czynników w rozbiciu na fazy dla zespołów A, E i AC

Zródło: opracowanie własne´

7Ponad 83% warto´sci wska´zników wykazuje powy˙zsz ˛a zale˙zno´s´c.

W ogólno´sci przyj ˛a´c mo˙zna, ˙ze podczas pierwszego etapu główne prace skupiaj ˛a si˛e wokół bada´n i rozwoju produktu od podstaw (ang. green field). Efektywno´s´c zespołu stale ro´snie, zespół pracuje z nowym produktem, wi˛ec jest zaanga˙zowany i zmotywowany do pracy. Na tym etapie praktycznie nie s ˛a identyfikowane bł˛edy zwi ˛azane z produktem (pojedyncze przypadki s ˛a wynikiem testów wewn˛etrznych lub te˙z zgłoszone przez samych autorów)8.

W drugim etapie prace koncentruj ˛a si˛e na przygotowaniu do oddania głównej warto´sci biz-nesowej produktu. Jest on testowany przez u˙zytkowników – najcz˛e´sciej s ˛a to tzw. beta u˙zyt-kownicy (ang. beta users), oraz wcze´sni adopterzy (ang. early adopters). Testerzy znajduj ˛a bł˛e-dy w działaniu oprogramowania, a ich analiza i korekta pochłania czas zespołów. W wyniku powy˙zszego, coraz wi˛eksza zło˙zono´s´c techniczna sprawia, ˙ze kolejny przyrost wytwarzanego produktu jest bardziej czasochłonny, dlatego motywacja zespołu spada, a co za tym wszystkim idzie i jego efektywno´s´c.

W trzecim etapie kluczowe elementy produktu s ˛a ju˙z wdro˙zone (wydane) i udost˛epnione szerokiej (docelowej) grupie odbiorców/u˙zytkowników. Zwi˛eksza to motywacj˛e zespołu, po-niewa˙z szczególnie w tym etapie widoczne s ˛a wyniki pracy zespołu (równie˙z wykonane w po-przednich etapach) oraz zespół otrzymuje najwi˛eksz ˛a informacj˛e zwrotn ˛a (ang. feedback) od docelowych u˙zytkowników. Produkt jest wci ˛a˙z rozwijany, a bł˛edy9 s ˛a nadal zgłaszane, mimo to, w ogólno´sci efektywno´s´c zespołu ro´snie.

W czwartym etapie produkt zasadniczo nie jest ju˙z rozwijany, a jedynie utrzymywany.

Elementy oprogramowania powinny by´c aktualizowane, a bł˛edy najcz˛e´sciej powodowane s ˛a interakcjami z innymi produktami oraz starzej ˛acym si˛e kodem, powinny by´c na bie˙z ˛aco poprawiane. Celem tej fazy jest zapewnienie stabilno´sci operacyjnej. Efektywno´s´c pracy spada, na pocz ˛atku cz˛esto bardzo mocno (poniewa˙z najcz˛e´sciej siły oraz zaanga˙zowanie zespołu przenoszone s ˛a na nowy produkt), ale pó´zniej spowalnia i spłaszcza si˛e. Ten etap trwa do momentu wyga´sni˛ecia (wycofania) produktu, zatem najcz˛e´sciej jest to najdłu˙zszy etap w cyklu

˙zycia oprogramowania.

8Na tym etapie poprawa bł˛edów nie jest jeszcze bardzo kosztowna, gdy˙z nie wi ˛a˙ze si˛e z wi˛eksz ˛a przebudow ˛a systemu, tym samym nie jest ona bardzo demotywuj ˛aca.

9B˛ed ˛ace wynikiem prac przede wszystkim wcze´sniejszych etapów, jednak niezidentyfikowanych do tej pory.

5.3.2 Ewaluacja efektywno´sci zespołów z wykorzystaniem analizy