„ A ja myślałem” - czyli o dobrej komunikacji wykonawcy z zamawiającym. Co zrobić, żeby uniknąć nieporozumień, zamknąć projekt w budżecie i zakończyć pracę w umówionym terminie?

Ciebie również nurtują te kwestie? Z pewnością odnalezienie odpowiedzi na jedynie trzy pytania dzieli nas od sukcesu. Tak mało, a jednak tak dużo! Nawet pomimo sporego doświadczenia w prowadzeniu projektów, należy włożyć wiele wysiłku, aby osiągnąć cel.


Sprostanie wszystkim wyżej wymienionym zagadnieniom, opiera się na jednym wspólnym mianowniku, jakim jest komunikacja. Niestety nawet pomimo pracy z najlepszym zespołem wykonawców, najbardziej szacowny projekt może zakończyć się klęską. Dlaczego? Z powodu braku dobrej komunikacji między wykonawcą, a zamawiającym. Co zrobić, żeby była ona skuteczna? Poniżej przedstawiam kilka ważnych punktów, na które należy zwrócić uwagę i które pomogą w lepszym zrozumieniu oczekiwań klienta.


Zanim jednak na dobre napiszę więcej na temat sprawniejszej i lepszej komunikacji, pozwolę sobie zarekomendować książkę Michała Bartyzela „Oprogramowanie szyte na miarę. Jak rozmawiać z klientem, który nie wie, czego chce”. Stanowi ona dobrą podstawę do lepszej komunikacji z zamawiającym. Przede wszystkim dlatego, że autor pokazuje dwa światy: programistów, którzy myślą i skupiają się na kategoriach technicznych oraz klienta, który kieruje się spojrzeniem czysto biznesowym. Pokuszę się o stwierdzenie, że książka jest wręcz encyklopedią wiedzy, przydatną nie tylko project managerom, ale również samym programistom. Lektura pozwala spojrzeć w sposób szerszy na to, co robią programiści, dla kogo i po co? Niewątpliwą zaletą książki jest życiowe i zawodowe doświadczenie autora, które skłoniło go do jej napisania. Dzięki powyższemu ukazuje on problemy na podstawie realnych sytuacji, dodatkowo przedstawiając wiele cennych wskazówek. Jak wiadomo, człowiek najlepiej uczy się na błędach. Ale po co wyciągać wnioski z własnych porażek, jeżeli możemy wykorzystać cudze doświadczenie.

Nieprzypadkowo w tytule mowa o tym, że klient nie wie, czego chce.

Nawet jeżeli wydaje mu się, że wie czego chce, to podczas rozmowy z pewnością wyniknie wiele kwestii, z których sobie nie zdawał sprawy. Należy pamiętać, że to, jak się zacznie oraz zakończy projekt, zależy w głównej mierze od wykonawców. Są oni niczym przewodnicy, którzy prowadzą klienta przez nieznany dla niego świat. Jako osoby zajmujące się programowaniem zawodowo, powinny nakreślić ścieżkę współpracy tak, aby klient czuł się bezpiecznie i mógł wspólnie dążyć do nakreślonego celu.


Żeby lepiej zrozumieć potrzeby klienta, powinniśmy poświęcić nawet kilkanaście godzin na spisanie wspólnych założeń, które są niezbędne do tego, aby powstała nowa aplikacja Webowa lub Mobilna, system ERP czy CRM. Założenia rzutują na całokształt projektu, dlatego nie należy ich bagatelizować. Najlepiej zaproponować klientowi kilka spotkań, które odbywać się będą w odstępach czasowych. Wszystko po to, aby klient mógł przysłowiowo „przespać się” z omawianymi zagadnieniami. Ustalenie założeń podczas jednego spotkania jest niemożliwe, ponieważ w trakcie różnych etapów realizacji pojawiają się nowe kwestie, których mogliśmy wcześniej nie poruszyć. Tak więc poświęcenie kilku godzin więcej przy ich spisywaniu, może być zbawienne dla powodzenia projektu i zapobiegnie ewentualnym rozbieżnościom na linii zamawiający - wykonawca.

