Советовал бы взять за шаблон хорошего ТЗ упрощённые рекомендации PMBoK к проекту, а именно:
1. Разработка устава проекта (документация первоначальных требований, экономического обоснования, составление перечня заинтересованных лиц)
2. Разработка плана проекта, т.е. определяем в первом приближении как будет производится разработка и как будет производится контроль.
3. Собираем требования.
4. Определяем содержание, разбиваем его на операции, оцениваем ресурсы и время на каждую операцию.
4.1. Технические подробности, как должна себя вести система в тех или иных случаях, описать требования к дизайну.
5. Оцениваем весь бюджет разработок.
6. Желательно как-нибудь описать качество (какие-нибудь характеристики, вроде времени обрабатывания запроса) итогового продукта.
7. Готовим подробную смету по проекту (включая туда сотрудников, которые будут работать над проектом, и их з/п на время проекта).
8. Перечень лиц, кто отвечает за контроль хода выполнения работы и качества выполненной работы.
Всю информацию сводим в единый документ. Тогда и проблем будет по минимуму.
В PMBoK также советовал бы глянуть раздел про риски и про то, как их грамотно задокументировать, чтобы снизить их возможное наступление и последствия.
Всё это актуально вне зависимости от методологии разработки.