Хотя, конечно, нет жестких правил, когда дело доходит до подготовки производства, существует множество эвристических методов, которые могут помочь. Некоторые особенности ползучести являются естественными и необходимыми - ни один план не выживет при первом контакте с реальностью, и вы можете не знать, что будет «круто», пока не увидите его.
Во-первых, этап вашего развития. Нарисуйте свой контур в карте объектов, а затем найдите способы сгруппировать ваши объекты в тестируемые итерации , каждая из которых имеет крайний срок . Как только вы начнете итерацию, не добавляйте в нее новые функции. Любые непредвиденные технические потребности должны, конечно, идти в текущую итерацию, но новые идеи для функций должны быть включены в список для дальнейшего рассмотрения. Затем вы можете подумать, добавлять ли его в итерацию после завершения текущей.
Это следует из метода MoSCoW , посредством которого вы классифицируете функции следующим образом:
- Должен иметь - функции, которые жизненно важны для текущей итерации, чтобы быть стабильной , то есть тестируемой . Если итерация не будет работать без нее, она должна быть.
- Должны иметь - функции, которые должны быть выполнены в какой-то момент, но если итерация идет со временем, может быть перенесена в следующую итерацию . Например, вещи, требуемые издателем, могут быть здесь.
- Может иметь - функции, которые, по вашему мнению, могут быть важны для текущей итерации, но могут быть исключены из проекта. Это все важные польские функции .
- Не будет - элементы, которые потенциально заполняют задел , особенности, определенные в этой итерации, которые будут рассмотрены для последующих итераций.
В идеале вы хотите, чтобы развитие было прогрессивным усовершенствованием, а не «все или ничего». Работая в конечный срок, наименее важные функции должны быть доведены до конца, так что все, что вы не получите, будет материалом, который можно вырезать. Обязательно оцените, сколько времени потребуется каждой функции для разработки и уточнения этих оценок по мере продвижения. Никогда не сжимайте расписание, чтобы освободить место для дополнительных функций. Не допускайте переноса сроков (итеративных или окончательных) в будущее - вместо этого перемещайте или сокращайте элементы, если это возможно. Если вы подходите к своему крайнему сроку, а игра по-прежнему остается беспорядочным, то вы знаете, что пришло время серьезно пересмотреть свои решения и подумать о каннибализации проекта, прежде чем он превратится в пропасть времени / денег.