Какие штрафные санкции должны быть в разработке программного обеспечения для внештатных сотрудников, если они не соблюдают сроки? [закрыто]

12

Я разговаривал с со-разработчиком.

У него есть клиент, который хотел убедиться, что он доставляет вовремя. Клиент хочет последствий для пропущенных сроков.

Хотя я не занимаюсь внештатной работой, я не смог дать ответ.

Итак, мой вопрос:

С какими последствиями вы (фрилансеры) соглашаетесь с вашим клиентом, если вы пропускаете крайние сроки по своим результатам (помимо увольнения)?

Teej
источник
2
Было бы глупо принимать какие-либо штрафы, по крайней мере, без оговорки о выходе, основанной на изменении требований. Оценка задач является ужасно неточной в лучшие времена, прежде чем принимать во внимание управление изменениями. В принципе. Беги
Мэтт Д
4
Таким образом, клиент будет иметь финансовую заинтересованность, чтобы вы пропустили крайний срок? Не похоже на действительно хорошую идею. Это будет иметь смысл только в том случае, если у клиента также есть серьезные финансовые потери, когда вы опаздываете (как в примере с MainMa).
Док Браун
2
Это кажется вполне приемлемым для меня. Я весьма удивлен комментариями. Вы ожидаете, что люди будут платить за работу, либо без крайнего срока и без стимула для соблюдения этого срока? «Оценка задания ужасно неточна» - так не должно быть.
НимЧимпски,
@DocBrown клиент, по-видимому, имеет гораздо больший финансовый интерес в соблюдении сроков, следовательно, оплачивает работу в срок. Я нахожу, что программисты не любят сроки и структуру, иногда удивительно. Представьте себе, что новая кухня оборудована, и магазин говорит: «Ооооо, нет, мы не можем сказать вам, когда она будет закончена, мы просто будем платить за час». Я бы пробежал милю от этого. Программирование качественно не отличается от любого другого проекта.
НимЧимпски,
5
Если вы получаете новую кухню, вы будете указаны для сборки, как указано в спецификации. Если вы начнете менять поверхность среза, плитку, смесители и материалы для мойки, с вас будет взиматься дополнительная плата как за потраченные впустую материалы, так и за потраченное время. Легко понять, почему вы обвинены в этом случае, есть физические отношения. Изменение требований к программному обеспечению часто не сопровождается таким же пониманием, и любой контракт, который требует от вас доставки X по Y, где X точно не прибит, требует проблем. Все изменится, потому что неспособность объяснить это глупо.
Мэтт D

Ответы:

25

Один из самых эффективных: штраф за день просрочки. Это также то, что делается для крупных проектов, штраф иногда составляет тысячи долларов в день.

Если точный срок имеет значение (например, если для Олимпийских игр разработано веб-приложение, которое будет обрабатывать трансляцию мероприятия в 2014 году, крайним сроком будет начало Олимпийских игр в 2014 году), то эффективной мерой может быть то, что в В случае, когда проект опаздывает, компании вообще не платят, а также следует платить штраф.

Если такие радикальные меры не подходят, то единственный факт, что хорошо оплачиваемый клиент уйдет, если проект опоздает, может сработать.

Примечание для клиента:

  1. Многие задержки по вине самих клиентов. Причин может быть несколько:

    • Никакой SRS, но вместо этого два параграфа, описывающие потерянно то, что клиент считает своими потребностями (и, конечно, клиент не хочет платить за сбор требований, считая этот шаг потерей времени).

    • Приходя за две недели до последнего срока и сообщая, что не имеет значения, что проект до сих пор выполнялся на Java и использовался Oracle: необходимо, чтобы он был переписан на Python и использовал MySQL, потому что заказчик вчера прочитал журнал говоря, что эти технологии - будущее.

    • Приходя со свежим набором требований на каждой встрече. Бонусные баллы, когда эти требования противоречат почти каждому требованию, данному до сих пор.

  2. Хорошее общение необходимо для хорошего проекта.

    Многие другие задержки связаны с отсутствием связи. Практика, когда клиент не имеет связи с компанией в течение нескольких месяцев и ожидает, что с ней свяжутся только после того, как продукт будет закончен и отполирован, приведет к катастрофе.

  3. Ты получаешь то, за что платишь.

    Существуют специальные процедуры, которые помогают поддерживать организованность проекта, и на самом деле, программирование должно занимать всего 10-15% времени для крупных проектов и 15-20% времени для средних проектов. Эти проекты также должны выполняться людьми, которые знают, что они делают.

    На практике клиенты не хотят платить 800 долларов в день аналитику, который будет создавать архитектуру и дизайн программного обеспечения, и они также не хотят платить за другие шаги. Новичок албанского программиста, который счастлив работать за 50 долларов в день, кажется гораздо более выгодным.

    Не жалуйтесь, что проект - это катастрофа, когда вы готовы платить только за разрушительные проекты.

  4. Не договаривайтесь о времени, необходимом для выполнения работы.

    Я часто сталкиваюсь с такими дискуссиями:

    Разработчик: учитывая требования, я могу выполнить это через четыре месяца.
    Заказчик: это невозможно. Проект должен быть выполнен за два месяца.
    Разработчик: ну, если вы не отключите некоторые функции ...
    Клиент: Я не могу! Все функции необходимы. Почему вы не можете сделать работу через два месяца? Я связался с индийским программистом, моим другом, он может сделать это за полтора месяца и попросит только половину цены!

    Время переговоров - это рецепт катастрофы.

  5. Знай свои приоритеты.

    Примите во внимание правило 90%. Когда проект управляется неправильно, разработчики часто говорят, что они выполнили 90% проекта через месяц после запуска проекта. Затем, через месяц, это все еще 90%. И через месяц.

    Это может иметь две причины:

    • Когда проект не выполнен правильно, т.е. 100% времени отводится программированию, что оставляет 0% на сбор требований, архитектуру, проектирование и тестирование, то происходит то, что программисты не имеют представления о работе, которую они выполняют, и они обнаруживают, что новые задачи на протяжении всей жизни проекта. Подготовка проекта поможет лучше понять все задачи, которые должны быть выполнены.

    • Когда клиент спешит, некоторые компании нередко быстро доставляют какую-то чушь, а затем тратят огромное количество времени на устранение ошибок. Некоторые компании работают только так, что помогает им оставаться конкурентоспособными и говорят, что они выполнили заданный проект за три недели, даже если позже они потратили три года на решение проблемы.

    Уточнение приоритетов и необходимость правильного выполнения проекта помогает исключить эти компании из списка кандидатов.

Арсений Мурзенко
источник
3
«Не жалуйтесь, что проект - это катастрофа, когда вы готовы платить только за катастрофические проекты». Могу ли я использовать это? Это отличный пост, кстати, и приятно подводит итог рисков с обеих сторон.
Мэтт D
+1 Очень хорошие очки. Также приятно читать :)
Раду Мурзеа
5
@MattD: ответы на Stack Exchange лицензируются по лицензии Creative Commons Attribution-ShareAlike 3.0 Unported, так что да, вы можете. Кроме того, не стесняйтесь читать соответствующие сообщения в моем блоге: Количественная оценка времени и стоимости: почему мы всегда ошибаемся? , а также ответы на мой вопрос здесь: programmers.stackexchange.com/q/158640/6605
Арсений Мурзенко
Почему в этом посте нет частей 4, 5, 6 и т. Д.?
Раду Мурзеа