Sztuka zadawania pytań

Kolejną ważną rzeczą jest pozorna rozmowa o „tym samym”, czyli sztuka zadawania pytań i odpowiednia nomenklatura. Często zdarza się, że klient i wykonawca inaczej rozumieją omawiane zagadnienia. Dlatego tak ważne jest formułowanie bardzo precyzyjnych pytań. Przebieg dyskusji można zobrazować za pomocą lejka. Początkowe pytania są dosyć ogólne, a naszym zadaniem jest tak je zadawać, żeby klient udzielił bardzo dokładnych odpowiedzi. W myśl zasady „od nitki do kłębka".


Warto pamiętać, że zadając pytania, możesz niechcący zasugerować odpowiedź. Jeśli przykładowo zapytasz o problemy, rozmówca będzie mówił o problemach. Jeżeli zapytasz o korzyści, rozmówca będzie mówił o korzyściach. Musisz na to bardzo uważać, bo gdy tak się stanie, to zamiast dowiedzieć się więcej na temat potrzeb klienta, usłyszysz echo swoich przemyśleń.

Kto prowadzi rozmowę?

Odpowiadając na to pytanie, posłużę się cytatem: „Ten, kto więcej mówi? Ten, kto głośniej mówi? Czy może ten, kto potrafi szybko i skutecznie przekonać do swoich racji? A może ten, kto właściwie prowadzi konwersację? Tak, ten kto zadaje pytania! Zadawanie odpowiednich pytań pozwala przeprowadzić konwersację w kontrolowany sposób i uczynić ją maksymalnie efektywną pod kątem pozyskiwanych wymagań.” Drugim najważniejszym aspektem prowadzenia rozmowy jest wejście w dziedzinę klienta. W dosłownym tego słowa znaczeniu. Należy ukierunkować myślenie na biznesowe postrzeganie produktu od strony klienta, ponieważ w przeciwnym razie, nie będziesz tworzył aplikacji, oprogramowania czy produktu dla klienta, lecz dla samego siebie. Wszyscy wiemy, kto jest ostatnim odbiorcą oprogramowania i kto za nie płaci. Za każdym razem zanim zadasz pytanie o przydatność featura (funkcjonalności), zadaj sobie pytanie, czy taka funkcjonalność będzie niezbędna klientowi?

Słownictwo

Pamiętaj, że słownictwo powinno być zaczerpnięte z języka klienta. W praktyce przekłada się to na używanie tych samych pojęć, rozumianych w ten sam sposób, z uwzględnieniem tego samego kontekstu biznesowego. Nie bój się zadawać pytań, jeżeli czegoś nie wiesz. Współpraca ma być korzystna dla dwóch stron, ponieważ finalnym efektem jest aplikacja lub oprogramowanie, z którego będą korzystali Twoi klienci.


Od samego początku Waszych rozmów, do których zalicza się również etap ofertowania, bardzo ważne jest dokładne precyzowanie i właściwe wyrażanie. Klient i wykonawca to samo pojęcie mogą rozumieć dwojako. Dlatego słuchaj uważnie i ucz się od klienta jego nomenklatury już od momentu pierwszych spotkań. Jak najszybciej wprowadź ją do Waszych rozmów, ponieważ takie zastosowanie szybko przełoży się na lepsze zrozumienie. Klient na każdym etapie współpracy musi czuć, że rozmawia z profesjonalistami, którzy doskonale rozumieją jego biznes, a nie tylko i wyłącznie z wykonawcami jego oprogramowania, którzy biernie i bez najmniejszego zrozumienia wykonują jego sugestie.


Z kim prowadzić rozmowę? Z prezesem, dyrektorem, a może …?

