{"id":29973,"date":"2023-07-18T12:28:42","date_gmt":"2023-07-18T10:28:42","guid":{"rendered":"https:\/\/www.altkomsoftware.com\/?p=29973"},"modified":"2025-04-01T10:53:12","modified_gmt":"2025-04-01T08:53:12","slug":"nauka-a-wytwarzanie-oprogramowania","status":"publish","type":"post","link":"https:\/\/stg.altkomsoftware.com\/pl\/blog\/nauka-a-wytwarzanie-oprogramowania\/","title":{"rendered":"Niska wydajno\u015b\u0107 procesu wytwarzania oprogramowania. Czy powodem mo\u017ce by\u0107 nieefektywny spos\u00f3b uczenia si\u0119 developer\u00f3w?"},"content":{"rendered":"\n<h3 class=\"wp-block-heading has-text-align-center\"><strong>Wolisz ogl\u0105da\u0107 ni\u017c czyta\u0107?<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/www.youtube.com\/watch?v=l1yZUodaKlo\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"1200\" height=\"628\" src=\"https:\/\/altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu.png\" alt=\"Niezrealizowany cel sprintu: Czy powodem mo\u017ce by\u0107 nieefektywny proces uczenia si\u0119? Zobacz wideo\" class=\"wp-image-30007\" srcset=\"https:\/\/stg.altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu.png 1200w, https:\/\/stg.altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu-176x92.png 176w, https:\/\/stg.altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu-300x157.png 300w, https:\/\/stg.altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu-768x402.png 768w, https:\/\/stg.altkomsoftware.com\/wp-content\/uploads\/2023\/07\/Niezrealizowany-cel-sprintu-1024x536.png 1024w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Jak\u0105 wiedz\u0105 zarz\u0105dzamy w projektach? Zwinno\u015b\u0107, zmiana i uczenie si\u0119<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">W zespo\u0142ach zwinnych nieod\u0142\u0105cznym elementem jest zmiana, a ka\u017cda zmiana wymaga nauczenia si\u0119 czego\u015b nowego. Co za tym idzie, w projektach uczymy si\u0119 nieustannie \u2013 wdra\u017caj\u0105c nowe narz\u0119dzia czy optymalizuj\u0105c <strong>proces wytwarzania oprogramowania.<\/strong>&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zarz\u0105dzanie wiedz\u0105 najcz\u0119\u015bciej kojarzy si\u0119 z obszarem merytorycznym, czyli warsztatami i szkoleniami, w kt\u00f3re inwestujemy, \u017ceby nasi developerzy programowali lepiej. Oczywi\u015bcie zesp\u00f3\u0142 to r\u00f3wnie\u017c testerzy, analitycy czy scrum masterzy i o ich rozw\u00f3j&nbsp;nale\u017cy dba\u0107 w takim samym stopniu. Mamy nadziej\u0119, \u017ce ka\u017cdy o tym pami\u0119ta   &nbsp;&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><b>Inne obszary zarz\u0105dzania wiedz\u0105<\/b>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Wiedza domenowa<\/strong> \u2013 jako \u017ce oprogramowanie tworzymy dla klient\u00f3w z r\u00f3\u017cnych bran\u017c, zesp\u00f3\u0142 musi zaczerpn\u0105\u0107 wiedzy w dziedzinie, w kt\u00f3rej to oprogramowanie b\u0119dzie dzia\u0142a\u0107.<\/li>\n\n\n\n<li><strong>Wiedza procesowa<\/strong> \u2013 nikt nie rodzi si\u0119 specjalist\u0105 w metodykach wytwarzania oprogramowania, wi\u0119c niezale\u017cnie, czy realizujemy projekt zwinnie czy tradycyjnie, musimy si\u0119 tego nauczy\u0107.<\/li>\n\n\n\n<li><strong>Wiedza z zakresu kultury organizacyjnej i relacji panuj\u0105cych w firmie<\/strong> &#8211; najmniej doceniany obszar, a mog\u0105cy narobi\u0107 wiele problem\u00f3w. Brak wiedzy organizacyjnej cz\u0119sto przek\u0142ada si\u0119 na konflikty i nieporozumienia w projekcie, kt\u00f3re op\u00f3\u017aniaj\u0105 (i uprzykrzaj\u0105!) prac\u0119.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">W jaki spos\u00f3b uczymy si\u0119 i dlaczego jest to wa\u017cne?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cz\u0142owiek nie jest prost\u0105 istot\u0105, dlatego i nasze procesy uczenia si\u0119 bywaj\u0105 skomplikowane. Najwa\u017cniejsza informacja, kt\u00f3r\u0105 nale\u017cy przyswoi\u0107 na pocz\u0105tek &#8211; uczymy si\u0119 w r\u00f3\u017cny spos\u00f3b. Teorii na ten temat jest mn\u00f3stwo, ale przedstawimy t\u0119, kt\u00f3r\u0105 sami wykorzystujemy w naszych projektach: teori\u0119 Honeya i Mumforda. Jej ogromn\u0105 zalet\u0105 jest stosunkowo niski pr\u00f3g wej\u015bcia, a co za tym idzie, osoby zarz\u0105dzaj\u0105ce mog\u0105 szybko wy\u0142apa\u0107 i okre\u015bli\u0107 style uczenia si\u0119 w swoich zespo\u0142ach.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4 style uczenia si\u0119 wed\u0142ug teorii Honeya i Mumforda:<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Aktywista<\/strong> \u2013 osoba, kt\u00f3ra chce do\u015bwiadcza\u0107 jak najwi\u0119cej i uczy\u0107 si\u0119 w praktyce (dyskusje w grupach, burze m\u00f3zg\u00f3w, pr\u00f3by i b\u0142\u0119dy).<\/li>\n\n\n\n<li><strong>Obserwator<\/strong> \u2013 osoba czerpi\u0105ca wiedz\u0119 z obserwowania innych (analiza indywidualna, mniejsze grupy, dzia\u0142anie na przyk\u0142adach).<\/li>\n\n\n\n<li><strong>Teoretyk<\/strong> \u2013 osoba z zami\u0142owaniem do statystyk, liczb, fakt\u00f3w, modeli, historii. Najpierw musi zg\u0142\u0119bi\u0107 sporo wiedzy teoretycznej, dopiero potem zaczyna dzia\u0142a\u0107.<\/li>\n\n\n\n<li><strong>Pragmatyk<\/strong> \u2013 szuka optymalnego rozwi\u0105zania i jak najszybszej drogi do zastosowania teorii w praktyce (case study, analizy przypadk\u00f3w).<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Przedstawmy to na przyk\u0142adzie: w firmie pojawia si\u0119 nowy ekspres do kawy. Aktywista klika wszystko i pr\u00f3buje zaparzy\u0107 swoje ulubione espresso&nbsp;metod\u0105 pr\u00f3b i b\u0142\u0119d\u00f3w. Obserwator przepuszcza w kolejce kilka innych os\u00f3b i pr\u00f3buje podpatrze\u0107 ich dzia\u0142anie. Teoretyk si\u0119ga po instrukcj\u0119, a pragmatyk po prostu chce jak najszybciej wykona\u0107 zadanie. Mo\u017ce np. jednocze\u015bnie googla\u0107 filmik instrukta\u017cowy, rozpytuj\u0105c wszystkich dooko\u0142a o wskaz\u00f3wki. &nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Warto mie\u0107 \u015bwiadomo\u015b\u0107, jak poszczeg\u00f3lni cz\u0142onkowie zespo\u0142u ucz\u0105 si\u0119, \u017ceby &#8211; jako osoba zarz\u0105dzaj\u0105ca &#8211; m\u00f3c zar\u00f3wno pomaga\u0107 w rozwoju, jak i wp\u0142ywa\u0107 na efektywno\u015b\u0107 zespo\u0142u w <strong>procesie wytwarzania oprogramowania<\/strong>. \u0141\u0105cz\u0105c pracownik\u00f3w z r\u00f3\u017cnych styl\u00f3w nauki, mo\u017cemy unikn\u0105\u0107 negatywnych aspekt\u00f3w dzia\u0142ania, np. u&nbsp;teoretyka zbyt powolnego wdra\u017cania wiedzy w praktyk\u0119,&nbsp;a u aktywisty zbyt pochopnego dzia\u0142ania na o\u015blep.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kiedy w procesie wytwarzania oprogramowania mamy do czynienia z uczeniem si\u0119?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Podzielmy sobie <strong>proces wytw\u00f3rczy oprogramowania<\/strong> na trzy fazy i przyjrzyjmy si\u0119, jakie momenty sprzyjaj\u0105 nauce i transferowi wiedzy. Poni\u017csze porady, narz\u0119dzia i metody sprawdz\u0105 si\u0119 nie tylko w projektach zwinnych, chocia\u017c cz\u0119\u015b\u0107 z nich dotyczy np.&nbsp;ceremonii scrumowych.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Faza pocz\u0105tkowa tworzenia oprogramowania&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Pocz\u0105tek projektu to moment, kiedy ka\u017cdy jeszcze rwie si\u0119 do pracy i naj\u0142atwiej pope\u0142ni\u0107 b\u0142\u0119dy. Pocz\u0105tkowa faza <strong><a href=\"https:\/\/stg.altkomsoftware.com\/pl\/service\/software-development\/\" target=\"_blank\" rel=\"noreferrer noopener\">software developmentu<\/a> <\/strong>wymaga ogromnego transferu wiedzy, szczeg\u00f3lnie wiedzy domenowej. Musimy nauczy\u0107 si\u0119 i zrozumie\u0107, czym jest np. udzielanie leasingu czy kredytowanie (wszystko zale\u017cy od bran\u017cy). &nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><b>Narz\u0119dzia i metody pomagaj\u0105ce przyswoi\u0107 wiedz\u0119 domenow\u0105<\/b>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Dokumentacja udost\u0119pniona przez klienta<\/strong> (rozwi\u0105zanie dla teoretyk\u00f3w);<\/li>\n\n\n\n<li><strong>Wizyta studyjna<\/strong>: zesp\u00f3\u0142 realizuj\u0105cy projekt software\u2019owy odwiedza miejsce pracy klienta i poznaje ludzi, kt\u00f3rzy b\u0119d\u0105 korzysta\u0107 z <strong>tworzonego oprogramowania<\/strong>. Pomaga to zyska\u0107 pe\u0142en obraz rozwi\u0105zania, otworzy\u0107 si\u0119 na nowe pomys\u0142y, uwzgl\u0119dni\u0107 w projekcie elementy, na kt\u00f3re pocz\u0105tkowo nie zwr\u00f3ciliby\u015bmy uwagi (obserwator, aktywista).<\/li>\n\n\n\n<li><strong>Event storming<\/strong>: sesja\/burza m\u00f3zg\u00f3w, gdzie zar\u00f3wno developerzy, klienci i eksperci domenowi przygl\u0105daj\u0105 si\u0119 procesowi przeznaczonemu do digitalizacji, omawiaj\u0105c go na bardzo r\u00f3\u017cnych poziomach. Aktywny spos\u00f3b zdobywania wiedzy (pytania i rozmowy), cz\u0119sto w ruchu, wykorzystuj\u0105c pomoce wizualne (trafia do wszystkich styl\u00f3w uczenia si\u0119).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ponadto, pocz\u0105tkowa faza projektu to odpowiedni moment na prze\u0107wiczenie ca\u0142ego <strong>procesu wytwarzania oprogramowania<\/strong>. Mo\u017cemy zarz\u0105dzi\u0107 dwa dni na nauk\u0119 pracy w Scrumie, bo ka\u017cda firma ma swoje indywidualne przyzwyczajenia, kt\u00f3re wymagaj\u0105 przedstawienia i zrozumienia przez ca\u0142y zesp\u00f3\u0142.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W tym czasie uczymy si\u0119 tak\u017ce kultury organizacyjnej \u2013 ta cz\u0119\u015b\u0107 kick off meetingu najcz\u0119\u015bciej realizowana jest poprzez rozmow\u0119 lub one pager podsumowuj\u0105cy kultur\u0119 pracy. My jednak polecamy metod\u0119 Kontraktu 5R, podczas kt\u00f3rego ca\u0142y zesp\u00f3\u0142 okre\u015bla 5 wymiar\u00f3w pracy:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Kierunek<\/strong> \u2013 definiujemy cel pracy i upewniamy si\u0119, \u017ce wszyscy rozumiemy go tak samo;<\/li>\n\n\n\n<li><strong>Ramy organizacyjne<\/strong> &#8211; ustalamy fakty dotycz\u0105ce tego, w jaki spos\u00f3b pracujemy (np. daily jest zawsze o godzinie 9:00);<\/li>\n\n\n\n<li><strong>Role projektowe<\/strong> \u2013 zesp\u00f3\u0142 przedstawia si\u0119 nie tylko formalnie (np. jestem java developerem), ale te\u017c nieformalnie, np. kto\u015b okre\u015bla, \u017ce jest dobrym mediatorem;<\/li>\n\n\n\n<li><strong>Regu\u0142y<\/strong> &#8211; przedstawiamy po\u017c\u0105dane w projekcie dzia\u0142ania (np. czas pracy jest raportowany w Jirze);<\/li>\n\n\n\n<li><strong>Relacje<\/strong> \u2013 ustalamy wszystkie mi\u0119kkie aspekty wsp\u00f3\u0142pracy, kt\u00f3re s\u0105 dla zespo\u0142u wa\u017cne (np. nie opowiadamy sobie dowcip\u00f3w o charakterze politycznym).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Z tak\u0105 wiedz\u0105 mo\u017cemy przej\u015b\u0107 do kolejnego etapu wytwarzania oprogramowania.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Faza realizacji oprogramowania<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">W fazie pocz\u0105tkowej wiedza, kt\u00f3r\u0105 zdobywamy jest stosunkowo szeroka, teraz przychodzi czas zag\u0142\u0119bi\u0107 si\u0119 w szczeg\u00f3\u0142y i przej\u015b\u0107 na operacyjny tryb pracy. &nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W tej fazie rekomendujemy wykorzystanie narz\u0119dzi takich jak (niekt\u00f3re maj\u0105 nazwy w\u0142asne, poniewa\u017c wdro\u017cyli\u015bmy je na w\u0142asny u\u017cytek  ):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Domain storytelling<\/strong>. Warsztaty, w kt\u00f3rych bierze udzia\u0142 zar\u00f3wno <strong>zesp\u00f3\u0142 projektowy<\/strong>, jak i eksperci domenowi oraz moderator. Eksperci dziedzinowi przedstawiaj\u0105 procesy oraz domen\u0119 biznesow\u0105, u\u017cywaj\u0105c nomenklatury poj\u0119\u0107 biznesowych. Natomiast zesp\u00f3\u0142 wytw\u00f3rczy zadaje pytania, nie pos\u0142uguj\u0105c si\u0119 j\u0119zykiem technicznym. Moderator przedstawia story opowiadane przez ekspert\u00f3w biznesowych za pomoc\u0105 piktogram\u00f3w, rozrysowuj\u0105c ca\u0142y proces, \u017ceby po warsztatach ka\u017cdy wyszed\u0142 z wiedz\u0105 domenow\u0105. Jest to pierwszy krok do stworzenia user stories.<\/li>\n\n\n\n<li><strong>User story mapping<\/strong> (po domain storytelling). Metoda, kt\u00f3ra pozwoli zebra\u0107 wymagania, zagregowa\u0107 wszystkie user stories i u\u0142o\u017cy\u0107 je w logiczn\u0105 ca\u0142o\u015b\u0107. Podstawa do stworzenia backlogu projektu, czyli zakresu prac niezb\u0119dnych do realizacji oprogramowania.<\/li>\n\n\n\n<li><strong>Programowanie w parach<\/strong>. Metoda pog\u0142\u0119biania wiedzy z perspektywy zespo\u0142u, kt\u00f3ry <strong>wytwarza oprogramowanie<\/strong>. Dwie osoby jednocze\u015bnie pracuj\u0105 nad jednym zadaniem: jedna programuje, druga jest wsparciem (np. podpowiada, jak zoptymalizowa\u0107 kod lub jako osoba bardziej do\u015bwiadczona w projekcie odpowiada za pocz\u0105tkowy transfer wiedzy).<\/li>\n\n\n\n<li><strong>Czas wyznaczony na edukacj\u0119<\/strong>. Poszerzanie warsztatu pracy dowolnego cz\u0142onka w <strong>zespole projektowym<\/strong> poprzez z g\u00f3ry ustalon\u0105 liczb\u0119 dni (np. 5 na kwarta\u0142), kt\u00f3re nale\u017cy w ca\u0142o\u015bci wykorzysta\u0107 na zg\u0142\u0119bienie jakiego\u015b elementu\/problemu w projekcie lub zewn\u0119trzne szkolenia.<\/li>\n\n\n\n<li><strong>Wycieczki po systemie<\/strong>. Spos\u00f3b na zarz\u0105dzanie wiedz\u0105, szczeg\u00f3lnie w bardzo rozbudowanych <strong>projektach software developmentu<\/strong>. Je\u017celi zesp\u00f3\u0142 buduje jakie\u015b rozwi\u0105zanie, osoby, kt\u00f3re opiekuj\u0105 si\u0119 danym obszarem\/funkcjonalno\u015bci\u0105, nagrywaj\u0105 cykliczne warsztaty, oprowadzaj\u0105c wirtualne po danej funkcjonalno\u015bci. Nagrania mo\u017cna wykorzysta\u0107 za ka\u017cdym razem, kiedy osoba z innego obszaru, czy kto\u015b nowy w projekcie, chce przyswoi\u0107 sobie akurat dany kawa\u0142ek realizacji. Jest to gotowy transfer wiedzy, szybszy i efektywniejszy, ni\u017c gdyby jedna osoba wprowadza\u0142a wszystkich z osobna.<\/li>\n\n\n\n<li><strong>Retrospektywa<\/strong>. Kawa\u0142ek retrospektywy przeznaczamy na edukacj\u0119 lub organizujemy oddzielne spotkania (1-2 razy w tygodniu), podczas kt\u00f3rych scrum master spotyka si\u0119 z <strong>zespo\u0142em projektowym<\/strong>, aby om\u00f3wi\u0107 jedno wybrane zagadnienie, np. spos\u00f3b wyceny user stories (szczeg\u00f3lnie, je\u017celi zesp\u00f3\u0142 sam zg\u0142asza niepewno\u015b\u0107\/problem).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Faza ko\u0144cowa wytwarzania oprogramowania<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Sesja lessons&nbsp;learned to moment podsumowania i wyci\u0105gni\u0119cia wniosk\u00f3w z projektu.&nbsp;Narz\u0119dzia, kt\u00f3re przydadz\u0105 si\u0119 w tej fazie do wzmocnienia procesu uczenia si\u0119, to m.in.:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Start-Stop-Continue<\/strong>: zbieramy si\u0119 z <strong>zespo\u0142em projektowym<\/strong> i na start: wypisujemy rzeczy, kt\u00f3rych nie robili\u015bmy, ale z perspektywy czasu fajnie by\u0142oby je wdro\u017cy\u0107 w kolejnych realizacjach. Stop: wskazujemy rzeczy, kt\u00f3re wykonywali\u015bmy, ale dochodzimy do wniosku, \u017ce nast\u0119pnym razem powinni\u015bmy z nich zrezygnowa\u0107. Continue: podkre\u015blamy aspekty, kt\u00f3re robili\u015bmy i si\u0119 sprawdzi\u0142y.<\/li>\n\n\n\n<li><strong>Metoda Plus Delta<\/strong>: podobne rozwi\u0105zanie, gdzie wypisujemy rzeczy dobre i dzia\u0142aj\u0105ce oraz rzeczy, kt\u00f3re si\u0119 nie sprawdzi\u0142y w <strong>procesie wytwarzania oprogramowania<\/strong>.<\/li>\n\n\n\n<li><strong>Timeline<\/strong>: budujemy o\u015b czasu i na niej wypisujemy kamienie milowe projektu. Omawiamy poszczeg\u00f3lne wydarzenia i wyci\u0105gamy wnioski (znowu, co by\u0142o dobre, a co nas ogranicza\u0142o\/stopowa\u0142o).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Oczywi\u015bcie metodyki mo\u017cna ze sob\u0105 \u0142\u0105czy\u0107. Wa\u017cne, aby taka sesja lessons learned zako\u0144czy\u0142a si\u0119 podsumowaniem i wnioskami, kt\u00f3re prze\u0142o\u017c\u0105 si\u0119 na kolejne projekty.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Problem uciekaj\u0105cej wiedzy, czyli zmiany w zespole<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Zmiany w zespole s\u0105 nieuniknione, dlatego musimy nauczy\u0107 si\u0119, jak skutecznie przekazywa\u0107 wiedz\u0119 nowym osobom. Onboarding mo\u017ce odbywa\u0107 si\u0119 z pomoc\u0105 dokumentacji czy nagra\u0144 (dobre dla teoretyk\u00f3w czy obserwator\u00f3w), ale tak\u017ce za pomoc\u0105 wcze\u015bniej ju\u017c wspomnianej metody programowania w parach (aktywi\u015bci i pragmatycy).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W naszej firmie wprowadzili\u015bmy tak\u017ce rol\u0119 Buddy\u2019ego, w kt\u00f3rego wciela si\u0119 do\u015bwiadczona osoba, maj\u0105ca za zadanie zaopiekowa\u0107 si\u0119 nowym cz\u0142onkiem <strong>zespo\u0142u projektowego<\/strong>. Pomaga w rzeczach zwi\u0105zanych z organizacj\u0105, jak i wdra\u017ca w projekt.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Je\u017celi natomiast si\u0119gamy po instrukta\u017c, szkolenie czy przekazywanie wiedzy przez jedn\u0105 osob\u0119, to warto pami\u0119ta\u0107, \u017ce wed\u0142ug Richarda Mayera cz\u0142owiek jest w stanie utrzyma\u0107 uwag\u0119 wy\u0142\u0105cznie przez oko\u0142o 12 minut. Dlatego transfer wiedzy powinien odbywa\u0107 si\u0119 w 15 min. slotach,&nbsp;w skondensowanej i przemy\u015blanej postaci.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wspiera\u0107 mo\u017cna si\u0119 tak\u017ce metod\u0105 TWI (ang. Program Training WIthin Industry), czyli sposobem przekazywania wiedzy pod postaci\u0105 trzech etap\u00f3w: uczymy tego, co robimy, jak to robimy i dlaczego to robimy. Na ko\u0144cu dana osoba zawsze powinna powt\u00f3rzy\u0107, jak zrozumia\u0142a przekazywany fragment wiedzy. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Problem uciekaj\u0105cej wiedzy &#8211; narz\u0119dzia:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Dokumentacja<\/strong> \u2013 zapanowanie nad dokumentacj\u0105 projektow\u0105 bywa trudne, ale powinni\u015bmy skupi\u0107 si\u0119 na tworzeniu przejrzystej i stale aktualizowanej dokumentacji (najlepiej doda\u0107 ten wym\u00f3g do definition of done, aby z ka\u017cdym przyrostem developerskim na bie\u017c\u0105co uzupe\u0142nia\u0107 dokumentacj\u0119).<\/li>\n\n\n\n<li><strong>Brak silosowania wiedzy<\/strong> \u2013 w <strong>zespole projektowym<\/strong> powinny znale\u017a\u0107 si\u0119 osoby odpowiedzialne za dany obszar, ale jednocze\u015bnie nale\u017cy unika\u0107 sytuacji, gdzie w projekcie jest tylko jedna osoba posiadaj\u0105ca dany zakres wiedzy. Zawsze powinien by\u0107 kto\u015b na zast\u0119pstwo, chocia\u017cby na okres urlopowy.<\/li>\n\n\n\n<li><strong>Wiedza pokrewna<\/strong> \u2013 Wa\u017cne, aby budowa\u0107 kultur\u0119 przekazywania i dzielenia si\u0119 wiedz\u0105 ze swoich obszar\u00f3w wewn\u0105trz zespo\u0142\u00f3w. Istotna powinna by\u0107 nie tylko corowa wiedza, ale tak\u017ce wiedza z obszar\u00f3w wspomagaj\u0105cych i z dziedzin pokrewnych. Zrozumienie r\u00f3l i obszar\u00f3w pomi\u0119dzy poszczeg\u00f3lnymi cz\u0142onkami zespo\u0142u poprawia wsp\u00f3\u0142prac\u0119 i komunikacj\u0119, co przek\u0142ada si\u0119 na szybszy i bardziej wydajny <strong>proces wytwarzania oprogramowania<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Ceremonie scrumowe, wspieraj\u0105ce proces uczenia<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Daily<\/strong> \u2013 podnosimy poziom wiedzy i kompetencji w zakresie wyst\u0105pie\u0144 publicznych (nie jest to wiedza czysto projektowa, ale przydaje si\u0119 np. w kontaktach z klientem).&nbsp;<\/li>\n\n\n\n<li><strong>Refinement<\/strong>&nbsp;\u2013&nbsp;pokazujemy perspektywy r\u00f3\u017cnych os\u00f3b w zespole (programisty, testera i analityka). \u017badna rola nie powinna by\u0107 pomijana \u2013 w sytuacji, w kt\u00f3rej tak si\u0119 dzieje, cz\u0119sto wymagania nie s\u0105 dostarczane w takim tempie, jak si\u0119 zobowi\u0105zali\u015bmy (np. nie jeste\u015bmy w stanie przewidzie\u0107,&nbsp;\u017ce testowanie zajmie du\u017co wi\u0119cej czasu ni\u017c zak\u0142adali\u015bmy w oparciu wy\u0142\u0105cznie o w\u0142asn\u0105 perspektyw\u0119).&nbsp;<\/li>\n\n\n\n<li><strong>Review<\/strong> \u2013 to nie demo! Na review uczymy si\u0119 produktu i tego, co ma si\u0119 dalej z nim zadzia\u0107. Widz\u0105c, co zosta\u0142o wytworzone, mo\u017cemy podj\u0105\u0107 decyzj\u0119, w jakim kierunku produkt b\u0119dzie si\u0119 rozwija\u0142.&nbsp;<\/li>\n\n\n\n<li><strong>Retro<\/strong> \u2013 uczymy si\u0119 kultury feedbacku, ale te\u017c wychodzimy z konkretnymi action points do zrobienia&nbsp;(co\u015b&nbsp;dla aktywist\u00f3w), kt\u00f3re&nbsp;b\u0119d\u0105&nbsp;realizowane w kolejnym sprincie. Dodatkowo na retro, podczas analizy przyczyn \u017ar\u00f3d\u0142owych, uczymy si\u0119 narz\u0119dzi wspomagaj\u0105cych kreatywno\u015b\u0107 (np. Diagram Ishikawy, Macierz&nbsp;O&#8217;connora) i nic nie stoi na przeszkodzie, \u017ceby korzysta\u0107 z nich tak\u017ce w trakcie codziennej pracy. W ko\u0144cu <strong>tworzenie&nbsp;oprogramowania<\/strong>&nbsp;jest prac\u0105 kreatywn\u0105  <\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Masz jakiekolwiek w\u0105tpliwo\u015bci, czy poprawnie wykorzystujesz narz\u0119dzia oraz praktyki wspieraj\u0105ce uczenie si\u0119 w swoim <strong>procesie wytwarzania oprogramowania<\/strong>? Skontaktuj si\u0119 z nami!&nbsp;&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wolisz ogl\u0105da\u0107 ni\u017c czyta\u0107? Jak\u0105 wiedz\u0105 zarz\u0105dzamy w projektach? Zwinno\u015b\u0107, zmiana i uczenie si\u0119 W zespo\u0142ach zwinnych nieod\u0142\u0105cznym elementem jest zmiana, a ka\u017cda zmiana wymaga nauczenia si\u0119 czego\u015b nowego. Co za tym idzie, w projektach uczymy si\u0119 nieustannie \u2013 wdra\u017caj\u0105c nowe narz\u0119dzia czy optymalizuj\u0105c proces wytwarzania oprogramowania.&nbsp; Zarz\u0105dzanie wiedz\u0105 najcz\u0119\u015bciej kojarzy si\u0119 z obszarem merytorycznym, [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":29976,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"topic":[],"blog-author":[],"class_list":["post-29973","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bez-kategorii"],"acf":[],"_links":{"self":[{"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/posts\/29973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/comments?post=29973"}],"version-history":[{"count":2,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/posts\/29973\/revisions"}],"predecessor-version":[{"id":40195,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/posts\/29973\/revisions\/40195"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/media\/29976"}],"wp:attachment":[{"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/media?parent=29973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/categories?post=29973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/tags?post=29973"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/topic?post=29973"},{"taxonomy":"blog-author","embeddable":true,"href":"https:\/\/stg.altkomsoftware.com\/pl\/wp-json\/wp\/v2\/blog-author?post=29973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}