Wycena prac programistycznych to temat bardzo delikatny. Istnieją różne metody, ale omówimy w tym wpisie dwie najpopularniejsze, czyli rozliczenie stałe na podstawie specyfikacji i rozliczenie na podstawie przepracowanych godzin. Metody te różnią się od siebie diametralnie, ale nie można jednoznacznie powiedzieć, którą należy wybrać. Wszystko zależy od projektu i klienta.
Fixed price
Stała wycena projektu przygotowana na podstawie m.in. specyfikacji czy makiet. Klienci przeważnie naciskają na tę formę rozliczenia. Z ich punktu widzenia jest najlepsza, dostają wycenę i wiedzą ile muszą wydać na projekt. Niestety, ale przy takiej formie współpracy bardzo łatwo o problemy.
Zacząć musimy od tego, że mało który projekt ma dokładnie przygotowaną specyfikację. Nie chodzi nawet o to, że firma nie jest w stanie jej przygotować, ale często klienci sami nie do końca wiedzą jak wszystko ma wyglądać i działać. Nawet jeśli mamy specyfikację to podczas powstawania aplikacji, gdy jest ona już „dotykalna” wizja programu często się zmienia. W takiej sytuacji często dochodzi do problemu, w którym klient uważa, że powinniśmy zmienić coś w początkowej wycenie a my uważamy, że za daną zmianę klient powinien dopłacić.
Stała wycena prac programistycznych sprawdza się dobrze przy mniej skomplikowanych projektach, które są dobrze opisane i nie ulegną zmianie w trakcie trwania prac lub przy projektach, które są bardzo dokładnie opisane i początkowe założenia nie ulegną zmianie.
Time & Material
Zupełnym przeciwieństwem jest metoda Time & Material, czy płatność za przepracowane godziny oraz wykorzystane materiały. W skrócie wygląda to tak, że wykonawca zapisuje, ile czas poszczególni pracownicy spędzili nad konkretnymi funkcjami aplikacji. Na podstawie takiego time sheetu (czyli wykazu godzin każdego pracownika), wykonawca wystawia fakturę na podstawie umówionej z klientem stawki godzinowej. Takie rozwiązanie jest dużo lepsze, ponieważ pozwala stworzyć produkt dokładnie taki, jaki klient chce.
W tym rozwiązaniu klienci najbardziej boją się tego, że nie wiedzą ile dokładnie za projekt zapłacą. Oczywiście, może się zdarzyć, że software house będzie próbował wykorzystywać niewiedze klienta, jednak można się przed tym zabezpieczyć.
Po pierwsze, możemy ustalić maksymalną kwotę, którą jesteśmy w stanie przeznaczyć. Wykonawca na podstawie tej informacji przygotuje harmonogram prac, które w tej kwocie się zmieszczą.
Kolejnym zabezpieczeniem jest przygotowanie standardowej wyceny. Mimo, że rozliczenie będzie odbywać się na podstawie przepracowanych godzin, to taka wycena pozwoli klientowi wyobrazić sobie, co ile będzie go kosztować. Taka wycena nie musi być nawet dokładna, chodzi o pokazanie widełek dla każdego modułu/funkcji. To też pozwoli klientowi ocenić, co jest ważniejsze i musi być zrobione a co może poczekać.
W Code Apps, jeśli chodzi o aplikacje webowe, zawsze proponujemy klientom wycenę Time & Material. Dziesiątki wykonanych projektów utwierdzają nas w przekonaniu, że to najlepszy model rozliczenia.