Często przy bardziej rozbudowanych projektach po stronie klienta pracuje kilka osób jednocześnie. Uczestniczą one w spotkaniach, wnoszą swoje spostrzeżenia i przemyślenia, zgłaszają uwagi, etc. Z pewnością są to bardzo wartościowe osoby dla projektu. Należy wziąć pod uwagę fakt, że finalnie system, aplikacja, czy też oprogramowanie tworzone są nie tylko dla jednej osoby, ale dla całego zespołu, a niejednokrotnie i dla klienta końcowego. Ponadto, zapraszając na spotkania osoby z różnych działów, angażujemy ich również w powstawanie aplikacji. Takie osoby czują są ważne, docenione i utożsamiają się z oprogramowaniem od samego początku powstawania aplikacji.


Przedstawiona forma współpracy jest bardzo dobra, ponieważ umożliwia poznanie punktu widzenia i myślenia osób na różnych stanowiskach. Niejednokrotnie są to osoby odpowiedzialne za kompletnie odmienne zadania, które całościowo będą musiały współgrać, żeby aplikacja była kompletna i spełniała wymagania klienta. Warte podkreślenia jest również to, że proces wdrożenia oprogramowania w firmie przebiegnie w sposób płynny i skuteczny, ponieważ będziemy mieli „naszych przedstawicieli” po stronie klienta. W trakcie wdrażania oprogramowania do firmy, będą oni pełnili rolę konsultantów i w razie niejasności odpowiedzą na pytania.


Ważne, żeby były to osoby na stałe oddelegowane do prowadzenia projektu i uczestniczyły regularnie w spotkaniach. Każda nowa osoba, która będzie gościem bez znajomości kontekstu i założeń, niestety może wprowadzić dezorganizację. Nowe osoby często chcą się wykazać i wnieść swoje uwagi. Czasami są one nietrafione i z dużym prawdopodobieństwem będą się wykluczały z założeniami projektu. Ponadto sytuacja spowoduje stratę czasu, ponieważ osoba będzie wymagała poświęcenia dodatkowej uwagi, wdrożenia i wytłumaczenie zależności.


W takim razie, kto jest najbardziej odpowiednią osobą do prowadzenia projektu po stronie klienta? Nie ma na to jednej, właściwej odpowiedzi. Klient wie najlepiej, kto w firmie posiada odpowiednie kompetencje do zarządzania projektem. Ważne, żeby była to osoba na wyższym stanowisku, z dłuższym stażem pracy, znająca wszystkie bolączki i problemy „od podszewki”. Jest to bowiem pewnego rodzaju gwarancja dla wykonawcy, że reprezentant nie zostanie zmieniony w trakcie realizacji projektu.


Z kim prowadzić ustalenia, skoro wiele osób może uczestniczyć w spotkaniach?


W dużym, dużym skrócie: z osobą, którą klient wyznaczy jako odpowiedzialną za projekt i wpisze ją do umowy. Kluczem do pomyślnego zakończenia projektu, jest wydelegowanie przez klienta jednej osoby, odpowiedzialnej za kontakt i ustalenia. Jest to swego rodzaju pośrednik, z którym dzielimy się informacjami i spostrzeżeniami całego zespołu. Jego zadaniem jest weryfikacja wszystkich uwag i przefiltrowanie ich, zanim przekaże je zamawiającemu.

Założenia, makieta funkcjonalna, projekt graficzny, kodowanie, testy. Co jest najważniejsze?

Każdy etap realizacji projektu jest bardzo ważny i kategoryzowanie ich mija się z celem. Nie zmienia to faktu, że zbieranie założeń ma istotny wpływ na powodzenie realizacji projektu. Solidnie przygotowana specyfikacja pozwoli uniknąć nieporozumień, zamknąć projekt w budżecie i zakończyć pracę w terminie. Dzięki dobrej komunikacji, będziemy mogli przygotować solidne założenia. W ogólnym rozrachunku doprowadzi to do zadowolenia dwóch stron.

Odkrywanie potrzeb

Potrzeby klientów są powodem tego, że chcą oni nowych funkcjonalności i zapłacą za Twoją pracę. Jeżeli zrozumiesz, jakie potrzeby biznesu są ukryte za oczekiwanymi funkcjonalnościami, zrozumiesz jednocześnie, co biznes ceni najbardziej. Te potrzeby to nic innego, jak wartości biznesowych funkcjonalności. Zamiast skupiać się na potrzebach biznesu, najłatwiej rozmawiać o funkcjonalnościach, ponieważ są namacalne. Dlatego tak łatwo popełnić błąd.


