Если у вас сейчас на руках 100 долларов. И придется сделать ставку на один из этих вариантов. На что бы вы поставили? Вопрос в том:
Что является наиболее важным фактором, сдерживающим стоимость проекта.
Обновление: Хорошо, для записи. Это самый глупый вопрос, который я когда-либо задавал. Вопрос должен быть. Оцените список выше. Самый важный фактор в первую очередь. Какие самые важные факторы. Я спрашиваю, потому что считаю, что количество персонажей имеет значение. Менее характер, который нужно менять при изменении требований. Тем быстрее это будет сделано. Или же?
ОБНОВЛЕНИЕ: этот вопрос обсуждался в подкасте Stackoverflow №23. Спасибо, Джефф! :)





Ни один из этих факторов не влияет на стоимость проекта. Все сводится к тому, насколько хорошо составлено ваше расписание - можете ли вы выполнить то, что обещали, к определенной дате. Если ваши оценки графика отклоняются, хорошо угадайте, что, ваш проект будет стоить намного больше, чем вы думали. В конце концов, это расчет расписания.
Обновлено: я понимаю, что это голосование, и что я на самом деле не голосовал ни за один из вариантов в вопросе, поэтому не стесняйтесь считать это комментарием к вопросу, а не голосованием.
От МакКоннелла:
http://www.codinghorror.com/blog/archives/000637.html
[For a software project], size is easily the most significant determinant of effort, cost, and schedule. The kind of software you're developing comes in second, and personnel factors are a close third. The programming language and environment you use are not first-tier influences on project outcome, but they are a first-tier influence on the estimate.
Не думаю, что вы заняли 3-е место в приведенном выше списке. Обычно разница в навыках между программистами на порядок или больше, не говоря уже о все проблемы с Peopleware, которая может сильно повлиять на расписание (плохие яблоки, плохое управление и т. д.).
Я считаю, что больше всего в крупных проектах приходится на тестирование и исправление ошибок и исправление неправильного толкования требований. Для начала нужно написать тесты. Затем вы исправляете код, который запускают тесты. Затем вы проводите ручные тесты. Затем вы должны написать больше тестов. На большом проекте тестирование и исправление могут занять 40-50% времени. Если у вас высокие требования к качеству, то их может быть больше.
Символы, размер файла и скорость набора можно считать нулевыми по сравнению с правильным определением проблемы, дизайном и тестированием. Они легко на порядок важнее.
Самым важным фактором, определяющим стоимость проекта, являются масштаб и амбиции видения. Вторым по важности является то, насколько хорошо вы (ваша команда, ваше руководство и т. д.) Контролируете неизбежное искушение расширять это видение по мере вашего продвижения. Факторы, которые вы перечисляете, сами по себе являются показателями масштаба проекта, а не тем, что определяет этот масштаб.
Из четырех предложенных вами вариантов я бы выбрал №2 - размер проекта. В конце концов, быстрый проект по очистке от спама будет, как правило, быстрее, чем разработка нового текстового процессора.
После этого я бы сказал «Абстракции, использованные при решении проблемы». затем - если вы придумали неправильный метод решения проблемы, либо неправильный из-за плохой логики, либо из-за ограничений в системе - тогда вы обязательно потратите больше денег на перепроектирование и перекодирование того, что уже сделано.
Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что он не о программировании