Cena utrzymania jakości w projekcie

Czym jest cena?

Pierwsze skojarzenie to pieniądz. To dlatego, że cena zwykle jest powiązana z kwotą, jaką trzeba zapłacić za produkt czy usługę. W takim tłumaczeniu można by napisać w tym wpisie o szacowaniu kosztów w projekcie, o tym, jak to robić, by zaoszczędzić pieniądze oraz by zapewnić jakość produktu.

Zdecydowałem, że w tym wpisie zajmuję się tym, co wpływa na podniesienie kosztów, jak je obniżać, kiedy zatrudniać ludzi do projektu. Napiszę też o tym, jak zmienia się koszt naprawy błędu w czasie, ale też i o tym, jak ilość zmian w projekcie wpływa na jakość i jej cenę.

Jak widzisz zapewne dzisiaj wpis luźny, ale ważny moim zdaniem.

No to zaczynamy.

Czym jest jakość?

Miara, według której określamy czy oprogramowanie jest dobre, czy złe.

Proste prawda? W mojej ocenie dobrej jakości produkt to taki, którego używać lubię, na którym mogę polegać, jest on łatwy, a raczej intuicyjny w obsłudze i pomaga mi rozwiązać mój problem. Przykładowo, chcę pojechać autobusem miejskim, w tym celu potrzebuję kupić bilet. Aplikacja, którą zainstaluję w moim telefonie, będzie dobrej jakości, jeśli bezproblemowo jednym klikiem (po wcześniejszym podpięciu płatności i danych) otrzymam wirtualny bilet, bilet ten będzie też łatwy do odnalezienia w przypadku kontroli. Ważne będzie również, jeśli aplikacja będzie wyświetlać zakupione bilety również w trybie offline.

Spełnienie tych kilku moich potrzeb prawdopodobnie spowoduje, że będę z aplikacji korzystał, nie będę szukać alternatyw i twórca aplikacji będzie na niej zarabiał. Więcej, prawdopodobnie zapytany przez znajomego o to, gdzie kupić bilet, powiem mu o mojej aplikacji.

Jakość jest subiektywna. Co dla mnie jest świetnym przykładem dobrej jakości, dla Ciebie może być co najwyżej dobre.

Na tym etapie wpisu, powinieneś wiedzieć i rozumieć dlaczego jakość jest ważna. W dzisiejszych czasach wszechobecnych mediów społecznościowych, szczególnie ważne jest dbanie o jakość i o to by słowo to było kojarzone ze sprzedawanym produktem.

Czasami z powodu braku alternatyw godzimy się z błędami, nadal używamy aplikacji.

Przykładem może być Facebook, który dla przeciętnego użytkownika raczej wydaje się bezbłędny. Polubienia działają, posty ciągną się w nieskończoność, można komentować i tak dalej. Użytkownik taki stanowi większość użytkowników aplikacji i poniekąd dzięki jego zadowoleniu FB zarabia pieniądze. Dlaczego? Ano dlatego, że taki użytkownik jak ja, czyli właściciel firmy używa jej do tego, by promować swój produkt poprzez włączenie reklam. Jako że chcę dotrzeć do dużego grona odbiorców, godzę się na to, że nie działa pobieranie obrazka bezpośrednio z posta, nie mogę udostępnić recenzji, czy też same recenzje źle są zliczane, ponieważ gdzieś tam w jakimś momencie zmieniono sposób ich dodawania i te stare nie są sumowane.

Nie zawsze tak jest, jak wyżej opisałem, ale czasami, dopóki nie ma alternatywy tak może być.

Co wpływa na cenę jakości projektu?

Ilość testerów i czas trwania projektu.

Jako jedna z osób zatrudnionych w projekcie nie wiesz, ile projekt kosztuje i ile kosztuje sama jakość w nim. Możesz sobie jednak sam to mniej więcej pięć razy oko podliczyć. Spróbuj obliczyć koszty pracy samych testerów w projekcie, czyli czas trwania projektu razy suma płac testerów.

Ilość błędów znajdowana przez testerów i koszty ich naprawy przez programistę.

Naprawa błędu to proces składający się w uproszczeniu ze zgłoszenia błędu, jego odtworzenia przez programistę, czasami jakichś konsultacji i wyjaśnień (gdy programista nie może odtworzyć błędu), naprawy błędu w kodzie, retestu i następnie zamknięcia go. Czas spędzony na poprawie błędu przez dewelopera powinien być dodany do ogólnej ceny.

Zmiany w projekcie, a raczej ich częstotliwość.

Im częstsze niezaplanowane zmiany w projekcie, tym więcej błędów przechodzi na produkcję. Tak dobrze przeczytałeś – na produkcję. Tester nie jest bramką, która zatrzyma wszystkie błędy. Tester robi co może by błędy znaleźć jak najszybciej. Programista, który robi zmiany w kodzie na szybko, znacznie częściej robi w nim błędy. Co za tym idzie, tester znajduje więcej błędów, i niekoniecznie wszystkie ważne.

Gdzie błąd został znaleziony?