Najlepszym rozwiązaniem do doprecyzowania potrzeb, jest narysowanie przepływu informacji. Może to być rysunek lub makieta funkcjonalna. Jakkolwiek, sprowadza się do jednego, czyli User Story. Coś, dzięki czemu w łatwy sposób można przedstawić, jak użytkownik powinien korzystać z systemu i jakie korzyści mu przyniesie. Niewątpliwą wartością User Story jest fakt, że są czytelne zarówno dla wykonawców, jak i zamawiających.


Jeśli uda Ci się trafnie nazwać oczekiwane korzyści, lepiej zrozumiesz klienta, a konwersacja nabierze większego dynamizmu i stanie się bardziej konkretna. Dosyć łatwo można nazwać korzyści, ponieważ pasują do przykładowych schematów:


  • Chcę osiągnąć ...
  • To sprawi, że ...
  • To będzie oznaczać, że …

  • Podstawowymi pytaniami w odkrywaniu potrzeb są:

  • Dlaczego?
  • Po co?
  • W jakim celu?
  • Co chcesz przez to osiągnąć?
  • Ustalenie priorytetów i wymagań. MoSCoW.

    Jest to nic innego jak priorytetyzacja pracy w analizie biznesowej, potrzebna do stworzenia oprogramowania. Stosujemy ją po to, aby osiągnąć zrozumienie między założeniami projektowymi, a poszczególnymi etapami, w celu określenia kolejności prac i ustalenia najważniejszych składowych.


    To tyle, jeżeli chodzi o teorie. A jak to wygląda w praktyce? W tworzeniu aplikacji bardzo ważnym czynnikiem jest czas. Dlatego tak ważne jest określenie priorytetów powstawania wersji MVP oraz dalszych jej etapów. W tym celu sprawdza się metoda MoSCoW, która w wolnym tłumaczeniu pochodzi od słów:


    Must have - opisuje wymagania, które muszą być spełnione w finalnym rozwiązaniu.

    Should have - są to wymagania potrzebne, ale niekonieczne do powstania aplikacji.

    Could have - wymagania, które dobrze, żeby były.

    Won’t have (would like) - są najmniej konieczne, opłacalne i potrzebne w danym momencie

    Kilka łatwych wymagań może zwiększyć zadowolenie klienta, przy równoczesnym niskim koszcie.

    Podsumowanie

    Jak widzimy w powyższym artykule, wiele czynników ma wpływ na komunikację z klientem. Nie ma złotego środka do idealnej komunikacji i nie da się tematu wyczerpać w jednym artykule. Warto pamiętać, że wiedzę możemy czerpać nie tylko z doświadczenia, ale również z książek. Mimo, że literatura na ten temat jest obszerna, to nie do końca wyczerpuje pytania o lepszą komunikację. Jedynie zbliża nas do odpowiedzi i pokazuje skuteczne sposoby rozmowy i kompletowania założeń. Z pewnością powyższe wskazówki wskażą nam lepszą drogę i pomogą stać się skuteczniejszymi rozmówcami.


    Niewątpliwie zachęcam do czytania i pogłębiania wiedzy na temat lepszej komunikacji z klientem, ponieważ ma ona ogromny wpływ na powodzenie projektu.


    Źródło: Michał Bartyzel, Oprogramowania szyte na miarę. Jak rozmawiać z klientem który nie wie, czego chce, Gliwice 2015


    Jako Ultimate Systems mamy duże doświadczenie we współpracy z firmami. Tworzymy dedykowane rozwiązania biznesowe w postaci aplikacji mobilnych oraz webowych. Jeśli potrzebujesz pomocy i szukasz sprawdzonego wykonawcy – zapraszamy do kontaktu.


    Top HTML5 Mobile App Development Agencies https://www.appdeveloperlisting.com/html5-mobile-app-development-agencies/