Декомпозировать задачу: разделяй и властвуй

Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Читать в полной версии →

В разработке софта декомпозиция задач является важным навыком программиста. «Слона» приятно «есть по частям», за каждый пункт ставить себе жирный плюсик, поддерживать мотивацию и обозначать прогресс.

Декомпозиция помогает согласовать реализацию по времени и контролировать процесс разработки. Может ли она помешать? Какие есть подводные камни?

Можно неадекватно оценить сложность некоторых будущих этапов и увязнуть в начальных, сорвать в итоге срок. Или «застопориться» в первых трудностях и не заметить, что их можно обойти или решить как-то иначе.

В голове возникает установка: «нельзя переходить к следующему этапу, пока не закончишь предыдущий», она может подвести. Возможно, если начать решать задачу «в целом», будет проще и быстрее.

А какие вы используете подходы, чтобы справляться с масштабными задачками?