Rzeczą oczywistą jest, że błąd znaleziony na etapie analizy jest tani w poprawieniu. Nie zawsze wiemy jednak, że ten znaleziony na produkcji może kosztować bardzo dużo. Przykładów może być wiele, dam jeden znaleziony w sieci.

Błąd w systemie monitorującym ładowanie baterii w Samsung Note 7 mógł prowadzić do wybuchu baterii. Naprawa tego błędu kosztowała Samsunga prawie 17 miliardów dolarów.

Źródło:
Note 7 fiasco could burn a $17 billion hole in Samsung accounts | Reuters

Jaka może być tutaj potencjalnie cena złej jakości?

Liczbowa, duża. Przykładowo trzeba zapłacić odszkodowania tym osobom, którym telefon wybuchł, utraciły dane. Proces i jogo koszta. Inna cena, jaką trzeba zapłacić, znacznie trudniejsza do odpracowania, to utrata zaufania klientów do marki.

Kiedy zacząć testować by jakość była lepsza?

Uważam jak wielu innych przede mną, że testować należy zacząć już na etapie dokumentacji. Nie tylko obniży się koszty naprawy, ale też tester zapozna się z dokumentacją i zaplanuje prace.

Czemu jest problem z utrzymaniem jakości w projekcie?

Jestem zwolennikiem motody zwiększania zasobów w miarę narastania potrzeb. To znaczy, że w projekcie powinien być doświadczony tester od samego początku, dzięki temu pewne będzie dobre zaplanowanie pracy i pokrycie testami wczesnego etapu. W momencie, gdy ten tester widzi, że pracy jest za dużo, powinien zgłosić zapotrzebowanie, uzasadnić je i do projektu powinna zostać dodana odpowiednia liczba pracowników. I tak za każdym razem, gdy widzimy, że pracy jest za dużo. Czasami wystarczy zatrudnić juniora, przyuczyć go z podstaw, jakimi może być uruchomienie testów i sprawdzenie wyników. Dzięki czemu ten doświadczony tester będzie mógł skupić się na testowaniu.

Niestety rzeczywistość jest inna. Często kończy się na tym, że mogę jedynie zgłosić zapotrzebowanie na pracownika. Jako tester nie mam mocy zatrudniania pracownika, nie jestem decydentem, nie zajmuję się budżetem. Realia są takie, że często pracujemy na zaniżonych zasobach. Co za tym idzie, trudno jest utrzymać jakość w projekcie w miarę, jak ilość pracy rośnie.

Czy jakość się opłaca?

Tak. Krótko i rzeczowo 🙂 Dzięki jakości:

  • Zaufanie do produktu rośnie, przybywa klientów.
  • Firma nie płaci odszkodowań, nie ponosi kosztów niepotrzebnych procesów sądowych.
  • Firma zarabia na reklamach, klientach, kolejnych kontraktach, sprzedaży produktu.

Waldemar Szafraniec

Nazywam się Waldemar Szafraniec. Karierę testera rozpocząłem w 2012 roku. Od początku pracy w zawodzie wiedziałem, że będzie to coś więcej niż tylko praca. Obecnie praca jest również moim hobby. Jednym z moich obowiązków w obecnym miejscu pracy jest rekrutowanie nowych testerów oraz szkolenie ich. Sam stale podnoszę swoje kwalifikacje uczestnicząc w szkoleniach (ISTQB, ISTQB Advanced Level – Test Analyst). Szkolę ludzi w dziedzinie testów manualnych od 2014 roku. Jestem trenerem, ponieważ wiem, że dobrze mi wychodzi przekazywanie wiedzy, wiem jak praca testera wygląda oraz mam doświadczenie w rekrutacji.

Ten post ma 4 komentarzy

  1. Konrad VD

    W końcu jakiś artykuł o odpowiedniej merytoryce. Czasem mam wrażenie, że wpisy w sieci coraz częściej przypominają debatę polityczną w Polsce… Na szczęście jest jeszcze nadzieja. Czekam na więcej!

    1. Waldemar Szafraniec

      Dziękuję za miłe słowa. Staram się od zawsze pisać jak najlepsze artykuły i bardzo cieszy mnie pozytywny feedback 🙂

  2. testerzy

    Dzięki za wpis, ale…
    – mylisz „ilość” z „liczba”
    – masz niepoprawne merytorycznie nagłówki jak: „Ilość błędów znajdowana w czasie testów, czyli koszty ich naprawy.”
    – „Jaka może być tutaj potencjalnie cena jakości?
    Liczbowa, duża. Przykładowo trzeba zapłacić odszkodowania tym osobom, którym telefon wybuchł, utraciły dane.” – to nie jest cena jakości, ale złej jakości
    – niektórych rzeczy możesz się domyślać i zakładać, ale nie są prawdziwe: „Im częstsze niezaplanowane zmiany w projekcie, tym więcej błędów przechodzi na produkcję.”
    – zdania, które nie mają logicznego sensu: „I gdyby tak było zawsze, to pewnie byłoby łatwiej utrzymać jakość w projekcie w miarę, jak ilość pracy rośnie.”

    1. Waldemar Szafraniec

      Dziękuję, poprawiłem niedociągnięcia.

Dodaj komentarz