Думаю что лучше отходить от этого пресловутого ТЗ, по крайней мере в том виде. в котором оно обычно понимается.
Я бы посоветовал сначала составить списки:
1. Список общих требований к функционалу системы
2. Список бизнес-задач, которые должно решать приложение
3. Список use cases, т.е. то, что смогут делать пользователи на сайте.
После этого сгруппировать пункты наиболее логичным образом. Например use cases можно группировать по страницам сайта. После группировки каждый пункт описываете более подробно, чтобы было понятно что конкретно он из себя представляет.
И в принципе на выходе вы получите вполне годный план работ. Конечно некоторые моменты зависят от специфики проекта.Но такой документ команде разработчиков будет проще анализировать.