Поскольку вы указываете, что все эти элементы необходимы, я предполагаю, что у вас мало шансов выбросить элементы из списка (по крайней мере, на данный момент). Учитывая это, у вас есть 2 большие задачи - решить, когда делать предметы, и определить, сколько времени потребуется, чтобы их выполнить.
Поскольку вы уже сгруппировали элементы по функциям, я бы начал с расстановки приоритетов. Надеемся, что это значительно сократит ваш рабочий набор и позволит вам на самом деле пройти через это в разумные сроки.
Я бы расставил приоритеты для каждой функции в зависимости от ее риска. Некоторые вещи легко реализовать, а другие сложно. Так как они все обязательны, сначала используйте самые рискованные функции, когда ваш график более гибок для решения любых непредвиденных проблем. Подождите до конца вашего цикла, и закон Мерфи поразит вас.
Учитывая вашу небольшую команду, я просто отправил бы список функций вокруг и попросил бы всех отметить его, если они считают это рискованной или трудной для реализации функцией. Сложите все оценки, и вы получите свою «оценку риска», при этом первым будет присвоен самый высокий балл.
В качестве альтернативы, если у вас есть легкий доступ к вашему клиенту, попросите его оценить «риск», связанный с каждой функцией (в этом случае риск относится к наихудшему сценарию отсутствия этой функции - если бы не иметь что-то, было бы раздражает, это не рискованно. Если отсутствие этой функции приведет к тому, что они не будут использовать ваш продукт, это высокий риск).
Теперь, когда у вас есть очередь с приоритетами, пришло время оценить. Для начальных оценок я просто сделал бы оценку порядка величины для каждой из особенностей. Поскольку это звучит так, как будто вы уже разбили функции, вы должны быть в состоянии почувствовать, что что-то займет часы, дни или недели. Судя по всему, вы все еще находитесь на ранней стадии разработки, поэтому я не думаю, что есть смысл пытаться получить точную оценку того, что не будет реализовано еще месяц или около того.
По мере того, как вы вытаскиваете предметы из своей очереди, попросите вашу команду предоставить более точные оценки, определив гранулярные задачи, которые не должны занимать более нескольких часов. Если вы хотите уточнить свои оценки порядка, вы можете постепенно предоставлять быстрые оценки для оставшихся задач на основе ваших современных знаний о системе.
Это должно предоставить вам довольно точное краткосрочное расписание и более размытое долгосрочное расписание, которое будет постепенно становиться более точным.
Наконец, если вы столкнулись с длительным циклом разработки, я бы порекомендовал вам определить определенные целевые цели или даты, а когда вы достигнете этих целей, сядьте и повторите весь этот процесс. Я бы никогда не пошел дольше, чем на 2 недели, не возвращаясь к этим вещам. Новые элементы будут добавлены, другие будут перегнаны и устареют, а другие станут более рискованными, когда вы лучше поймете проблему. Все это необходимо учитывать.