{"id":2542,"date":"2016-11-21T09:00:44","date_gmt":"2016-11-21T08:00:44","guid":{"rendered":"http:\/\/jacekwieczorek.agony.webd.pl\/?p=2542"},"modified":"2023-12-29T23:34:33","modified_gmt":"2023-12-29T22:34:33","slug":"budowanie-wspolnego-zrozumienia-storymapping","status":"publish","type":"post","link":"https:\/\/jacekwieczorek.pl\/blog\/budowanie-wspolnego-zrozumienia-storymapping\/","title":{"rendered":"Budowanie wsp\u00f3lnego zrozumienia #storymapping"},"content":{"rendered":"<p>Kilka godzin temu zako\u0144czy\u0142em warsztaty produktowe. Ich g\u0142\u00f3wnym celem by\u0142o przygotowanie u\u017cytecznego oraz wykonalnego rozwi\u0105zania, realizuj\u0105cego konkretn\u0105 potrzeb\u0119 klienta.<\/p>\n<p>To ju\u017c kt\u00f3ry\u015b raz z rz\u0119du, gdy wychodz\u0119 z tego rodzaju warsztat\u00f3w zafascynowany, jak niesamowicie prostym, a zarazem nadzwyczaj skutecznym narz\u0119dziem jest <strong>Story Mapping<\/strong>.<\/p>\n<p>Pos\u0142u\u017c\u0119 si\u0119 prawdziwym przyk\u0142adem, oczywi\u015bcie na potrzeby tego wpisu\u00a0w\u00a0uproszczonej wersji, aby m\u00f3c podzieli\u0107\u00a0si\u0119 z Wami wysokopoziomow\u0105 ide\u0105 oraz przebiegiem samego \u0107wiczenia.<!--more--><\/p>\n<h1>Co to jest Story Mapping? #podstawy<\/h1>\n<p>Gdyby mia\u0142 opisa\u0107 Story Mapping jednym zdaniem, to powiedzia\u0142by, \u017ce jest to narz\u0119dzie s\u0142u\u017c\u0105ce do <strong>budowania wsp\u00f3lnego zrozumienia produktu<\/strong>.<\/p>\n<p>Je\u015bli mia\u0142 do dyspozycji jeszcze kilka kolejnych zda\u0144, powiedzia\u0142bym, \u017ce skupienie w trakcie \u0107wiczenia utrzymywane jest na u\u017cytkowniku oraz tym, <strong>w jaki spos\u00f3b b\u0119dzie korzysta\u0142 z z produktu<\/strong>. Realizowane jest to poprzez opowiadanie historii u\u017cytkownika (czyli popularnych User Stories,\u00a0wystepuj\u0105ce w \u017cyciu zespo\u0142\u00f3w tak\u017ce jako\u00a0<em>historyjki<\/em>, <em>storysy<\/em> oraz <em>storyjki<\/em> #truestory), dekomponowanie ich na mniejsze cz\u0119\u015bci oraz uk\u0142adanie ich w kolejno\u015bci zgodnej z tym, jak u\u017cytkownicy u\u017cywaj\u0105 systemu.<\/p>\n<p>G\u0142\u00f3wn\u0105 osi\u0105 naszej mapy szkielet aplikacji, kt\u00f3ry odzwierciedla <strong>opowie\u015b\u0107<\/strong> o tym, w jaki spos\u00f3b u\u017cytkownicy b\u0119d\u0105 z niej korzysta\u0107. Szkielet ten uzupe\u0142niaj\u0105 zdekomponowane historie, kt\u00f3re funkcjonuj\u0105 na ni\u017cszym poziomie szczeg\u00f3\u0142owo\u015bci i u\u0142o\u017cone s\u0105 wed\u0142ug priorytet\u00f3w lub odzwierciedlaj\u0105 alternatywne scenariuszy korzystania z produktu.<\/p>\n<p>Dla os\u00f3b, kt\u00f3re chc\u0105 g\u0142\u0119biej zanurzy\u0107 si\u0119 w temacie Story Mappingu, z czystym sercem rekomenduj\u0119 <a href=\"https:\/\/www.amazon.com\/User-Story-Mapping-Discover-Product\/dp\/1491904909\">ksi\u0105\u017ck\u0119 Jeff\u2019a Patton\u2019a<\/a>, kt\u00f3ry jest autorem tej techniki. Ksi\u0105\u017ck\u0119 czytam i zosta\u0142 mi jeszcze kawa\u0142ek do doko\u0144czenia &#8211; w niedalekiej przysz\u0142o\u015bci napisz\u0119 o niej kilka s\u0142\u00f3w na blogu.<\/p>\n<h1>K\u00f3\u0142ka, tr\u00f3jk\u0105ty, kwadraty\u2026 #komunikacja<\/h1>\n<p>Scenariusz warsztat\u00f3w produktowych jest zazwyczaj bardzo podobny. Zesp\u00f3\u0142 wchodzi na warsztat maj\u0105c dosy\u0107 mgliste poj\u0119cie, co tak faktycznie jest do zrealizowania. Cz\u0119sto nie wiedz\u0105 o produkcie wi\u0119cej, ni\u017c kilka zda\u0144 wymienionych poprzez e-maile. Domena produktu bywa obca. Bywa, \u017ce w zrozumieniu wyraz\u00f3w oraz skr\u00f3t\u00f3w charakterystycznych dla domeny produktowej nie pomaga nietypowy akcent klienta, charakterystyczny np. dla mieszka\u0144c\u00f3w p\u00f3\u0142nocnej cz\u0119\u015bci Wielkiej Brytanii.<\/p>\n<p>Patrz\u0105c z boku na przebieg warsztatu jako moderator, cz\u0119sto odnosz\u0119 wra\u017cenie, \u017ce w g\u0142owach uczestnik\u00f3w rodz\u0105 si\u0119 <strong>kompletnie r\u00f3\u017cne obrazy<\/strong> tego, co tak naprawd\u0119 jest do stworzenia. Szum informacyjny jest bardzo wysoki &#8211; my\u015bl zwerbalizowana przez klienta trafia do osoby po stronie dostawcy, kt\u00f3ry na sw\u00f3j prywatny spos\u00f3b interpretuje ten komunikat i buduje swoje wyobra\u017cenie tego, jak mog\u0142o by to wygl\u0105da\u0107. Mo\u017ce to prowadzi\u0107 do sytuacji, w\u00a0kt\u00f3rej ka\u017cdy wyobra\u017ca sobie co\u015b &#8222;nieco&#8221; innego (wspomniane w nag\u0142\u00f3wku k\u00f3\u0142ko, tr\u00f3jk\u0105 lub kwadrat) chocia\u017c istnieje poczucie, \u017ce rozmawiamy\u00a0o tej figurze geometrycznej.<\/p>\n<h1>Story Mapping to proces ci\u0105g\u0142y<\/h1>\n<p>Podczas ostatniego warsztatu dzia\u0142a\u0142em jak uruchomiony w tle proces w systemie operacyjnym: pozostaj\u0105c na drugim planie dyskusji, wykonywa\u0142em konsekwentn\u0105 prac\u0119 zwi\u0105zan\u0105 ze stopniowym budowaniem Story Mapy.<\/p>\n<p>W tym konkretnym przypadku by\u0142o to <strong>nieinwazyjne dokumentowanie wszystkiego<\/strong>, co rodzi\u0142o si\u0119 podczas dyskusji dotycz\u0105cej produktu. Stara\u0142em si\u0119 wy\u0142apywa\u0107 z rozmowy zar\u00f3wno du\u017ce, rozbudowane aktywno\u015bci dotycz\u0105ce g\u0142\u00f3wnego flow u\u017cytkownika (np. logowanie) jak r\u00f3wnie\u017c ich szczeg\u00f3\u0142y oraz detale (np. zapami\u0119tanie has\u0142a, mo\u017cliwo\u015b\u0107 odzyskania zapomnianego has\u0142a, dodatkowe informacje na ekranie logowanie) i dok\u0142ada\u0142em je do Story Mapy. Tym samym, w pewnym sensie mimowolnie, na \u015bcianie stopniowo rodzi\u0142 si\u0119 obraz produktu, do kt\u00f3rego co jaki\u015b czas mogli\u015bmy si\u0119 odwo\u0142a\u0107 i upewni\u0107, \u017ce <strong>rozumiemy go w ten sam<\/strong> spos\u00f3b.<\/p>\n<h1>Story Mapping lubi si\u0119 z UX<\/h1>\n<p>Uzupe\u0142nieniem Story Mapy by\u0142y pierwsze szkice interfejsu u\u017cytkownika, budowane na r\u00f3\u017cnym poziomie odwzorowania szczeg\u00f3\u0142\u00f3w: od uproszczonych, szybkich \u201cbazgro\u0142\u00f3w\u201d na tablicy sucho\u015bcieralnej do ca\u0142kiem szczeg\u00f3\u0142owego interfejsu, wyklikanego mi\u0119dzy pierwszym a drugim dniem w dedykowanej aplikacji.<\/p>\n<p>Te dwie aktywno\u015bci, tj. budowanie Story Mapy oraz tworzenie szkic\u00f3w, dzia\u0142y si\u0119 symultanicznie. W proces od strony narz\u0119dziowej zaanga\u017cowali\u015bmy:<br \/>&#8211; zwyk\u0142a rozmow\u0119,<br \/>&#8211; s\u0142owo pisane,<br \/>&#8211; dwu-wymiarow\u0105, wizualn\u0105 reprezentacj\u0119 produktu oraz<br \/>&#8211; szkice interfejsu o r\u00f3\u017cnym poziomie szczeg\u00f3\u0142owo\u015bci.<\/p>\n<p>Wszystko to, aby upewni\u0107 si\u0119, \u017ce &#8211; jak to mawiaj\u0105 nasi angloj\u0119zyczni koledzy &#8211; <em>jeste\u015bmy na tej samej stronie<\/em>, czyli po prostu <strong>tak samo rozumiemy rzeczy, o kt\u00f3rych w\u0142a\u015bnie toczy si\u0119 rozmowa<\/strong>.<\/p>\n<h1>Wykrawanie pierwszej wersji produktu<\/h1>\n<p>Na koniec drugiego dnia warsztat\u00f3w poprosili\u015bmy Product Ownera po stronie klienta, aby przegl\u0105dn\u0105\u0142 stworzon\u0105 Story Map\u0119 pod k\u0105tem priorytet\u00f3w oraz zestawu funkcjonalno\u015bci stanowi\u0105cych pierwsz\u0105 wersj\u0119 produktu. Odkre\u015bli\u0142 on wyra\u017an\u0105 lini\u0105 to, co stanowi dla niego priorytet i na czym powinni\u015bmy si\u0119 skupi\u0107 od tego, co na dzisiaj nie jest dla niego istotne.<\/p>\n<p>Wszystkie elementy powy\u017cej linii skonwertowali\u015bmy do postaci <a href=\"https:\/\/jacekwieczorek.pl\/blog\/sposoby-dzielenia-user-stories-na-male-czesci\/\">niedu\u017cych User Stories<\/a> z kryteriami akceptacyjnymi, kt\u00f3re ostatecznie zasili\u0142y Product Backlog. W \u0107wiczenie to zaanga\u017cowany by\u0142 ca\u0142y zesp\u00f3\u0142: ka\u017cda osoba otrzyma\u0142a kawa\u0142ek Story Mapy to skonwertowania. Moje obserwacje s\u0105 takie, \u017ce pomog\u0142o to dodatkowo wzmocni\u0107 zaanga\u017cowanie produktowe po stronie zespo\u0142u oraz wywo\u0142a\u0142o kilka dodatkowych dyskusji rozja\u015bniaj\u0105cych zrozumienie produktu.<\/p>\n<figure id=\"attachment_2555\" aria-describedby=\"caption-attachment-2555\" style=\"width: 584px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/jacekwieczorek.pl\/blog\/wp-content\/uploads\/2016\/11\/przyklad-story-mappingu-z-opisem-s.png\" rel=\"attachment wp-att-2555\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-2555 size-large\" src=\"https:\/\/jacekwieczorek.pl\/blog\/wp-content\/uploads\/2016\/11\/przyklad-story-mappingu-z-opisem-s-768x1024.png\" alt=\"Przyk\u0142ad Story Mappingu z opisem\" width=\"584\" height=\"779\" srcset=\"https:\/\/jacekwieczorek.pl\/blog\/wp-content\/uploads\/2016\/11\/przyklad-story-mappingu-z-opisem-s-768x1024.png 768w, https:\/\/jacekwieczorek.pl\/blog\/wp-content\/uploads\/2016\/11\/przyklad-story-mappingu-z-opisem-s-225x300.png 225w, https:\/\/jacekwieczorek.pl\/blog\/wp-content\/uploads\/2016\/11\/przyklad-story-mappingu-z-opisem-s.png 1024w\" sizes=\"(max-width: 584px) 100vw, 584px\" \/><\/a><figcaption id=\"caption-attachment-2555\" class=\"wp-caption-text\">Przyk\u0142ad Story Mappingu z opisem<\/figcaption><\/figure>\n<h1>Nie wyrzucaj Story Mapy do kosza<\/h1>\n<p>Czy maj\u0105c ju\u017c przygotowany Product Backlog, zdecydowali\u015bmy si\u0119 zedrze\u0107 Story Map\u0119 ze \u015bciany i umie\u015bci\u0107 j\u0105 w koszu na \u015bmieci? Oczywi\u015bcie mogliby\u015bmy tak zrobi\u0107, jednak by\u0142aby to wielka strata dla zespo\u0142u oraz stakeholder\u00f3w. Dostrzegam co najmniej trzy u\u017cyteczne sposoby zastosowania Story Mapy w dalszym procesie deweloperskim jako:<\/p>\n<ul>\n<li><strong>narz\u0119dzie wspieraj\u0105ce codzienn\u0105 komunikacj\u0119 zespo\u0142u<\/strong> &#8211; Story Mapa dost\u0119pna na przestrzeni zajmowanej przez zesp\u00f3\u0142 jest wygodnym narz\u0119dziem wspieraj\u0105cym dyskusje produktowe. Wielokrotnie by\u0142em \u015bwiadkiem sytuacji, w kt\u00f3rych cz\u0142onkowie zespo\u0142u w trakcie pracy podchodz\u0105 do Story Mapy, wskazuj\u0105 palcem konkretne elementy, dyskutuj\u0105 flow procesu, dodaj\u0105 lub usuwaj\u0105 kartki reprezentuj\u0105ce funkcjonalno\u015bci. Story Mapa bywa tez pomocna, gdy pojawia si\u0119 potrzeba, aby wyt\u0142umaczy\u0107 nowo zatrudnionym osobom, jak wysokopoziomowo wygl\u0105da produkt oraz jakie s\u0105 dalsze plany rozwoju.<\/li>\n<li><strong>wysokopoziomowy artefakt przydany podczas Przegl\u0105d\u00f3w Sprintu<\/strong> &#8211; w jednym z zespo\u0142\u00f3w z kt\u00f3rym wsp\u00f3\u0142pracuj\u0119, Story Mapa jest wykorzystywana podczas <a href=\"https:\/\/porzadnyagile.pl\/029-porzadny-przeglad-sprintu\/\" target=\"_blank\" rel=\"noopener\">Sprint Review<\/a> jako no\u015bnik informacji dotycz\u0105cy aktualnego stanu rozwoju produktu. Wy\u015bwietlana jest zwykle na pocz\u0105tku spotkania a przej\u015bcie po jej elementach jest szkieletem prezentacji zmian w produkcie. Dodatkowo, zesp\u00f3\u0142 zastosowa\u0142 kodowanie kolorami, kt\u00f3re odzwierciedlaj\u0105 status element\u00f3w Story Mapy: zadania <em>zielone<\/em> s\u0105 zrealizowane, <em>pomara\u0144czowe<\/em> to zadania z bie\u017c\u0105cego Sprintu, <em>bia\u0142e<\/em> reprezentuj\u0105 zadania czekaj\u0105ce na realizacj\u0119 (domy\u015blny kolor), natomiast <em>czerwone<\/em> to zadania zablokowane, czyli oczekuj\u0105ce na reakcj\u0119 poza zespo\u0142em, np. ze strony dzia\u0142u marketingu. W tym konkretnym przypadku zesp\u00f3\u0142 wykorzystuje aplikacj\u0119 <a href=\"http:\/\/storiesonboard.com\">http:\/\/storiesonboard.com<\/a>\/, kt\u00f3ra pozwala na utrzymywanie elektronicznej wersji mapy oraz jej synchronizacj\u0119 z JIRA.<\/li>\n<li><strong>materia\u0142 do kolejnych warsztat\u00f3w i dyskusji produktowych<\/strong>: jak wspomnia\u0142em wcze\u015bniej, w pewnym momencie Product Owner odkre\u015bli\u0142 lini\u0105 pierwsz\u0105 wersj\u0119 produktu. Nic nie stoi na przeszkodzie, aby \u015bwiadomo\u015b\u0107 i zrozumienie kolejnych wersji produktu nadal budowa\u0107 przy u\u017cyciu Story Mapy, kt\u00f3ra \u201c\u017cyje\u201d wraz z trwaj\u0105cym rozwojem produktu.<\/li>\n<\/ul>\n<h1>Podsumowanie<\/h1>\n<p>Dobre kilka lat temu pierwszy raz prowadzi\u0142em co\u015b, co z perspektywy czasu nazwa\u0142bym bardzo uproszczonym i dosy\u0107 p\u0142ytkim warsztatem produktowym. <a href=\"http:\/\/www.agile247.pl\/story-jam-session-czyli-product-backlog-od-zera-w-jeden-dzien\/\">Opisa\u0142em to \u0107wiczenie<\/a> jaki\u015b czas temu na portalu <a href=\"http:\/\/agile247.pl\">agile247.pl<\/a>. Nie korzysta\u0142em wtedy ze Story Mapy w zespo\u0142ach, z kt\u00f3rymi pracowa\u0142em #wielkaszkoda.<\/p>\n<p>Patrz\u0105c z perspektywy czasu, uwa\u017cam Story Mapping za technik\u0119, kt\u00f3ra <strong>zmienia gr\u0119<\/strong> je\u015bli chodzi o software dewelopment i nie ukrywam, \u017ce jestem jej wielkim fanem. Ubogaca oraz wizualizuje dyskusje produktowe. Buduje wsp\u00f3lne zrozumienie produktu po\u015br\u00f3d zainteresowanych. Pomaga w zrozumieniu, co tak naprawd\u0119 jest do zrealizowania na teraz, a co mo\u017ce poczeka\u0107. Pomaga skupi\u0107 si\u0119 na rozwi\u0105zaniach <em>end-to-end<\/em> oraz dostarczaniu realnej warto\u015bci dla u\u017cytkownika. Ca\u0142kiem sporo, jak na jedno narz\u0119dzie, prawda?<\/p>\n<p>Co my\u015blisz o Story Mappingu? Jakie s\u0105 Twoje do\u015bwiadczenia? Nie zawahaj si\u0119 podzieli\u0107 si\u0119 swoim komentarzem!<\/p>\n\n\n<p> Photo by <a href=\"https:\/\/unsplash.com\/@hugorrocha?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Hugo Rocha<\/a> on <a href=\"https:\/\/unsplash.com\/s\/photos\/sticky-note?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\">Unsplash<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kilka godzin temu zako\u0144czy\u0142em warsztaty produktowe. Ich g\u0142\u00f3wnym celem by\u0142o przygotowanie u\u017cytecznego oraz wykonalnego rozwi\u0105zania, realizuj\u0105cego konkretn\u0105 potrzeb\u0119 klienta. To ju\u017c kt\u00f3ry\u015b raz z rz\u0119du, gdy wychodz\u0119 z tego rodzaju warsztat\u00f3w zafascynowany, jak niesamowicie prostym, a zarazem nadzwyczaj skutecznym narz\u0119dziem jest Story Mapping. Pos\u0142u\u017c\u0119 si\u0119 prawdziwym przyk\u0142adem, oczywi\u015bcie na potrzeby tego wpisu\u00a0w\u00a0uproszczonej wersji, aby m\u00f3c [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3772,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[6],"tags":[],"class_list":["post-2542","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-techniki"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/posts\/2542","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/comments?post=2542"}],"version-history":[{"count":41,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/posts\/2542\/revisions"}],"predecessor-version":[{"id":5190,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/posts\/2542\/revisions\/5190"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/media\/3772"}],"wp:attachment":[{"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/media?parent=2542"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/categories?post=2542"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jacekwieczorek.pl\/blog\/wp-json\/wp\/v2\/tags?post=2542"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}