Niedawno rozpocząłem pracę, dzięki której pracuję nad istniejącym systemem. Wymaga poprawek i aktualizacji, a także nowego kodu. Zrobiłem kilka projektów konserwacja / funkcja dodawanie teraz, a kilka z nich zakończył się znacząco różne od tego, co faktycznie wymagane. Tak, miałem na zaprogramowanie artykuł kilka razy, aby dostać się do miejsca, gdzie wnioskodawca chciał.
Teraz nie mam nic przeprogramowania funkcji, jeśli to, co należy zrobić. Chciałbym jednak skrócić czas realizacji moich projektów. Wąskim gardłem wydaje się być w percepcji żądającej, co należy zrobić. Czy macie jakieś pomysły na to, co można zrobić, aby dowiedzieć się, co trzeba szybciej wnioskodawca?
productivity
client-relations
Michael K.
źródło
źródło
Odpowiedzi:
Kilka punktów rada:
Słuchaj problemów, nie rozwiązań . Wielu klientów ci powiedzieć, jak rozwiązać swoje problemy. Nie słuchaj ich. Jesteś programistą, i to jest zadanie, aby znaleźć rozwiązania problemów. Zamiast słuchać tego, co klienci mają problemy, i dowiedzieć się, jak najlepiej go rozwiązać. jak mówili inni klienci tak naprawdę nie wiedzą, czego chcą, czasem trzeba pokazać im to jako pierwszy.
Zadawaj pytania . Kiedy skończysz zadawać pytania, prosić trochę więcej. Klienci rzadko są zbliżające się ze szczegółami, ponieważ tak naprawdę nie myśleć o tym. Jedynym sposobem masz zamiar uzyskać informacje potrzebne jest, aby podważyć go z nimi.
Dostać rzeczy na piśmie zależności od sytuacji z klientem, może to być bardzo ważne później, gdy zaczną narzekać, jak to, co wydał „nie jest co prosili”. a jeśli nic więcej, napisanie szczegółowych specyfikacji może pomóc Ci upewnić się, że masz wszystkie potrzebne informacje, i pomóc wyjaśnić niejednoznaczności między Tobą a klientem.
Komunikacja jest kluczem . nie rozmawiaj tylko z klientem, zdobywaj informacje, znokautuj kod i nie rozmawiaj z nim, dopóki się nie skończy. Zawsze bądź w kontakcie z klientem. Zadawania pytań w trakcie całego procesu. pokazać im postępy już poczynione i uzyskać informacje zwrotne. Na dłuższą metę ułatwi życie wszystkim.
źródło
Prawie każda książka samopomocy, którą wybierzesz na temat komunikacji, da ci pewną odmianę:
Wynika to z książki o siedmiu nawykach, ale wszystkie są odmianą metody „ aktywnego słuchania ”. Celem jest nie tylko zrozumienie, ale także przekazanie im tego, co zrozumiałeś.
Kiedy myślę, że mam dobry pomysł na to, czego potrzebują (trzymaj się z dala od tego, czego chcą, zwłaszcza jeśli zaczną opisywać szczegóły implementacji - to nie jest twoja praca), podam im przykłady historii różnych osób korzystających z systemu i zobaczę, czy to się z nimi kręci.
Następnie wdrożyć, że spodziewa się, że w pełni raz widzą funkcję, oni rzeczywiście sobie sprawę, że to nie jest dokładnie to, co chcą. Zachowaj elastyczność. Jedyną stałą jest zmiana. I zazwyczaj większość z ostrymi krawędziami wypracowane po drugim szybkiej aktualizacji, po początkowym jeden, ale zawsze znajdę ja asymptotycznie zbliża się jakiś ideał, że nigdy nie można dotrzeć. W końcu musisz pozwolić nieistotnym rzeczom przejść i przejść do celów o wyższej wartości.
źródło
Czuję twój ból....
Zła wiadomość jest taka: w zależności od jakiego rodzaju klientów masz do czynienia, to może być jak zwykle.
Częstym ogólnym problemem jest w zasadzie to, że klienci nie wiedzą, czego chcą . Oni zwykle wiedzą, co chcą osiągnąć, jeśli chodzi o cel działalności, ale często nie mają pojęcia, jak to powinno wyglądać, jeśli chodzi o oprogramowanie. Tak więc w wielu przypadkach znajdziesz się w tym iteracyjnego cyklu gdzie A odbija projektu iz powrotem do pięciu razy tak długo, jak był wstępny szacunek, ponieważ klient wciąż się zmienia zdanie i chce rozwiązanie manipulowane i ponownie manipulowane. I tak, to nie jest niezwykłe jak na końcowy wynik należy przekształcił się coś zupełnie innego, co początkowy cel wyglądał.
Miałem epicka tego przykładem stało się kilka lat temu - projekt, który początkowo wziął 10 tygodni do kodu zamienił się w 15-miesięcznym re iteracji harówki. W tym przypadku, to głównie dlatego, że różne menedżerów i działów w firmie klienta chciał różne rzeczy, więc oni zachowali wysłanie z powrotem do pracy, aby być manipulowane i ponownie manipulowane (nasze oprogramowanie oparte jest subskrypcja i to był poważny klient, więc ta nie była skóra finansowy off plecach - tylko wielki kłopot techniczny naprawdę).
Więc w zasadzie moja rada jest taka:
Jeśli jest to sposób konkretnej branży i tych klientów są (to duży IF), a potem po prostu się do tego przyzwyczaić. Potraktujcie to jako takie, konserwacji zorientowanych pracy Agile (to jest jak mój obecny koncert jest mniej więcej). :)
Jeśli to nie jest sposób, w jaki rzeczy mają być zrobione, a nadrabiają winę na długi rozładunki, a potem mówić do swoich szefów. Wytłumacz im, że istnieją problemy komunikacyjne i że specyfikacje, które nadchodzą do ciebie od klientów nie są wystarczająco jasne, aby wdrożyć żądaną rozwiązanie. Nie chcesz, aby znaleźć się w sytuacji, w której jesteś połowu winę za nie dając klientom to, co chcą, jeśli nie dostajesz wszystkie wymagane informacje, aby dać im to, czego chcą.
źródło
Przede wszystkim powinieneś zaakceptować fakt, że klienci tak naprawdę nie wiedzą, czego szukają, dopóki tego nie zobaczą. Mogli powiedzieć już teraz, że muszą one cechą X. Pokaż im funkcja X potem będziesz sobie sprawę, że to, czego naprawdę potrzebujesz, to cecha Y lub inna odmiana funkcji X.
Dobrym sposobem, aby dowiedzieć się, co klient naprawdę chce szybciej jest ogarnięcie i po Agile Manifesto , który koncentruje się na komunikacji i współpracy klienta. Podzielić cykl rozwojowy w iteracji i pokazać klientowi prototyp funkcji każdy koniec iteracji. W ten sposób otrzymasz natychmiastową informację zwrotną i zmienić go, według informacji zwrotnej od klienta, bez konieczności inwestowania zbyt dużo zasobów na tej funkcji. W ten sposób będzie zarówno Ty, jak i klient będzie zadowolony z wyniku produktu.
Jestem prawie pewien, że przejście będzie trudne dla swojego zespołu lub firmy, ale jest to jeden z najlepszych sposobów radzenia sobie z szybko zmieniającymi się wymaganiami.
źródło
Wiele, i wiele podobnych historii można znaleźć tutaj . Nigdy, nawet będąc podwykonawcą innej firmy deweloperskiej, nie znalazłem klienta, który wiedziałby dokładnie, czego chce.
Jestem wystarczająco szczęśliwy, że mogę pracować z kimś, kto ma naprawdę dobre pojęcie o tym, czego NIE chce lub chce uniknąć. Mogę zazwyczaj pracują stamtąd coś, że są zadowoleni z.
Moje doświadczenie jest przede wszystkim w rozwoju aplikacji / platformy, choć. Na szczęście rzadko mam do czynienia z problemami estetycznymi, jak robią to projektanci stron internetowych.
źródło
Po wielu irytujących przepisuje, teraz działać, co nazywam pełnego ujawnienia.
Więc po omówieniu wymagań klientów i pragnienia, zawsze będę pisać to, co widzę, chcą i jak będę przystąpić do spełnienia tego wymogu. Będę następnie wysłać je co pisałem i czekać, aż oni odpowiedzieć twierdząco przed rozpoczęciem pracy.
Jeśli jest to duży projekt (więcej niż powiedzmy 5 dni pracy) będę prototyp, jak również. To daje im szansę zmienić zdanie bez ogromnych zmian kodu na mojej stronie.
To nie zawsze działa, ale przynajmniej jestem w sytuacji, w której klient wie, że to właśnie one zmieniają swoje zdanie i nie ja wdrożenia nieprawidłowo.
źródło