W biurze właśnie wyszliśmy z długiego okresu, w którym wydawaliśmy łatki zbyt często. Pod koniec tego okresu robiliśmy średnio trzy łatki tygodniowo.
Oprócz tego, że było to bardzo demotywujące dla programistów, zastanawiałem się, co o tym pomyśli klient. Zadałem sobie pytanie i doszedłem do wniosku, że nigdy nie znałem oprogramowania, które było tak często aktualizowane. Jednak w przypadku najbliższego przypadku nie obchodzi mnie to, ponieważ łatki są dość szybko nakładane.
Klienci, którzy otrzymali te łatki, bardzo się od siebie różnią. Niektórzy naprawdę czekali na łatkę, na którą inni tak naprawdę nie dbali, ale wszyscy dostali te same łatki. Czas na aktualizację oprogramowania klienta wynosi mniej niż 30 sekund, więc nie oczekuję żadnych problemów dotyczących czasu. Muszą być jednak wylogowani.
Więc moje pytanie bardziej szczegółowo: czy pobieranie aktualizacji często daje odbiorcy komunikat „negatywny”?
Oczywiście mógłbym zapytać klientów, ale nie jestem w tej pozycji ani nie chcę „Obudź śpiące psy”.
PS: Jeśli jest coś, co mogę zrobić, aby poprawić moje pytanie, proszę zostawić komentarz.
źródło
Odpowiedzi:
Podobnie jak w przypadku wielu rzeczy w informatyce, to zależy. Jeśli poprawki są odpowiedzią na prośby klientów o nowe funkcje lub ulepszenia, wówczas Twoja firma będzie postrzegana jako elastyczna. Z drugiej strony, jeśli twoje łatki są odpowiedzią na zgłoszenia błędów, twoja firma będzie postrzegana jako niekompetentna.
Testowanie oprogramowania na klientach jest zdecydowanie najdroższym możliwym sposobem wykrywania błędów, bez względu na to, co ktoś mówi. To fałszywa ekonomia; bezpłatna siła robocza, o której myślisz, że jest więcej niż rekompensowana wysiłkami obsługi klienta, przerywaniem cyklu rozwoju oprogramowania i utratą zaufania klientów.
źródło
Wydaje mi się, że wydanie kilku łatek w bliskiej odległości źle wpływa na firmę. Zawsze mam wrażenie, że nie przetestowali wystarczająco dokładnie z góry, że programiści są niekompetentni lub zarząd nie ma pojęcia, co robią.
To powiedziawszy, drugą stroną tego tokenu jest to, że wydanie kilku łatek blisko siebie pokazuje, że firma proaktywnie podchodzi do swojego produktu i nadal udoskonala swój produkt dla konsumenta.
Bardziej skłonny jestem sądzić, że to pierwsze podejście jest tym, na co najbardziej patrzy się z punktu widzenia konsumenta, ale bezpośrednia rozmowa z nimi będzie (oczywiście) najlepszym wyborem, ale podniesie również problem w bazie klientów, że mogą początkowo nie byłem tego świadomy.
źródło
Coraz więcej firm podąża śladami Chrome i coraz częściej wypuszcza klientów.
Warunkiem wstępnym wdrożenia krótkich cykli wydawania jest bezbolesne uaktualnienie - na przykład w chrome uaktualnienie odbywa się bez interwencji użytkownika przy uruchamianiu aplikacji, a jeśli użytkownik utrzymuje swoją aplikację przez cały czas, otrzymuje niewielką flagę doradzając mu, aby zrestartował aplikację w dogodnym czasie, a następnie aplikacja stara się przywrócić go do poprzedniego stanu po ponownym uruchomieniu.
Ta metoda sprawia, że klient jest szczęśliwy, ponieważ nie musi być świadomy każdej aktualizacji, a ponieważ wydania funkcji pojawiają się często, poprawki błędów będą równie mile widziane.
Z drugiej strony, jeśli łaty pojawią się po rażących błędach show-stoppera i pojawią się w klastrach, ponieważ wcześniejsze nie naprawiły błędu lub stworzyły większy błąd - bądź pewien, że Twoi klienci go wyczują. To z pewnością źle odbije się na profesjonalnej reputacji dostawcy i obniży postrzegane standardy oprogramowania. Ciągła dostawa w dużej mierze opiera się na skutecznych testach jednostkowych i testach integracyjnych, aby zagwarantować jej sukces.
Jeśli chodzi o to, aby nie rozmawiać z klientami, aby „pozwalali śpiącym psom kłamać”, uważam, że jest to zła strategia - klienci nie są ślepi i nie są głupcami. Uważam, że dobra komunikacja z klientami może tylko zapewnić ich, że są Twoim priorytetem i że jesteś otwarty na ich krytykę. Jeśli kilka razy dostarczyłeś złe wydania i nie słyszysz ich narzekania - zdecydowanie powinieneś się martwić - to nie jest tak, że ich nie zauważyli, bardziej prawdopodobne jest, że będą zajęci szukaniem dla ciebie zamiennika ...
źródło
Łatki przeznaczone specjalnie dla klientów, którzy wykryli problem, będą oczywiście musiały wyjść jak najszybciej.
Widziałem oprogramowanie w dużych firmach, a następnie przyjmowałem podejście, że inni klienci otrzymają te łaty jako dodatek Service Pack w regularnych zaplanowanych odstępach czasu. Zwykle dlatego, że łatki wymagają trochę wysiłku, aby zainstalować i przetestować w środowisku klienta, ale w twoim przypadku można go po prostu użyć, aby zmniejszyć potencjalny wpływ efektu, o który się martwisz.
Widziałem także ludzi, którzy zalecają umieszczanie łat w repozytoriach lub na stronach internetowych, na których klienci mogą pobierać i instalować te, które chcą. Może to powodować problemy ze zrozumieniem, jakie łatki mają klienci, więc kiedy dzwonią z problemem, musisz dokładnie określić, jakiego kodu używają, ale z ostrożnością, którą można śledzić. Następnie możesz zmusić ludzi do uaktualnienia do jednego z większych „pakietów”, gdy zostanie wydany, który zawiera wiele łatek.
Wyjątkiem są łatki bezpieczeństwa. Wiadomo, że duża firma z siedzibą w Waszyngtonie wchodzi do ciepłej wody, czekając na trzeci czwartek miesiąca, zanim wyda krytyczne poprawki bezpieczeństwa, a informacje o włamaniu wyciekły i zmusiły ich rękę do jeszcze większego zażenowania.
Google Chrome rozwiązuje ten problem, automatycznie aktualizując bardzo często, one również wymagają cyklicznego uruchomienia programu (uruchom ponownie Chrome lub, w twoim przypadku, wyloguj się). Wprowadzili teraz tę normalną praktykę dla przeglądarek, a ludzie nawet o tym nie myślą. Ale nie każdy może być Google.
Aplikacje SaaS rozwiązują cały problem, wykonując aktualizacje w tle.
Przede wszystkim jednak, chyba że często dokonujesz ciągłej integracji lub aktualizacji o nowe funkcje, o które prosił użytkownik, myślę, że wciąż jesteśmy w czasie, gdy ludzie oczekują, że przed wydaniem wykonałeś przyzwoitą liczbę testów. Jeśli wstydzisz się spotkać z klientami i porozmawiać o częstotliwości naprawiania błędów, prawdopodobnie nie wykonujesz wystarczającej liczby testów. Czy uwolniłeś się od ryzyka, które podejmowałeś przed wydaniem kodu? Istnieje argument za wypuszczeniem bardzo wczesnego kodu błędu, o ile wiesz, że tak właśnie jest, ale myślę, że musisz dobrze rozumieć swoją znaną jakość, co oznacza zrozumienie i kontrolowanie czasu na poznanie jakości.
źródło