А не проще поделить часовую ставку пополам?
Как заказчику определить, что с него по фиксированной ставке не взяли 100 баксов за то, что стоит 5 баксов?
Ответ на этот вопрос такой же, как и на эти:
А именно - никак.
Если у кого-то есть острое желание обмануть заказчика, он найдёт способ при любом раскладе. Я рассматриваю вариант, когда никто никого обманывать не собирается.
Почасовая ставка не означает, что надо обосраться (буквально), потому что оценил работу в час и теперь не можешь на 10 минут в туалет отойти.
Существуют тайм трекеры. Остановил трекер - и можно хоть спать пойти.
Заказчик платит по трекеру только за чистое рабочее время, а программист работает в удобном ему графике.
Ну а сроки оговариваются исходя из рабочего графика, а не чистого времени.
А теперь самое интересно про фиксированную ставку: программист оценивает работу, начинает работать и понимает, что работы намного больше, чем ожидал (соответственно, стоит она в разы дороже). Что дальше?
Варианты:
1. Работать в убыток.
2. Попросить больше денег.
3. Забить на роботу и "пропасть".
4. Делать как попало, чтоб уложиться в начальную оценку, а потом рассказывать, что то и это не доделано, потому что стоимость этого и не предполагала.
Мне не раз приходилось доделывать за теми, кто выбрал варианты 3 и 4, перед этим оценив работу значительно ниже реальной стоимости.
С почасовой ставкой такой проблемы нет.
Фиксированную ставку можно выставлять только, когда выполняешь задачу, которую уже делал (вот прям 1 в 1) и точно знаешь сколько она занимает времени.
Потому что запросто может оказаться, например, при установке какого-то модуля, что у него возник конфликт с каким-то другим модулем (для ОК ситуация довольно обычная) и устранение этого конфликта занимает больше времени, чем сама установка, за которую была названа фиксированная сумма.